binding = Bindings.createStringBinding(() -> { if( outputValue.isEmpty().get() || outputValue.get().equals(IDENTITY_MAPPER) ){ return null;
protected StringBinding defaultConnectionUrlProperty(T document, DbmsHandlerComponent dbmsHandlerComponent) { return Bindings.createStringBinding(() -> DatabaseUtil.findDbmsType(dbmsHandlerComponent, document).getConnectionUrlGenerator().from(document), document.typeNameProperty(), document.ipAddressProperty(), document.portProperty(), document.usernameProperty() ); } }
Bindings.createStringBinding(() -> String.format( "Speedment settings for %s '%s' %s", withName instanceof Table
private void refreshSliderValueBinding() { sliderValue.textProperty().unbind(); if (((JFXSlider) getSkinnable()).getValueFactory() != null) { sliderValue.textProperty() .bind(((JFXSlider) getSkinnable()).getValueFactory().call((JFXSlider) getSkinnable())); } else { sliderValue.textProperty().bind(Bindings.createStringBinding(() -> { if (getSkinnable().getLabelFormatter() != null) { return getSkinnable().getLabelFormatter().toString(getSkinnable().getValue()); } else { return String.valueOf(Math.round(getSkinnable().getValue())); } }, getSkinnable().valueProperty())); } }
.bind(Bindings.createStringBinding(() -> String.valueOf(treeView.getCurrentItemsCount()), treeView.currentItemsCountProperty())); main.getChildren().add(size);
private void setupReadOnlyTableView() { setupCellValueFactory(firstNameColumn, Person::firstNameProperty); setupCellValueFactory(lastNameColumn, Person::lastNameProperty); setupCellValueFactory(ageColumn, p -> p.age.asObject()); ObservableList<Person> dummyData = generateDummyData(100); treeTableView.setRoot(new RecursiveTreeItem<>(dummyData, RecursiveTreeObject::getChildren)); treeTableView.setShowRoot(false); treeTableViewCount.textProperty() .bind(Bindings.createStringBinding(() -> PREFIX + treeTableView.getCurrentItemsCount() + POSTFIX, treeTableView.currentItemsCountProperty())); treeTableViewAdd.disableProperty() .bind(Bindings.notEqual(-1, treeTableView.getSelectionModel().selectedIndexProperty())); treeTableViewRemove.disableProperty() .bind(Bindings.equal(-1, treeTableView.getSelectionModel().selectedIndexProperty())); treeTableViewAdd.setOnMouseClicked((e) -> { dummyData.add(createNewRandomPerson()); final IntegerProperty currCountProp = treeTableView.currentItemsCountProperty(); currCountProp.set(currCountProp.get() + 1); }); treeTableViewRemove.setOnMouseClicked((e) -> { dummyData.remove(treeTableView.getSelectionModel().selectedItemProperty().get().getValue()); final IntegerProperty currCountProp = treeTableView.currentItemsCountProperty(); currCountProp.set(currCountProp.get() - 1); }); searchField.textProperty().addListener(setupSearchField(treeTableView)); }
editableTreeTableView.setEditable(true); editableTreeTableViewCount.textProperty() .bind(Bindings.createStringBinding(() -> PREFIX + editableTreeTableView.getCurrentItemsCount() + POSTFIX, editableTreeTableView.currentItemsCountProperty())); searchField2.textProperty()
@Nonnull public static StringBinding toBinding(@Nonnull StringProperty stringProperty) { return Bindings.createStringBinding(stringProperty::get, stringProperty); }
/** * Converts a literal object observable value into a string binding. * * @param observable the observable to be converted. * * @return a string binding. */ @Nonnull public static StringBinding mapToString(@Nonnull final ObservableObjectValue<String> observable) { requireNonNull(observable, ERROR_OBSERVABLE_NULL); return createStringBinding(observable::get, observable); }
@Nonnull public static StringBinding bindFormattedNumber(@Nonnull ObservableValue<Number> property, @Nonnull NumberFormat numberFormat) { return Bindings.createStringBinding(() -> numberFormat.format(property.getValue()), property); }
/** * Creates a string binding with the first element of an observable list after filtering. * * @param items the observable list of items. * @param defaultValue the value to be returned if there is no value present. * @param filter a non-interfering, stateless predicate to apply to the each element. * * @return a string binding */ @Nonnull public static StringBinding filterThenFindFirstString(@Nonnull final ObservableList<String> items, @Nonnull final String defaultValue, @Nonnull final Predicate<? super String> filter) { requireNonNull(items, ERROR_ITEMS_NULL); requireNonNull(filter, ERROR_FILTER_NULL); return createStringBinding(() -> items.stream().filter(filter).findFirst().orElse(defaultValue), items); }
/** * Creates a string binding with the first element of an observable set after filtering. * * @param items the observable set of items. * @param defaultValue the value to be returned if there is no value present. * @param filter a non-interfering, stateless predicate to apply to the each element. * * @return a string binding */ @Nonnull public static StringBinding filterThenFindFirstString(@Nonnull final ObservableSet<String> items, @Nonnull final String defaultValue, @Nonnull final Predicate<? super String> filter) { requireNonNull(items, ERROR_ITEMS_NULL); requireNonNull(filter, ERROR_FILTER_NULL); return createStringBinding(() -> items.stream().filter(filter).findFirst().orElse(defaultValue), items); }
/** * Creates a string binding that constructs a sequence of characters separated by a delimiter. * * @param items the observable map of items. * @param delimiter the sequence of characters to be used between each element. * @param mapper a non-interfering, stateless function to apply to the each entry. * * @return a string binding. */ @Nonnull public static <K, V> StringBinding joinMap(@Nonnull final ObservableMap<K, V> items, @Nullable final String delimiter, @Nonnull final Function<Map.Entry<K, V>, String> mapper) { requireNonNull(items, ERROR_ITEMS_NULL); requireNonNull(mapper, ERROR_MAPPER_NULL); final String value = delimiter == null ? "," : delimiter; return createStringBinding(() -> items.entrySet().stream().map(mapper).collect(joining(value)), items); }
/** * Returns a string binding whose value is the reduction of all elements in the set. The mapper function is applied to each element before reduction. * * @param items the observable set of elements. * @param defaultValue the value to be returned if there is no value present, may be null. * @param mapper a non-interfering, stateless function to apply to each element. * @param reducer an associative, non-interfering, stateless function for combining two values. * * @return a string binding */ @Nonnull public static <T> StringBinding mapToStringThenReduce(@Nonnull final ObservableSet<T> items, @Nullable final String defaultValue, @Nonnull final Function<? super T, String> mapper, @Nonnull final BinaryOperator<String> reducer) { requireNonNull(items, ERROR_ITEMS_NULL); requireNonNull(reducer, ERROR_REDUCER_NULL); return createStringBinding(() -> items.stream().map(mapper).reduce(reducer).orElse(defaultValue), items); }
@Nonnull public static StringBinding asFormattedHex(@Nonnull ReadOnlyProperty<Number> longProperty) { return Bindings.createStringBinding(() -> { long longValue = longProperty.getValue().longValue(); if (longValue == 0) { return ""; } return toHex(longValue); }, longProperty); }
/** * Calls toString for the value returned by the binding */ @Nonnull public static Label labelToString(@Nonnull ObservableValue<?> binding) { Label label = new Label(); label.textProperty().bind(Bindings.createStringBinding(() -> String.valueOf(binding.getValue()), binding)); return label; }
@Nonnull public static <E extends Enum<E>> TextField textFieldEnumReadOnly(@Nonnull ObjectProperty<E> enumProperty) { TextField textField = new TextField(); textField.setEditable(false); textField.textProperty().bind(Bindings.createStringBinding(() -> EnumTranslatorUtil.getEnumTranslator().translate(enumProperty.get()), enumProperty)); return textField; }
protected StringBinding defaultConnectionUrlProperty(DbmsHandlerComponent dbmsHandlerComponent) { return Bindings.createStringBinding(() -> DatabaseUtil.findDbmsType(dbmsHandlerComponent, this).getConnectionUrlGenerator().from(this), typeNameProperty(), ipAddressProperty(), portProperty(), usernameProperty() ); }
protected StringBinding defaultConnectionUrlProperty(T document, DbmsHandlerComponent dbmsHandlerComponent) { return Bindings.createStringBinding(() -> DatabaseUtil.findDbmsType(dbmsHandlerComponent, document).getConnectionUrlGenerator().from(document), document.typeNameProperty(), document.ipAddressProperty(), document.portProperty(), document.usernameProperty() ); } }
/** * {@inheritDoc} */ @Override public void setupBindings() { super.setupBindings(); editableField.visibleProperty().bind(field.editableProperty()); readOnlyLabel.visibleProperty().bind(field.editableProperty().not()); editableField.textProperty().bindBidirectional(field.userInputProperty()); obfuscatedUserInputBinding = Bindings.createStringBinding(() -> obfuscate(field.getUserInput()), field.userInputProperty()); readOnlyLabel.textProperty().bind(obfuscatedUserInputBinding); fieldLabel.textProperty().bind(field.labelProperty()); editableField.promptTextProperty().bind(field.placeholderProperty()); editableField.managedProperty().bind(editableField.visibleProperty()); }