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.java43
1 files changed, 29 insertions, 14 deletions
diff --git a/src/jcgp/gui/settings/parameters/GUIBooleanParameter.java b/src/jcgp/gui/settings/parameters/GUIBooleanParameter.java
index da564f7..fc66e7d 100644
--- a/src/jcgp/gui/settings/parameters/GUIBooleanParameter.java
+++ b/src/jcgp/gui/settings/parameters/GUIBooleanParameter.java
@@ -6,12 +6,13 @@ import javafx.scene.control.CheckBox;
import jcgp.backend.parameters.BooleanParameter;
import jcgp.backend.parameters.ParameterStatus;
import jcgp.gui.GUI;
+import jcgp.gui.settings.SettingsPane;
public class GUIBooleanParameter extends GUIParameter {
private boolean originalValue;
- GUIBooleanParameter(final BooleanParameter parameter) {
+ GUIBooleanParameter(final BooleanParameter parameter, final SettingsPane sp) {
super();
this.parameter = parameter;
@@ -32,18 +33,8 @@ public class GUIBooleanParameter extends GUIParameter {
ObservableValue<? extends Boolean> observable,
Boolean oldValue, Boolean newValue) {
parameter.set(newValue);
- if (parameter.getStatus() == ParameterStatus.INVALID) {
- valueControl.setStyle(GUI.INVALID_PARAMETER_STYLE);
- valueControl.setTooltip(tooltip);
- tooltip.setText(parameter.getStatus().getDetails());
- } else if (parameter.getStatus() == ParameterStatus.WARNING) {
- valueControl.setStyle(GUI.WARNING_PARAMETER_STYLE);
- valueControl.setTooltip(tooltip);
- tooltip.setText(parameter.getStatus().getDetails());
- } else {
- valueControl.setStyle(GUI.VALID_PARAMETER_STYLE);
- valueControl.setTooltip(null);
- }
+ setValidityStyle();
+ sp.revalidateParameters();
}
});
}
@@ -60,7 +51,8 @@ public class GUIBooleanParameter extends GUIParameter {
@Override
public boolean requiresReset() {
- return parameter.isCritical() && ((BooleanParameter) parameter).get() != originalValue;
+ return (parameter.isCritical() && ((BooleanParameter) parameter).get() != originalValue)
+ || parameter.getStatus() == ParameterStatus.WARNING_RESET;
}
@Override
@@ -68,4 +60,27 @@ public class GUIBooleanParameter extends GUIParameter {
originalValue = ((BooleanParameter) parameter).get();
}
+ /**
+ * @param parameter
+ */
+ private void setValidityStyle() {
+ if (parameter.getStatus() == ParameterStatus.INVALID) {
+ valueControl.setStyle(GUI.INVALID_PARAMETER_STYLE);
+ valueControl.setTooltip(tooltip);
+ tooltip.setText(parameter.getStatus().getDetails());
+ } else if (parameter.getStatus() == ParameterStatus.WARNING || parameter.getStatus() == ParameterStatus.WARNING_RESET) {
+ valueControl.setStyle(GUI.WARNING_PARAMETER_STYLE);
+ valueControl.setTooltip(tooltip);
+ tooltip.setText(parameter.getStatus().getDetails());
+ } else {
+ valueControl.setStyle(GUI.VALID_PARAMETER_STYLE);
+ valueControl.setTooltip(null);
+ }
+ }
+
+ @Override
+ public void validate() {
+ ((BooleanParameter) parameter).validate(((BooleanParameter) parameter).get());
+ setValidityStyle();
+ }
}