From ce7a5d9fcd36f32bc6acced539f33ee27b3e6639 Mon Sep 17 00:00:00 2001 From: drdev Date: Thu, 31 Jul 2014 21:28:03 +0000 Subject: [PATCH] Prevent showing add to favorites and change preferred art except on Constructed editor --- .../src/forge/deck/FDeckEditor.java | 94 ++++++++++--------- 1 file changed, 48 insertions(+), 46 deletions(-) diff --git a/forge-gui-mobile/src/forge/deck/FDeckEditor.java b/forge-gui-mobile/src/forge/deck/FDeckEditor.java index 660cbac01dd..fc19f61f09a 100644 --- a/forge-gui-mobile/src/forge/deck/FDeckEditor.java +++ b/forge-gui-mobile/src/forge/deck/FDeckEditor.java @@ -805,55 +805,57 @@ public class FDeckEditor extends TabPageScreen { } } - //add option to add or remove card from favorites - final CardPreferences prefs = CardPreferences.getPrefs(card); - if (prefs.getStarCount() == 0) { - menu.addItem(new FMenuItem("Add to Favorites", FSkinImage.STAR_FILLED, new FEventHandler() { - @Override - public void handleEvent(FEvent e) { - prefs.setStarCount(1); - CardPreferences.save(); - } - })); - } - else { - menu.addItem(new FMenuItem("Remove from Favorites", FSkinImage.STAR_OUTINE, new FEventHandler() { - @Override - public void handleEvent(FEvent e) { - prefs.setStarCount(0); - CardPreferences.save(); - } - })); - } - - //if card has more than one art option, add item to change user's preferred art - final List artOptions = FModel.getMagicDb().getCommonCards().getAllCards(card.getName()); - if (artOptions != null && artOptions.size() > 1) { - menu.addItem(new FMenuItem("Change Preferred Art", FSkinImage.SETTINGS, new FEventHandler() { - @Override - public void handleEvent(FEvent e) { - //sort options so current option is on top and selected by default - List sortedOptions = new ArrayList(); - sortedOptions.add(card); - for (PaperCard option : artOptions) { - if (option != card) { - sortedOptions.add(option); - } + if (parentScreen.getEditorType() == EditorType.Constructed) { + //add option to add or remove card from favorites + final CardPreferences prefs = CardPreferences.getPrefs(card); + if (prefs.getStarCount() == 0) { + menu.addItem(new FMenuItem("Add to Favorites", FSkinImage.STAR_FILLED, new FEventHandler() { + @Override + public void handleEvent(FEvent e) { + prefs.setStarCount(1); + CardPreferences.save(); } - GuiChoose.oneOrNone("Select preferred art for " + card.getName(), sortedOptions, new Callback() { - @Override - public void run(PaperCard result) { - if (result != null) { - if (result != card) { - cardManager.replaceAll(card, result); - } - prefs.setPreferredArt(result.getEdition() + CardDb.NameSetSeparator + result.getArtIndex()); - CardPreferences.save(); + })); + } + else { + menu.addItem(new FMenuItem("Remove from Favorites", FSkinImage.STAR_OUTINE, new FEventHandler() { + @Override + public void handleEvent(FEvent e) { + prefs.setStarCount(0); + CardPreferences.save(); + } + })); + } + + //if card has more than one art option, add item to change user's preferred art + final List artOptions = FModel.getMagicDb().getCommonCards().getAllCards(card.getName()); + if (artOptions != null && artOptions.size() > 1) { + menu.addItem(new FMenuItem("Change Preferred Art", FSkinImage.SETTINGS, new FEventHandler() { + @Override + public void handleEvent(FEvent e) { + //sort options so current option is on top and selected by default + List sortedOptions = new ArrayList(); + sortedOptions.add(card); + for (PaperCard option : artOptions) { + if (option != card) { + sortedOptions.add(option); } } - }); - } - })); + GuiChoose.oneOrNone("Select preferred art for " + card.getName(), sortedOptions, new Callback() { + @Override + public void run(PaperCard result) { + if (result != null) { + if (result != card) { + cardManager.replaceAll(card, result); + } + prefs.setPreferredArt(result.getEdition() + CardDb.NameSetSeparator + result.getArtIndex()); + CardPreferences.save(); + } + } + }); + } + })); + } } } }