package jcgp.gui.settings.parameters; import javafx.geometry.Pos; import javafx.scene.control.TextField; import javafx.scene.layout.Priority; import javafx.scene.text.Text; import jcgp.GUI; import jcgp.parameters.DoubleParameter; public class GUIDoubleParameter extends GUIParameter { public GUIDoubleParameter(DoubleParameter parameter) { super(); this.parameter = parameter; name = new Text(parameter.getName()); value = new TextField(String.valueOf(parameter.get())); ((TextField) value).setAlignment(Pos.CENTER_RIGHT); setHgrow(value, Priority.ALWAYS); name.setWrappingWidth(GUI.WRAP_WIDTH); ((TextField) value).setEditable(parameter.isEditable()); getChildren().addAll(name, value); } // @Override // public void doBindings() { // ((TextField) value).textProperty().bind(((DoubleParameter) parameter).valueProperty().asString()); // } // // @Override // public void undoBindings() { // ((TextField) value).textProperty().unbind(); // } @Override public void refreshValue() { if (!((TextField) value).textProperty().isBound()) { ((TextField) value).setText(String.valueOf(((DoubleParameter) parameter).get())); } } }