diff --git a/Mage.Client/src/main/java/mage/client/cards/CardGrid.java b/Mage.Client/src/main/java/mage/client/cards/CardGrid.java index 61680723b2f..4a07211fa2e 100644 --- a/Mage.Client/src/main/java/mage/client/cards/CardGrid.java +++ b/Mage.Client/src/main/java/mage/client/cards/CardGrid.java @@ -288,7 +288,12 @@ public class CardGrid extends javax.swing.JLayeredPane implements MouseListener, if (size.height != area.height || size.width != area.width) { setPreferredSize(area); } + } + @Override + public void refresh() { + revalidate(); + repaint(); } } diff --git a/Mage.Client/src/main/java/mage/client/cards/CardsList.java b/Mage.Client/src/main/java/mage/client/cards/CardsList.java index 68e70b8a067..bfa57c80d0e 100644 --- a/Mage.Client/src/main/java/mage/client/cards/CardsList.java +++ b/Mage.Client/src/main/java/mage/client/cards/CardsList.java @@ -281,6 +281,11 @@ public class CardsList extends javax.swing.JPanel implements MouseListener, ICar drawCards((SortBy) cbSortBy.getSelectedItem()); } + @Override + public void refresh() { + redrawCards(); + } + public void clearCardEventListeners() { cardEventSource.clearListeners(); mainModel.clearCardEventListeners(); diff --git a/Mage.Client/src/main/java/mage/client/cards/ICardGrid.java b/Mage.Client/src/main/java/mage/client/cards/ICardGrid.java index 16de6df0f3f..8553ee9321b 100644 --- a/Mage.Client/src/main/java/mage/client/cards/ICardGrid.java +++ b/Mage.Client/src/main/java/mage/client/cards/ICardGrid.java @@ -46,4 +46,5 @@ public interface ICardGrid { void addCardEventListener(Listener listener); void drawCards(Constants.SortBy sortBy, boolean piles); void loadCards(CardsView showCards, Constants.SortBy sortBy, boolean piles, BigCard bigCard, UUID gameId); + void refresh(); } diff --git a/Mage.Client/src/main/java/mage/client/deckeditor/CardSelector.java b/Mage.Client/src/main/java/mage/client/deckeditor/CardSelector.java index d1d5529157e..57e6bf5a015 100644 --- a/Mage.Client/src/main/java/mage/client/deckeditor/CardSelector.java +++ b/Mage.Client/src/main/java/mage/client/deckeditor/CardSelector.java @@ -798,6 +798,15 @@ public class CardSelector extends javax.swing.JPanel implements ComponentListene return list; } + public void refresh() { + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + currentView.refresh(); + } + }); + } + private TableModel mainModel; private JTable mainTable; private ICardGrid currentView; diff --git a/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.java b/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.java index cff953ec959..7b995108771 100644 --- a/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.java +++ b/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.java @@ -169,6 +169,8 @@ public class DeckEditorPanel extends javax.swing.JPanel { if (mode == DeckEditorMode.Sideboard || mode == DeckEditorMode.Limited) { deck.getSideboard().remove(card); cardSelector.removeCard(card.getId()); + cardSelector.refresh(); + } if (cardInfoPane instanceof CardInfoPane) { ((CardInfoPane)cardInfoPane).setCard(new CardView(card)); diff --git a/Mage.Client/src/main/java/mage/client/deckeditor/table/TableModel.java b/Mage.Client/src/main/java/mage/client/deckeditor/table/TableModel.java index 09159b41c55..47b21652ce6 100644 --- a/Mage.Client/src/main/java/mage/client/deckeditor/table/TableModel.java +++ b/Mage.Client/src/main/java/mage/client/deckeditor/table/TableModel.java @@ -152,6 +152,11 @@ public class TableModel extends AbstractTableModel implements ICardGrid { drawCards(sortBy, piles); } + @Override + public void refresh() { + fireTableDataChanged(); + } + public void clear() { view.clear(); cards.clear();