From 24b4bc8e30bd8e6a19cbc66261aaf191d9045759 Mon Sep 17 00:00:00 2001 From: spjspj Date: Tue, 13 Dec 2016 00:41:21 +1100 Subject: [PATCH 1/2] spjspj - Add invert selection to deck editor --- .../java/mage/client/cards/DragCardGrid.java | 18 ++++++++++++++++++ .../java/mage/client/deckeditor/DeckArea.java | 17 +++++++++++++++++ 2 files changed, 35 insertions(+) diff --git a/Mage.Client/src/main/java/mage/client/cards/DragCardGrid.java b/Mage.Client/src/main/java/mage/client/cards/DragCardGrid.java index 3296c724626..a362c619bb8 100644 --- a/Mage.Client/src/main/java/mage/client/cards/DragCardGrid.java +++ b/Mage.Client/src/main/java/mage/client/cards/DragCardGrid.java @@ -577,6 +577,8 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg void hideCards(Collection card); void duplicateCards(Collection cards); + + void invertCardSelection(Collection cards); void showAll(); }; @@ -1106,6 +1108,18 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg l.duplicateCards(toDuplicate); } } + + private void invertSelection() { + Collection toInvert = allCards; + for (DragCardGridListener l : listeners) { + l.invertCardSelection(toInvert); + for (CardView card : allCards) { + MageCard view = cardViews.get(card.getId()); + view.update(card); + } + } + repaint(); + } private void showAll() { for (DragCardGridListener l : listeners) { @@ -1645,6 +1659,10 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg JMenuItem hide = new JMenuItem("Hide"); hide.addActionListener(e2 -> hideSelection()); menu.add(hide); + + JMenuItem invertSelection = new JMenuItem("Invert Selection"); + invertSelection.addActionListener(e2 -> invertSelection()); + menu.add(invertSelection); // Show 'Duplicate Selection' for FREE_BUILDING if (this.mode == Constants.DeckEditorMode.FREE_BUILDING) { diff --git a/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.java b/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.java index 66b6c7a90b5..8822bc94086 100644 --- a/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.java +++ b/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.java @@ -144,6 +144,14 @@ public class DeckArea extends javax.swing.JPanel { deckList.addCardView(newCard, true); } } + + @Override + public void invertCardSelection(Collection cards) { + // Invert Selection + for (CardView card : cards) { + card.setSelected(!card.isSelected()); + } + } }); sideboardList.addDragCardGridListener(new DragCardGrid.DragCardGridListener() { @Override @@ -174,6 +182,15 @@ public class DeckArea extends javax.swing.JPanel { sideboardList.addCardView(newCard, true); } } + + @Override + public void invertCardSelection(Collection cards) { + // Invert Selection + for (CardView card : cards) { + card.setSelected(card.isSelected()); + } + } + }); } From 946e0c54fcf1567fba3f249e7f96b291bf481dd2 Mon Sep 17 00:00:00 2001 From: spjspj Date: Tue, 13 Dec 2016 00:42:57 +1100 Subject: [PATCH 2/2] spjspj - Add invert selection to deck editor --- Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.java b/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.java index 8822bc94086..9326c8d9d9a 100644 --- a/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.java +++ b/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.java @@ -187,7 +187,7 @@ public class DeckArea extends javax.swing.JPanel { public void invertCardSelection(Collection cards) { // Invert Selection for (CardView card : cards) { - card.setSelected(card.isSelected()); + card.setSelected(!card.isSelected()); } }