private void initComponents() { FieldSets.addIdField(this, model); FieldSets.addNameField(this, model); FieldSets.addPeriodFieldSet(this, model); // // adding planned area label and field // add(FieldSets.label(Bundle.cropproductionunit_view_label_planned_area())); TextField plannedAreaField = new TextField(); plannedAreaField.setPrefWidth(FieldSets.PREF_WIDTH); add(plannedAreaField); JFXBinder.bind(CropProductionUnit.PROP_PLANNED_AREA_IN_HECTARES).of(Model.withAt(model, CropProductionUnit.PROP_PLANNED_AREA_IN_HECTARES)).to("text").of(plannedAreaField, NumberConverters.numberToString()); JFXBinder.bind("text").of(plannedAreaField).to(CropProductionUnit.PROP_PLANNED_AREA_IN_HECTARES).of(model, NumberConverters.stringToDouble()); //todo: NonNegativeDoubleConverter? add(FieldSets.label(Bundle.cropproductionunit_view_label_crop_year())); TextField cropYearField = new TextField(); cropYearField.setPrefWidth(FieldSets.PREF_WIDTH); add(cropYearField); JFXBinder.bind(CropProductionUnit.PROP_CROP_YEAR).of(Model.withAt(model,CropProductionUnit.PROP_CROP_YEAR)).to("text").of(cropYearField, NumberConverters.numberToString()); JFXBinder.bind("text").of(cropYearField).to(CropProductionUnit.PROP_CROP_YEAR).of(model, NumberConverters.stringToInteger()); // Customer ComboBox: CustomerSelector.addFieldSet(this, model); // Crop selection ComboBoxes: CropSelector.addFieldSet(this, model); }
averageValueField.setPrefWidth(FieldSets.PREF_WIDTH); add(averageValueField); JFXBinder.bind(ActivityField.PROP_AVERAGE_VALUE).of(model).to("text").of(averageValueField, NumberConverters.numberToString()); JFXBinder.bind("text").of(averageValueField).to(ActivityField.PROP_AVERAGE_VALUE).of(model, NumberConverters.stringToDouble()); defaultValueField.setPrefWidth(FieldSets.PREF_WIDTH); add(defaultValueField); JFXBinder.bind(ActivityField.PROP_DEFAULT_VALUE).of(model).to("text").of(defaultValueField, NumberConverters.numberToString()); JFXBinder.bind("text").of(defaultValueField).to(ActivityField.PROP_DEFAULT_VALUE).of(model, NumberConverters.stringToDouble());
houseNumberField.setPrefWidth(PREF_WIDTH); root.add(houseNumberField); JFXBinder.bind(HasAddress.PROP_HOUSE_NUMBER).of(Model.withAt(model, HasAddress.PROP_HOUSE_NUMBER)).to("text").of(houseNumberField, NumberConverters.numberToString()); JFXBinder.bind("text").of(houseNumberField).to(HasAddress.PROP_HOUSE_NUMBER).of(model, NumberConverters.stringToInteger());