// @formatter:off /* * Unlicensed, generated by javafx.ftl */ package javafx.scene.control; /** * {@link SpinnerValueFactory.ListSpinnerValueFactory}建構器。 * * @author JarReflectionDataLoader-1.0.0 * @version jfxrt.jar * @param <Z> 要建構的物件型態(需繼承{@link SpinnerValueFactory.ListSpinnerValueFactory}) * @param <B> 建構器本身的型態(需繼承{@link SpinnerValueFactory.ListSpinnerValueFactoryMaker}) */ @javax.annotation.Generated("Generated by javafx.ftl") @SuppressWarnings("all") public class SpinnerValueFactory_ListSpinnerValueFactoryMaker<T extends java.lang.Object, Z extends SpinnerValueFactory.ListSpinnerValueFactory<T>, B extends SpinnerValueFactory_ListSpinnerValueFactoryMaker<T, Z, B>> extends javafx.scene.control.SpinnerValueFactoryMaker<T, Z, B> implements SpinnerValueFactory_ListSpinnerValueFactoryMakerExt<T, Z, B> { private boolean hasItems; private javafx.collections.ObservableList<T> valItems; private boolean bound1Items; private boolean bound2Items; private javafx.beans.value.ObservableValue<? extends javafx.collections.ObservableList<T>> obsrv1Items; private javafx.beans.property.Property<javafx.collections.ObservableList<T>> obsrv2Items; @Override public void applyTo(Z instance) { super.applyTo(instance); if (this.hasItems) instance.setItems(this.valItems); if (this.bound1Items) instance.itemsProperty().bind(this.obsrv1Items); if (this.bound2Items) instance.itemsProperty().bindBidirectional(this.obsrv2Items); } /** * 設定屬性{@link SpinnerValueFactory.ListSpinnerValueFactory#setItems(javafx.collections.ObservableList)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B items(javafx.collections.ObservableList<T> value) { this.hasItems = true; this.valItems = value; return (B) this; } /** * 設定屬性{@link SpinnerValueFactory.ListSpinnerValueFactory#itemsProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindItems(javafx.beans.value.ObservableValue<? extends javafx.collections.ObservableList<T>> source) { java.util.Objects.requireNonNull(source); this.bound1Items = true; this.obsrv1Items = source; this.bound2Items = false; this.obsrv2Items = null; return (B) this; } /** * 設定屬性{@link SpinnerValueFactory.ListSpinnerValueFactory#itemsProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalItems(javafx.beans.property.Property<javafx.collections.ObservableList<T>> source) { java.util.Objects.requireNonNull(source); this.bound1Items = false; this.obsrv1Items = null; this.bound2Items = true; this.obsrv2Items = source; return (B) this; } /** * 建構{@link SpinnerValueFactory.ListSpinnerValueFactory}物件。 * * @return 新的{@link SpinnerValueFactory.ListSpinnerValueFactory}物件實體 */ @SuppressWarnings("unchecked") public SpinnerValueFactory.ListSpinnerValueFactory<T> build(javafx.collections.ObservableList<T> arg0) { SpinnerValueFactory.ListSpinnerValueFactory<T> instance = new SpinnerValueFactory.ListSpinnerValueFactory<T>(arg0); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } }