From 135cadac67776c28d69d061038d226f1520c85ef Mon Sep 17 00:00:00 2001 From: drdev Date: Sat, 26 Jul 2014 14:54:13 +0000 Subject: [PATCH] Add PaperCard renderer for DualListBox --- .../src/forge/toolbox/DualListBox.java | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/forge-gui-mobile/src/forge/toolbox/DualListBox.java b/forge-gui-mobile/src/forge/toolbox/DualListBox.java index 88597258f5e..56e73665e5e 100644 --- a/forge-gui-mobile/src/forge/toolbox/DualListBox.java +++ b/forge-gui-mobile/src/forge/toolbox/DualListBox.java @@ -8,6 +8,7 @@ import forge.card.CardRenderer; import forge.card.CardZoom; import forge.game.card.Card; import forge.game.spellability.SpellAbility; +import forge.item.PaperCard; import forge.screens.match.views.VPrompt; import forge.screens.match.views.VStack; import forge.toolbox.FEvent.FEventHandler; @@ -110,6 +111,9 @@ public class DualListBox extends FDialog { if (item instanceof Card) { renderer = new CardItemRenderer(); } + else if (item instanceof PaperCard) { + renderer = new PaperCardItemRenderer(); + } else if (item instanceof SpellAbility) { renderer = new SpellAbilityItemRenderer(); } @@ -369,6 +373,34 @@ public class DualListBox extends FDialog { CardRenderer.drawCardListItem(g, font, foreColor, (Card)value, 0, null, x, y, w, h); } } + //special renderer for paper cards + private class PaperCardItemRenderer extends ItemRenderer { + @Override + public FSkinFont getDefaultFont() { + return FSkinFont.get(14); + } + + @Override + public float getItemHeight() { + return CardRenderer.getCardListItemHeight(); + } + + @Override + public boolean tap(T value, float x, float y, int count) { + return CardRenderer.cardListItemTap((PaperCard)value, x, y, count); + } + + @Override + public boolean longPress(T value, float x, float y) { + CardZoom.show((PaperCard)value); + return true; + } + + @Override + public void drawValue(Graphics g, T value, FSkinFont font, FSkinColor foreColor, boolean pressed, float x, float y, float w, float h) { + CardRenderer.drawCardListItem(g, font, foreColor, (PaperCard)value, 0, null, x, y, w, h); + } + } private class ChoiceList extends FList { private List selectedIndices = new ArrayList();