From daafa3f5c2c71bffc1973a8e6037c407d58ef0c0 Mon Sep 17 00:00:00 2001 From: drdev Date: Sat, 23 Nov 2013 21:55:12 +0000 Subject: [PATCH] Add preference to Hide Reminder Text --- .../gui/home/settings/CSubmenuPreferences.java | 1 + .../gui/home/settings/VSubmenuPreferences.java | 16 ++++++++++++---- .../src/main/java/forge/gui/toolbox/FSkin.java | 5 +++-- .../java/forge/properties/ForgePreferences.java | 1 + 4 files changed, 17 insertions(+), 6 deletions(-) diff --git a/forge-gui/src/main/java/forge/gui/home/settings/CSubmenuPreferences.java b/forge-gui/src/main/java/forge/gui/home/settings/CSubmenuPreferences.java index 74407ac639d..a65fbcb6931 100644 --- a/forge-gui/src/main/java/forge/gui/home/settings/CSubmenuPreferences.java +++ b/forge-gui/src/main/java/forge/gui/home/settings/CSubmenuPreferences.java @@ -82,6 +82,7 @@ public enum CSubmenuPreferences implements ICDoc { lstControls.add(Pair.of(view.getCbCompactMainMenu(), FPref.UI_COMPACT_MAIN_MENU)); lstControls.add(Pair.of(view.getCbUseThemes(), FPref.UI_THEMED_COMBOBOX)); lstControls.add(Pair.of(view.getCbPromptFreeBlocks(), FPref.MATCHPREF_PROMPT_FREE_BLOCKS)); + lstControls.add(Pair.of(view.getCbHideReminderText(), FPref.UI_HIDE_REMINDER_TEXT)); for(final Pair kv : lstControls) { kv.getKey().addItemListener(new ItemListener() { diff --git a/forge-gui/src/main/java/forge/gui/home/settings/VSubmenuPreferences.java b/forge-gui/src/main/java/forge/gui/home/settings/VSubmenuPreferences.java index daa6dbfd2e7..2070fcb2c7b 100644 --- a/forge-gui/src/main/java/forge/gui/home/settings/VSubmenuPreferences.java +++ b/forge-gui/src/main/java/forge/gui/home/settings/VSubmenuPreferences.java @@ -84,6 +84,7 @@ public enum VSubmenuPreferences implements IVSubmenu { private final JCheckBox cbCompactMainMenu = new OptionsCheckBox("Use Compact Main Sidebar Menu"); private final JCheckBox cbUseThemes = new OptionsCheckBox("Enable Themes"); private final JCheckBox cbPromptFreeBlocks = new OptionsCheckBox("Free Block Handling"); + private final JCheckBox cbHideReminderText = new OptionsCheckBox("Hide Reminder Text"); private final Map shortcutFields = new HashMap(); @@ -175,7 +176,7 @@ public enum VSubmenuPreferences implements IVSubmenu { pnlPrefs.add(cbUseThemes, regularConstraints); pnlPrefs.add(new NoteLabel("Currently only applies to UIManager-related theme settings. (RESTART REQUIRED)"), regularConstraints); - + pnlPrefs.add(cbpCloseAction, "w 80%!, gap 10% 0 0 10px, span 2 1"); pnlPrefs.add(new NoteLabel("Changes what happens when clicking the X button in the upper right."), regularConstraints); @@ -186,7 +187,7 @@ public enum VSubmenuPreferences implements IVSubmenu { pnlPrefs.add(new NoteLabel("Adds foiled effects to random cards."), regularConstraints); pnlPrefs.add(cbRandomizeArt, regularConstraints); - pnlPrefs.add(new NoteLabel("Randomize the card art for cards in the human's deck"), regularConstraints); + pnlPrefs.add(new NoteLabel("Randomize the card art for cards in the human's deck."), regularConstraints); pnlPrefs.add(cbScaleLarger, regularConstraints); pnlPrefs.add(new NoteLabel("Allows card pictures to be expanded larger than their original size."), regularConstraints); @@ -194,6 +195,9 @@ public enum VSubmenuPreferences implements IVSubmenu { pnlPrefs.add(cbUiForTouchScreen, regularConstraints); pnlPrefs.add(new NoteLabel("Increases some UI elements to provide a better experience on touchscreen devices. (Needs restart)"), regularConstraints); + pnlPrefs.add(cbHideReminderText, regularConstraints); + pnlPrefs.add(new NoteLabel("Hide reminder text in Card Detail pane."), regularConstraints); + // Sound options pnlPrefs.add(new SectionLabel("Sound Options"), sectionConstraints + ", gaptop 2%"); @@ -450,7 +454,7 @@ public enum VSubmenuPreferences implements IVSubmenu { public FComboBoxPanel getGameLogVerbosityComboBoxPanel() { return cbpGameLogEntryType; } - + public FComboBoxPanel getCloseActionComboBoxPanel() { return cbpCloseAction; } @@ -484,6 +488,10 @@ public enum VSubmenuPreferences implements IVSubmenu { return cbUiForTouchScreen; } + public final JCheckBox getCbHideReminderText() { + return cbHideReminderText; + } + /** @return {@link forge.gui.toolbox.FLabel} */ public FLabel getBtnReset() { return btnReset; @@ -507,7 +515,7 @@ public enum VSubmenuPreferences implements IVSubmenu { public final FLabel getBtnDeleteEditorUI() { return btnDeleteEditorUI; } - + public final FLabel getBtnDeleteWorkshopUI() { return btnDeleteWorkshopUI; } diff --git a/forge-gui/src/main/java/forge/gui/toolbox/FSkin.java b/forge-gui/src/main/java/forge/gui/toolbox/FSkin.java index f7bdceead80..d64ab1d838f 100644 --- a/forge-gui/src/main/java/forge/gui/toolbox/FSkin.java +++ b/forge-gui/src/main/java/forge/gui/toolbox/FSkin.java @@ -1654,9 +1654,10 @@ public enum FSkin { } public static String encodeSymbols(String str) { - //format reminder text in italics + //format reminder text in italics (or hide if preference set) String pattern = "\\((.+)\\)"; - String replacement = "\\($1\\)"; //TODO: Consider setting to hide reminder text, in which case replace with "" here + String replacement = Singletons.getModel().getPreferences().getPrefBoolean(FPref.UI_HIDE_REMINDER_TEXT) ? + "" : "\\($1\\)"; str = str.replaceAll(pattern, replacement); //format mana symbols to display as icons diff --git a/forge-gui/src/main/java/forge/properties/ForgePreferences.java b/forge-gui/src/main/java/forge/properties/ForgePreferences.java index b3005f1c957..7cb03aa4be5 100644 --- a/forge-gui/src/main/java/forge/properties/ForgePreferences.java +++ b/forge-gui/src/main/java/forge/properties/ForgePreferences.java @@ -54,6 +54,7 @@ public class ForgePreferences extends PreferencesStore { UI_OVERLAY_CARD_POWER ("true"), UI_OVERLAY_CARD_MANA_COST ("true"), UI_OVERLAY_CARD_ID ("true"), + UI_HIDE_REMINDER_TEXT ("false"), UI_UPLOAD_DRAFT ("false"), UI_SCALE_LARGER ("true"), UI_MAX_STACK ("3"),