Fix so DEV_MODE flag updated appropriately

This commit is contained in:
drdev
2014-05-04 18:27:18 +00:00
parent 9b4af1a58b
commit c2a75f9bce
10 changed files with 26 additions and 33 deletions

View File

@@ -642,9 +642,6 @@ public enum FControl implements KeyEventDispatcher {
final ForgePreferences prefs = FModel.getPreferences(); final ForgePreferences prefs = FModel.getPreferences();
final List<VField> fieldViews = VMatchUI.SINGLETON_INSTANCE.getFieldViews(); final List<VField> fieldViews = VMatchUI.SINGLETON_INSTANCE.getFieldViews();
ForgePreferences.DEV_MODE = prefs.getPrefBoolean(FPref.DEV_MODE_ENABLED);
ForgePreferences.UPLOAD_DRAFT = ForgePreferences.NET_CONN; // && prefs.getPrefBoolean(FPref.UI_UPLOAD_DRAFT);
// AI field is at index [0] // AI field is at index [0]
PhaseIndicator fvAi = fieldViews.get(1).getPhaseIndicator(); PhaseIndicator fvAi = fieldViews.get(1).getPhaseIndicator();
fvAi.getLblUpkeep().setEnabled(prefs.getPrefBoolean(FPref.PHASE_AI_UPKEEP)); fvAi.getLblUpkeep().setEnabled(prefs.getPrefBoolean(FPref.PHASE_AI_UPKEEP));

View File

@@ -5,6 +5,7 @@ import forge.gui.framework.EDocID;
import forge.gui.framework.FScreen; import forge.gui.framework.FScreen;
import forge.gui.framework.SDisplayUtil; import forge.gui.framework.SDisplayUtil;
import forge.model.FModel; import forge.model.FModel;
import forge.properties.ForgePreferences;
import forge.properties.ForgePreferences.FPref; import forge.properties.ForgePreferences.FPref;
import forge.screens.home.settings.VSubmenuPreferences.KeyboardShortcutField; import forge.screens.home.settings.VSubmenuPreferences.KeyboardShortcutField;
import forge.screens.match.CMatchUI; import forge.screens.match.CMatchUI;
@@ -85,7 +86,7 @@ public class KeyboardShortcuts {
@Override @Override
public void actionPerformed(final ActionEvent e) { public void actionPerformed(final ActionEvent e) {
if (Singletons.getControl().getCurrentScreen() != FScreen.MATCH_SCREEN) { return; } if (Singletons.getControl().getCurrentScreen() != FScreen.MATCH_SCREEN) { return; }
if (FModel.getPreferences().getPrefBoolean(FPref.DEV_MODE_ENABLED)) { if (ForgePreferences.DEV_MODE) {
SDisplayUtil.showTab(EDocID.DEV_MODE.getDoc()); SDisplayUtil.showTab(EDocID.DEV_MODE.getDoc());
} }
} }

View File

@@ -161,7 +161,7 @@ public enum CSubmenuPreferences implements ICDoc {
this.prefs = FModel.getPreferences(); this.prefs = FModel.getPreferences();
setPlayerNameButtonText(); setPlayerNameButtonText();
view.getCbDevMode().setSelected(prefs.getPrefBoolean(FPref.DEV_MODE_ENABLED)); view.getCbDevMode().setSelected(ForgePreferences.DEV_MODE);
for(Pair<JCheckBox, FPref> kv: lstControls) { for(Pair<JCheckBox, FPref> kv: lstControls) {
kv.getKey().setSelected(prefs.getPrefBoolean(kv.getValue())); kv.getKey().setSelected(prefs.getPrefBoolean(kv.getValue()));

View File

@@ -2,8 +2,7 @@ package forge.screens.match;
import forge.Singletons; import forge.Singletons;
import forge.gui.framework.*; import forge.gui.framework.*;
import forge.model.FModel; import forge.properties.ForgePreferences;
import forge.properties.ForgePreferences.FPref;
import forge.screens.match.views.*; import forge.screens.match.views.*;
import forge.toolbox.FButton; import forge.toolbox.FButton;
import forge.view.FView; import forge.view.FView;
@@ -52,7 +51,7 @@ public enum VMatchUI implements IVTopLevelUI {
@Override @Override
public void populate() { public void populate() {
// Dev mode disabled? Remove from parent cell if exists. // Dev mode disabled? Remove from parent cell if exists.
if (!FModel.getPreferences().getPrefBoolean(FPref.DEV_MODE_ENABLED)) { if (!ForgePreferences.DEV_MODE) {
if (VDev.SINGLETON_INSTANCE.getParentCell() != null) { if (VDev.SINGLETON_INSTANCE.getParentCell() != null) {
final DragCell parent = VDev.SINGLETON_INSTANCE.getParentCell(); final DragCell parent = VDev.SINGLETON_INSTANCE.getParentCell();
parent.removeDoc(VDev.SINGLETON_INSTANCE); parent.removeDoc(VDev.SINGLETON_INSTANCE);

View File

@@ -1,9 +1,6 @@
package forge.screens.match.menus; package forge.screens.match.menus;
import forge.model.FModel;
import forge.properties.ForgePreferences; import forge.properties.ForgePreferences;
import forge.properties.ForgePreferences.FPref;
import javax.swing.*; import javax.swing.*;
import java.util.ArrayList; import java.util.ArrayList;
@@ -16,18 +13,13 @@ import java.util.List;
public class CMatchUIMenus { public class CMatchUIMenus {
private final boolean SHOW_ICONS = false; private final boolean SHOW_ICONS = false;
private static ForgePreferences prefs = FModel.getPreferences();
public List<JMenu> getMenus() { public List<JMenu> getMenus() {
List<JMenu> menus = new ArrayList<JMenu>(); List<JMenu> menus = new ArrayList<JMenu>();
menus.add(GameMenu.getMenu(SHOW_ICONS)); menus.add(GameMenu.getMenu(SHOW_ICONS));
if (isDevModeEnabled()) { if (ForgePreferences.DEV_MODE) {
menus.add(DevModeMenu.getMenu()); menus.add(DevModeMenu.getMenu());
} }
return menus; return menus;
} }
private boolean isDevModeEnabled() {
return prefs.getPrefBoolean(FPref.DEV_MODE_ENABLED);
}
} }

View File

@@ -6,6 +6,7 @@ import forge.gui.framework.ILocalRepaint;
import forge.menus.ForgeMenu; import forge.menus.ForgeMenu;
import forge.menus.LayoutMenu; import forge.menus.LayoutMenu;
import forge.model.FModel; import forge.model.FModel;
import forge.properties.ForgePreferences;
import forge.properties.ForgePreferences.FPref; import forge.properties.ForgePreferences.FPref;
import forge.toolbox.FButton; import forge.toolbox.FButton;
import forge.toolbox.FDigitalClock; import forge.toolbox.FDigitalClock;
@@ -79,7 +80,7 @@ public class FNavigationBar extends FTitleBarBase {
addNavigationTab(FScreen.HOME_SCREEN); addNavigationTab(FScreen.HOME_SCREEN);
addNavigationTab(FScreen.DECK_EDITOR_CONSTRUCTED); addNavigationTab(FScreen.DECK_EDITOR_CONSTRUCTED);
if (FModel.getPreferences().getPrefBoolean(FPref.DEV_MODE_ENABLED)) { if (ForgePreferences.DEV_MODE) {
//TODO: Make Workshop available outside developer mode when custom cards supported //TODO: Make Workshop available outside developer mode when custom cards supported
addNavigationTab(FScreen.WORKSHOP_SCREEN); addNavigationTab(FScreen.WORKSHOP_SCREEN);
} }

View File

@@ -79,7 +79,6 @@ public class FControl {
private static List<Player> sortedPlayers; private static List<Player> sortedPlayers;
private static final EventBus uiEvents; private static final EventBus uiEvents;
private static boolean gameHasHumanPlayer; private static boolean gameHasHumanPlayer;
private static boolean devMode;
private static final MatchUiEventVisitor visitor = new MatchUiEventVisitor(); private static final MatchUiEventVisitor visitor = new MatchUiEventVisitor();
private static final FControlGameEventHandler fcVisitor = new FControlGameEventHandler(); private static final FControlGameEventHandler fcVisitor = new FControlGameEventHandler();
private static final FControlGamePlayback playbackControl = new FControlGamePlayback(); private static final FControlGamePlayback playbackControl = new FControlGamePlayback();
@@ -223,13 +222,7 @@ public class FControl {
playerPanels.add(new VPlayerPanel(p)); playerPanels.add(new VPlayerPanel(p));
} }
view = new MatchScreen(game, localPlayer, playerPanels) { view = new MatchScreen(game, localPlayer, playerPanels);
@Override
public void onActivate() {
devMode = FModel.getPreferences().getPrefBoolean(FPref.DEV_MODE_ENABLED); //cache devMode for performance when match screen opened
super.onActivate();
}
};
} }
private static List<Player> shiftPlayersPlaceLocalFirst(final List<Player> players, LobbyPlayer localPlayer) { private static List<Player> shiftPlayersPlaceLocalFirst(final List<Player> players, LobbyPlayer localPlayer) {
@@ -303,7 +296,7 @@ public class FControl {
} }
public static boolean mayShowCard(Card c) { public static boolean mayShowCard(Card c) {
return game == null || !gameHasHumanPlayer || devMode || c.canBeShownTo(getCurrentPlayer()); return game == null || !gameHasHumanPlayer || ForgePreferences.DEV_MODE || c.canBeShownTo(getCurrentPlayer());
} }
public static void alphaStrike() { public static void alphaStrike() {

View File

@@ -14,6 +14,7 @@ import forge.assets.FSkinFont;
import forge.assets.FSkinColor.Colors; import forge.assets.FSkinColor.Colors;
import forge.game.GameLogEntryType; import forge.game.GameLogEntryType;
import forge.model.FModel; import forge.model.FModel;
import forge.properties.ForgePreferences;
import forge.properties.ForgePreferences.FPref; import forge.properties.ForgePreferences.FPref;
import forge.screens.FScreen; import forge.screens.FScreen;
import forge.toolbox.FGroupList; import forge.toolbox.FGroupList;
@@ -100,8 +101,14 @@ public class SettingsScreen extends FScreen {
//Advanced Settings //Advanced Settings
lstSettings.addItem(new BooleanSetting(FPref.DEV_MODE_ENABLED, lstSettings.addItem(new BooleanSetting(FPref.DEV_MODE_ENABLED,
"Developer Mode", "Developer Mode",
"Enables menu with functions for testing during development."), "Enables menu with functions for testing during development.") {
3); @Override
public void select() {
super.select();
//update DEV_MODE flag when preference changes
ForgePreferences.DEV_MODE = FModel.getPreferences().getPrefBoolean(FPref.DEV_MODE_ENABLED);
}
}, 3);
lstSettings.addItem(new CustomSelectSetting(FPref.DEV_LOG_ENTRY_TYPE, lstSettings.addItem(new CustomSelectSetting(FPref.DEV_LOG_ENTRY_TYPE,
"Game Log Verbosity", "Game Log Verbosity",
"Changes how much information is displayed in the game log. Sorted by least to most verbose.", "Changes how much information is displayed in the game log. Sorted by least to most verbose.",

View File

@@ -34,6 +34,7 @@ import forge.itemmanager.ItemManagerConfig;
import forge.limited.GauntletMini; import forge.limited.GauntletMini;
import forge.properties.ForgeConstants; import forge.properties.ForgeConstants;
import forge.properties.ForgePreferences; import forge.properties.ForgePreferences;
import forge.properties.ForgePreferences.FPref;
import forge.quest.QuestController; import forge.quest.QuestController;
import forge.quest.QuestWorld; import forge.quest.QuestWorld;
import forge.quest.data.QuestPreferences; import forge.quest.data.QuestPreferences;
@@ -152,6 +153,9 @@ public class FModel {
throw new RuntimeException(exn); throw new RuntimeException(exn);
} }
ForgePreferences.DEV_MODE = preferences.getPrefBoolean(FPref.DEV_MODE_ENABLED);
ForgePreferences.UPLOAD_DRAFT = ForgePreferences.NET_CONN; // && preferences.getPrefBoolean(FPref.UI_UPLOAD_DRAFT);
formats = new GameFormat.Collection(new GameFormat.Reader(new File(ForgeConstants.BLOCK_DATA_DIR + "formats.txt"))); formats = new GameFormat.Collection(new GameFormat.Reader(new File(ForgeConstants.BLOCK_DATA_DIR + "formats.txt")));
blocks = new StorageBase<CardBlock>("Block definitions", new CardBlock.Reader(ForgeConstants.BLOCK_DATA_DIR + "blocks.txt", magicDb.getEditions())); blocks = new StorageBase<CardBlock>("Block definitions", new CardBlock.Reader(ForgeConstants.BLOCK_DATA_DIR + "blocks.txt", magicDb.getEditions()));
questPreferences = new QuestPreferences(); questPreferences = new QuestPreferences();

View File

@@ -16,7 +16,6 @@ public class LobbyPlayerHuman extends LobbyPlayer implements IGameEntitiesFactor
super(name); super(name);
} }
@Override @Override
public PlayerController createControllerFor(Player human) { public PlayerController createControllerFor(Player human) {
return new PlayerControllerHuman(human.getGame(), human, this); return new PlayerControllerHuman(human.getGame(), human, this);
@@ -26,10 +25,10 @@ public class LobbyPlayerHuman extends LobbyPlayer implements IGameEntitiesFactor
public Player createIngamePlayer(Game game) { public Player createIngamePlayer(Game game) {
Player player = new Player(GuiDisplayUtil.personalizeHuman(getName()), game); Player player = new Player(GuiDisplayUtil.personalizeHuman(getName()), game);
player.setFirstController(new PlayerControllerHuman(game, player, this)); player.setFirstController(new PlayerControllerHuman(game, player, this));
if( ForgePreferences.DEV_MODE && FModel.getPreferences().getPrefBoolean(FPref.DEV_UNLIMITED_LAND))
player.canCheatPlayUnlimitedLands = true;
if (ForgePreferences.DEV_MODE && FModel.getPreferences().getPrefBoolean(FPref.DEV_UNLIMITED_LAND)) {
player.canCheatPlayUnlimitedLands = true;
}
return player; return player;
} }