From 7c00e4b16d9e09df889597aee110eb2ae684fe41 Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Fri, 25 Dec 2015 17:43:10 +0100 Subject: [PATCH] * Graveyard window - Fixed that the displayed card order was sometimes mismatched. --- .../main/java/mage/client/cards/Cards.java | 14 ++-- .../client/dialog/CardInfoWindowDialog.java | 8 +- .../main/java/mage/client/game/GamePanel.java | 6 +- .../main/java/mage/client/game/HandPanel.java | 7 +- .../mage/client/unusedFiles/CombatGroup.java | 75 +++++++++---------- 5 files changed, 57 insertions(+), 53 deletions(-) diff --git a/Mage.Client/src/main/java/mage/client/cards/Cards.java b/Mage.Client/src/main/java/mage/client/cards/Cards.java index abe5da510c6..50d6b6b51b8 100644 --- a/Mage.Client/src/main/java/mage/client/cards/Cards.java +++ b/Mage.Client/src/main/java/mage/client/cards/Cards.java @@ -134,10 +134,10 @@ public class Cards extends javax.swing.JPanel { } public boolean loadCards(SimpleCardsView cardsView, BigCard bigCard, UUID gameId) { - return loadCards(CardsViewUtil.convertSimple(cardsView), bigCard, gameId, null); + return loadCards(CardsViewUtil.convertSimple(cardsView), bigCard, gameId, true); } - public boolean loadCards(CardsView cardsView, BigCard bigCard, UUID gameId, java.util.List order) { + public boolean loadCards(CardsView cardsView, BigCard bigCard, UUID gameId, boolean revertOrder) { boolean changed = false; // remove objects no longer on the stack from display @@ -168,10 +168,14 @@ public class Cards extends javax.swing.JPanel { } } - // order objects for display java.util.List orderedList = new ArrayList<>(); - for (CardView card : cardsView.values()) { - orderedList.add(0, card); + if (revertOrder) { + // order objects for display + for (CardView card : cardsView.values()) { + orderedList.add(0, card); + } + } else { + orderedList.addAll(cardsView.values()); } // add objects to the panel diff --git a/Mage.Client/src/main/java/mage/client/dialog/CardInfoWindowDialog.java b/Mage.Client/src/main/java/mage/client/dialog/CardInfoWindowDialog.java index 59b6a23fa66..c578a590158 100644 --- a/Mage.Client/src/main/java/mage/client/dialog/CardInfoWindowDialog.java +++ b/Mage.Client/src/main/java/mage/client/dialog/CardInfoWindowDialog.java @@ -114,7 +114,7 @@ public class CardInfoWindowDialog extends MageDialog { } public void loadCards(ExileView exile, BigCard bigCard, UUID gameId) { - boolean changed = cards.loadCards(exile, bigCard, gameId, null); + boolean changed = cards.loadCards(exile, bigCard, gameId, true); String titel = name + " (" + exile.size() + ")"; setTitle(titel); this.setTitelBarToolTip(titel); @@ -138,7 +138,11 @@ public class CardInfoWindowDialog extends MageDialog { } public void loadCards(CardsView showCards, BigCard bigCard, UUID gameId) { - cards.loadCards(showCards, bigCard, gameId, null); + loadCards(showCards, bigCard, gameId, true); + } + + public void loadCards(CardsView showCards, BigCard bigCard, UUID gameId, boolean revertOrder) { + cards.loadCards(showCards, bigCard, gameId, revertOrder); if (showType.equals(ShowType.GRAVEYARD)) { String titel = name + "'s Graveyard (" + showCards.size() + ")"; setTitle(titel); diff --git a/Mage.Client/src/main/java/mage/client/game/GamePanel.java b/Mage.Client/src/main/java/mage/client/game/GamePanel.java index 0a44146935b..9b6f25f275c 100644 --- a/Mage.Client/src/main/java/mage/client/game/GamePanel.java +++ b/Mage.Client/src/main/java/mage/client/game/GamePanel.java @@ -692,7 +692,7 @@ public final class GamePanel extends javax.swing.JPanel { if (cardInfoWindowDialog.isClosed()) { graveyardWindows.remove(player.getName()); } else { - cardInfoWindowDialog.loadCards(player.getGraveyard(), bigCard, gameId); + cardInfoWindowDialog.loadCards(player.getGraveyard(), bigCard, gameId, false); } } // show top card window @@ -801,7 +801,7 @@ public final class GamePanel extends javax.swing.JPanel { } private void displayStack(GameView game, BigCard bigCard, FeedbackPanel feedbackPanel, UUID gameId) { - this.stack.loadCards(game.getStack(), bigCard, gameId, null); + this.stack.loadCards(game.getStack(), bigCard, gameId, true); } /** @@ -908,7 +908,7 @@ public final class GamePanel extends javax.swing.JPanel { CardInfoWindowDialog newGraveyard = new CardInfoWindowDialog(ShowType.GRAVEYARD, playerName); graveyardWindows.put(playerName, newGraveyard); MageFrame.getDesktop().add(newGraveyard, JLayeredPane.MODAL_LAYER); - newGraveyard.loadCards(graveyards.get(playerName), bigCard, gameId); + newGraveyard.loadCards(graveyards.get(playerName), bigCard, gameId, false); } public void openTopLibraryWindow(String playerName) { diff --git a/Mage.Client/src/main/java/mage/client/game/HandPanel.java b/Mage.Client/src/main/java/mage/client/game/HandPanel.java index 9a78cfbca35..fb11a35bc19 100644 --- a/Mage.Client/src/main/java/mage/client/game/HandPanel.java +++ b/Mage.Client/src/main/java/mage/client/game/HandPanel.java @@ -1,6 +1,5 @@ package mage.client.game; -import mage.client.MageFrame; import mage.client.cards.BigCard; import mage.client.dialog.PreferencesDialog; import mage.client.util.Config; @@ -36,7 +35,7 @@ public class HandPanel extends JPanel { jPanel = new JPanel(); jScrollPane1 = new JScrollPane(jPanel); - jScrollPane1.getViewport().setBackground(new Color(0,0,0,0)); + jScrollPane1.getViewport().setBackground(new Color(0, 0, 0, 0)); jPanel.setLayout(new GridBagLayout()); // centers hand jPanel.setBackground(new Color(0, 0, 0, 0)); @@ -67,7 +66,7 @@ public class HandPanel extends JPanel { } public void loadCards(CardsView cards, BigCard bigCard, UUID gameId) { - hand.loadCards(cards, bigCard, gameId, null); + hand.loadCards(cards, bigCard, gameId, true); hand.sizeCards(getHandCardDimension()); } @@ -91,7 +90,7 @@ public class HandPanel extends JPanel { private JPanel jPanel; private JScrollPane jScrollPane1; - private static final Border emptyBorder = new EmptyBorder(0,0,0,0); + private static final Border emptyBorder = new EmptyBorder(0, 0, 0, 0); private mage.client.cards.Cards hand; } diff --git a/Mage.Client/src/main/java/mage/client/unusedFiles/CombatGroup.java b/Mage.Client/src/main/java/mage/client/unusedFiles/CombatGroup.java index 301a863aafb..575dab87caa 100644 --- a/Mage.Client/src/main/java/mage/client/unusedFiles/CombatGroup.java +++ b/Mage.Client/src/main/java/mage/client/unusedFiles/CombatGroup.java @@ -1,48 +1,44 @@ /* -* Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. -* -* Redistribution and use in source and binary forms, with or without modification, are -* permitted provided that the following conditions are met: -* -* 1. Redistributions of source code must retain the above copyright notice, this list of -* conditions and the following disclaimer. -* -* 2. Redistributions in binary form must reproduce the above copyright notice, this list -* of conditions and the following disclaimer in the documentation and/or other materials -* provided with the distribution. -* -* THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED -* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND -* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR -* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON -* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -* -* The views and conclusions contained in the software and documentation are those of the -* authors and should not be interpreted as representing official policies, either expressed -* or implied, of BetaSteward_at_googlemail.com. -*/ + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ /* * CombatGroup.java * * Created on Feb 10, 2010, 3:36:55 PM */ - - package mage.client.unusedFiles; //package mage.client.game; - +import java.util.UUID; import mage.client.cards.BigCard; import mage.client.util.Config; import mage.view.CombatGroupView; -import java.util.UUID; - /** * * @author BetaSteward_at_googlemail.com @@ -52,7 +48,9 @@ public class CombatGroup extends javax.swing.JPanel { private UUID gameId; private BigCard bigCard; - /** Creates new form CombatGroup */ + /** + * Creates new form CombatGroup + */ public CombatGroup() { initComponents(); attackers.setDontDisplayTapped(true); @@ -65,18 +63,18 @@ public class CombatGroup extends javax.swing.JPanel { public void update(CombatGroupView combatGroup) { this.lblDefender.setText(combatGroup.getDefenderName()); - this.attackers.loadCards(combatGroup.getAttackers(), bigCard, gameId, null); + this.attackers.loadCards(combatGroup.getAttackers(), bigCard, gameId, true); // attackers.setPreferredSize(new Dimension(Config.dimensions.frameWidth + 6, Config.dimensions.frameHeight + 6)); - this.blockers.loadCards(combatGroup.getBlockers(), bigCard, gameId, null); + this.blockers.loadCards(combatGroup.getBlockers(), bigCard, gameId, true); // blockers.setPreferredSize(new Dimension(Config.dimensions.frameWidth + 6, Config.dimensions.frameHeight + 6)); this.attackers.setVisible(true); this.blockers.setVisible(true); } - /** This method is called from within the constructor to - * initialize the form. - * WARNING: Do NOT modify this code. The content of this method is - * always regenerated by the Form Editor. + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // //GEN-BEGIN:initComponents @@ -112,7 +110,6 @@ public class CombatGroup extends javax.swing.JPanel { ); }// //GEN-END:initComponents - // Variables declaration - do not modify//GEN-BEGIN:variables private mage.client.cards.Cards attackers; private mage.client.cards.Cards blockers;