package magic.ui.widget;
import java.awt.Color;
import java.awt.Dimension;
import javax.swing.BorderFactory;
import magic.model.MagicCardDefinition;
import magic.ui.widget.M.MScrollPane;
import magic.ui.widget.duel.viewer.DeckEditorCardViewer;
import net.miginfocom.swing.MigLayout;
@SuppressWarnings("serial")
public class CardSideBar extends TexturedPanel {
private final MigLayout migLayout = new MigLayout();
private final MScrollPane cardScrollPane = new MScrollPane();
private final DeckEditorCardViewer cardViewer = new DeckEditorCardViewer();
public CardSideBar() {
setLookAndFeel();
refreshLayout();
}
private void setLookAndFeel() {
cardScrollPane.setViewportView(cardViewer);
cardScrollPane.setBorder(null);
cardScrollPane.setOpaque(false);
cardScrollPane.setVScrollBarIncrement(10);
final int BORDER_WIDTH = 1;
setBorder(BorderFactory.createMatteBorder(0, 0, 0, BORDER_WIDTH, Color.BLACK));
setMinimumSize(new Dimension(cardViewer.getMinimumSize().width + BORDER_WIDTH, 0));
setLayout(migLayout);
}
private void refreshLayout() {
removeAll();
migLayout.setLayoutConstraints("flowy, insets 0, gap 0");
migLayout.setColumnConstraints("[fill, grow]");
add(cardScrollPane.component());
revalidate();
}
public final void setCard(final MagicCardDefinition card) {
cardViewer.setCard(card);
}
}