From 1393212cec1c209ac7c98c88dd60d555c9ce622e Mon Sep 17 00:00:00 2001 From: Agetian Date: Sun, 17 May 2015 05:00:20 +0000 Subject: [PATCH] - A better fix for Morph cards leaking their color in CardDetailPanel when face-down. --- .../src/main/java/forge/gui/CardDetailPanel.java | 13 +++++-------- .../forge/screens/match/controllers/CDetail.java | 2 +- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/forge-gui-desktop/src/main/java/forge/gui/CardDetailPanel.java b/forge-gui-desktop/src/main/java/forge/gui/CardDetailPanel.java index dcc57843df1..215352bfa24 100644 --- a/forge-gui-desktop/src/main/java/forge/gui/CardDetailPanel.java +++ b/forge-gui-desktop/src/main/java/forge/gui/CardDetailPanel.java @@ -34,7 +34,6 @@ import forge.card.CardDetailUtil; import forge.card.CardDetailUtil.DetailColors; import forge.card.CardEdition; import forge.card.CardRarity; -import forge.card.CardStateName; import forge.game.GameView; import forge.game.card.Card; import forge.game.card.CardView; @@ -173,6 +172,10 @@ public class CardDetailPanel extends SkinnedPanel { } public final void setCard(final CardView card, final boolean isInAltState) { + setCard(card, false, true); + } + + public final void setCard(final CardView card, final boolean isInAltState, final boolean canShow) { nameCostLabel.setText(""); typeLabel.setVisible(true); typeLabel.setText(""); @@ -196,8 +199,6 @@ public class CardDetailPanel extends SkinnedPanel { return; } - boolean canShow = true; - if (state.getManaCost().isNoCost() || !canShow) { nameCostLabel.setText(CardDetailUtil.formatCardName(card, canShow, isInAltState)); } @@ -262,11 +263,7 @@ public class CardDetailPanel extends SkinnedPanel { setInfoLabel.setBorder(BorderFactory.createLineBorder(foreColor)); } - if (state.getState() == CardStateName.FaceDown) { - updateBorder(state, false); // do not spoil the color of face-down cards - } else { - updateBorder(state, canShow); - } + updateBorder(state, canShow); powerToughnessLabel.setText(CardDetailUtil.formatPowerToughness(state, canShow)); diff --git a/forge-gui-desktop/src/main/java/forge/screens/match/controllers/CDetail.java b/forge-gui-desktop/src/main/java/forge/screens/match/controllers/CDetail.java index 4065a73da6d..d9596965949 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/match/controllers/CDetail.java +++ b/forge-gui-desktop/src/main/java/forge/screens/match/controllers/CDetail.java @@ -58,7 +58,7 @@ public class CDetail implements ICDoc { void showCard(final CardView c, final boolean isInAltState, final boolean mayView, final boolean mayFlip) { final CardView toShow = mayView ? c : null; view.getLblFlipcard().setVisible(toShow != null && mayFlip); - view.getPnlDetail().setCard(toShow, isInAltState); + view.getPnlDetail().setCard(toShow, isInAltState, mayView); if (view.getParentCell() != null) { view.getParentCell().repaintSelf(); }