diff options
Diffstat (limited to 'src/jcgp/backend/resources/parameters/IntegerParameter.java')
-rw-r--r-- | src/jcgp/backend/resources/parameters/IntegerParameter.java | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/src/jcgp/backend/resources/parameters/IntegerParameter.java b/src/jcgp/backend/resources/parameters/IntegerParameter.java new file mode 100644 index 0000000..2a7b2a7 --- /dev/null +++ b/src/jcgp/backend/resources/parameters/IntegerParameter.java @@ -0,0 +1,37 @@ +package jcgp.backend.resources.parameters; + +import javafx.beans.property.SimpleIntegerProperty; + +public abstract class IntegerParameter extends Parameter { + + private SimpleIntegerProperty value; + + public IntegerParameter(int value, String name, boolean monitor, boolean critical) { + super(name, monitor, critical); + this.value = new SimpleIntegerProperty(value); + } + + public IntegerParameter(int value, String name) { + super(name, false, false); + this.value = new SimpleIntegerProperty(value); + } + + public int get() { + return value.get(); + } + + public void set(int newValue) { + if (!value.isBound()) { + validate(newValue); + value.set(newValue); + } + } + + @Override + public SimpleIntegerProperty valueProperty() { + return value; + } + + public abstract void validate(int newValue); + +} |