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 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]
PhaseIndicator fvAi = fieldViews.get(1).getPhaseIndicator();
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.SDisplayUtil;
import forge.model.FModel;
import forge.properties.ForgePreferences;
import forge.properties.ForgePreferences.FPref;
import forge.screens.home.settings.VSubmenuPreferences.KeyboardShortcutField;
import forge.screens.match.CMatchUI;
@@ -85,7 +86,7 @@ public class KeyboardShortcuts {
@Override
public void actionPerformed(final ActionEvent e) {
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());
}
}

View File

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

View File

@@ -2,8 +2,7 @@ package forge.screens.match;
import forge.Singletons;
import forge.gui.framework.*;
import forge.model.FModel;
import forge.properties.ForgePreferences.FPref;
import forge.properties.ForgePreferences;
import forge.screens.match.views.*;
import forge.toolbox.FButton;
import forge.view.FView;
@@ -52,7 +51,7 @@ public enum VMatchUI implements IVTopLevelUI {
@Override
public void populate() {
// 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) {
final DragCell parent = VDev.SINGLETON_INSTANCE.getParentCell();
parent.removeDoc(VDev.SINGLETON_INSTANCE);

View File

@@ -1,9 +1,6 @@
package forge.screens.match.menus;
import forge.model.FModel;
import forge.properties.ForgePreferences;
import forge.properties.ForgePreferences.FPref;
import javax.swing.*;
import java.util.ArrayList;
@@ -16,18 +13,13 @@ import java.util.List;
public class CMatchUIMenus {
private final boolean SHOW_ICONS = false;
private static ForgePreferences prefs = FModel.getPreferences();
public List<JMenu> getMenus() {
List<JMenu> menus = new ArrayList<JMenu>();
menus.add(GameMenu.getMenu(SHOW_ICONS));
if (isDevModeEnabled()) {
if (ForgePreferences.DEV_MODE) {
menus.add(DevModeMenu.getMenu());
}
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.LayoutMenu;
import forge.model.FModel;
import forge.properties.ForgePreferences;
import forge.properties.ForgePreferences.FPref;
import forge.toolbox.FButton;
import forge.toolbox.FDigitalClock;
@@ -79,7 +80,7 @@ public class FNavigationBar extends FTitleBarBase {
addNavigationTab(FScreen.HOME_SCREEN);
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
addNavigationTab(FScreen.WORKSHOP_SCREEN);
}

View File

@@ -79,7 +79,6 @@ public class FControl {
private static List<Player> sortedPlayers;
private static final EventBus uiEvents;
private static boolean gameHasHumanPlayer;
private static boolean devMode;
private static final MatchUiEventVisitor visitor = new MatchUiEventVisitor();
private static final FControlGameEventHandler fcVisitor = new FControlGameEventHandler();
private static final FControlGamePlayback playbackControl = new FControlGamePlayback();
@@ -223,13 +222,7 @@ public class FControl {
playerPanels.add(new VPlayerPanel(p));
}
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();
}
};
view = new MatchScreen(game, localPlayer, playerPanels);
}
private static List<Player> shiftPlayersPlaceLocalFirst(final List<Player> players, LobbyPlayer localPlayer) {
@@ -303,7 +296,7 @@ public class FControl {
}
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() {

View File

@@ -14,6 +14,7 @@ import forge.assets.FSkinFont;
import forge.assets.FSkinColor.Colors;
import forge.game.GameLogEntryType;
import forge.model.FModel;
import forge.properties.ForgePreferences;
import forge.properties.ForgePreferences.FPref;
import forge.screens.FScreen;
import forge.toolbox.FGroupList;
@@ -100,8 +101,14 @@ public class SettingsScreen extends FScreen {
//Advanced Settings
lstSettings.addItem(new BooleanSetting(FPref.DEV_MODE_ENABLED,
"Developer Mode",
"Enables menu with functions for testing during development."),
3);
"Enables menu with functions for testing during development.") {
@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,
"Game Log Verbosity",
"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.properties.ForgeConstants;
import forge.properties.ForgePreferences;
import forge.properties.ForgePreferences.FPref;
import forge.quest.QuestController;
import forge.quest.QuestWorld;
import forge.quest.data.QuestPreferences;
@@ -152,6 +153,9 @@ public class FModel {
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")));
blocks = new StorageBase<CardBlock>("Block definitions", new CardBlock.Reader(ForgeConstants.BLOCK_DATA_DIR + "blocks.txt", magicDb.getEditions()));
questPreferences = new QuestPreferences();

View File

@@ -16,7 +16,6 @@ public class LobbyPlayerHuman extends LobbyPlayer implements IGameEntitiesFactor
super(name);
}
@Override
public PlayerController createControllerFor(Player human) {
return new PlayerControllerHuman(human.getGame(), human, this);
@@ -26,10 +25,10 @@ public class LobbyPlayerHuman extends LobbyPlayer implements IGameEntitiesFactor
public Player createIngamePlayer(Game game) {
Player player = new Player(GuiDisplayUtil.personalizeHuman(getName()), game);
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;
}