diff options
Diffstat (limited to 'src/jcgp/gui/GUI.java')
-rw-r--r-- | src/jcgp/gui/GUI.java | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/src/jcgp/gui/GUI.java b/src/jcgp/gui/GUI.java index eaca077..5a7a16d 100644 --- a/src/jcgp/gui/GUI.java +++ b/src/jcgp/gui/GUI.java @@ -46,11 +46,11 @@ public class GUI extends Application { private PopulationPane populationPane; - private GUIConsole console = new GUIConsole(); + private GUIConsole console; private SettingsPane settingsPane; - private boolean evolving = false; + private static boolean working = false; private Object printLock = new Object(); @@ -93,16 +93,13 @@ public class GUI extends Application { }; public static void main(String[] args) { -// jcgp = new JCGP(); -// resources = jcgp.getResources(); -// -// functionSelector = launch(); } @Override public void start(Stage primaryStage) throws Exception { + console = new GUIConsole(); jcgp.setConsole(console); /* @@ -142,7 +139,7 @@ public class GUI extends Application { public void runPause() { if (!jcgp.isFinished() && settingsPane.areParametersValid()) { - if (!evolving) { + if (!working) { runningMode(true); cgpService.restart(); } else { @@ -153,7 +150,7 @@ public class GUI extends Application { } public void step() { - if (!evolving && !jcgp.isFinished() && settingsPane.areParametersValid()) { + if (!working && !jcgp.isFinished() && settingsPane.areParametersValid()) { if (settingsPane.isResetRequired()) { reset(); } @@ -164,12 +161,12 @@ public class GUI extends Application { populationPane.updateGenes(); populationPane.relockOutputs(); - + settingsPane.revalidateParameters(); } } public void reset() { - if (!evolving && settingsPane.areParametersValid()) { + if (!working && settingsPane.areParametersValid()) { settingsPane.applyParameters(); jcgp.reset(); populationPane.remakeTabs(jcgp.getPopulation(), jcgp.getResources()); @@ -182,7 +179,7 @@ public class GUI extends Application { private void runningMode(boolean value) { populationPane.setDisable(value); settingsPane.updateControls(value, jcgp.isFinished()); - + if (value) { populationPane.unlockOutputs(); if (settingsPane.isResetRequired()) { @@ -191,12 +188,16 @@ public class GUI extends Application { } else { populationPane.updateGenes(); populationPane.relockOutputs(); + settingsPane.revalidateParameters(); } - evolving = value; + working = value; } public static void updateFunctionSelector() { functionSelector.remakeFunctions(resources.getFunctionSet()); } + public static boolean isWorking() { + return working; + } } |