aboutsummaryrefslogtreecommitdiffstats
path: root/src/jcgp/gui/settings/parameters/GUIBooleanParameter.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/jcgp/gui/settings/parameters/GUIBooleanParameter.java')
-rw-r--r--src/jcgp/gui/settings/parameters/GUIBooleanParameter.java34
1 files changed, 20 insertions, 14 deletions
diff --git a/src/jcgp/gui/settings/parameters/GUIBooleanParameter.java b/src/jcgp/gui/settings/parameters/GUIBooleanParameter.java
index a9f6753..8acd6dd 100644
--- a/src/jcgp/gui/settings/parameters/GUIBooleanParameter.java
+++ b/src/jcgp/gui/settings/parameters/GUIBooleanParameter.java
@@ -1,11 +1,11 @@
package jcgp.gui.settings.parameters;
import javafx.scene.control.CheckBox;
-import jcgp.parameters.BooleanParameter;
+import jcgp.backend.parameters.BooleanParameter;
public class GUIBooleanParameter extends GUIParameter {
- public GUIBooleanParameter(BooleanParameter parameter) {
+ GUIBooleanParameter(BooleanParameter parameter) {
super();
this.parameter = parameter;
@@ -13,22 +13,16 @@ public class GUIBooleanParameter extends GUIParameter {
value = new CheckBox(parameter.getName());
((CheckBox) value).setSelected(parameter.get());
- value.setDisable(!parameter.isEditable());
+ value.setDisable(parameter.isMonitor());
- getChildren().add(value);
+ if (parameter.isMonitor()) {
+ makeLightBinding();
+ System.out.println("light binding made for " + name);
+ }
+ getChildren().add(value);
}
-// @Override
-// public void doBindings() {
-// ((CheckBox) value).selectedProperty().bind(((BooleanParameter) parameter).valueProperty());
-// }
-//
-// @Override
-// public void undoBindings() {
-// ((CheckBox) value).selectedProperty().unbind();
-// }
-
@Override
public void refreshValue() {
if (!((CheckBox) value).selectedProperty().isBound()) {
@@ -36,5 +30,17 @@ public class GUIBooleanParameter extends GUIParameter {
}
}
+
+ @Override
+ public boolean applyChange() {
+ if (((CheckBox) value).isSelected() != ((BooleanParameter) parameter).get() && (!parameter.isMonitor())) {
+ // apply value
+ ((BooleanParameter) parameter).set(((CheckBox) value).isSelected());
+ if (parameter.isCritical()) {
+ return true;
+ }
+ }
+ return false;
+ }
}