// @formatter:off /* * Unlicensed, generated by javafx.ftl */ package org.controlsfx.control; /** * {@link CheckTreeView}建構器。 * * @author JarReflectionDataLoader-1.0.0 * @version controlsfx-8.40.12.jar * @param <Z> 要建構的物件型態(需繼承{@link CheckTreeView}) * @param <B> 建構器本身的型態(需繼承{@link CheckTreeViewMaker}) */ @javax.annotation.Generated("Generated by javafx.ftl") @SuppressWarnings("all") public class CheckTreeViewMaker<T extends java.lang.Object, Z extends CheckTreeView<T>, B extends CheckTreeViewMaker<T, Z, B>> extends javafx.scene.control.TreeViewMaker<T, Z, B> implements CheckTreeViewMakerExt<T, Z, B> { private boolean hasCheckModel; private org.controlsfx.control.CheckModel<javafx.scene.control.TreeItem<T>> valCheckModel; private boolean bound1CheckModel; private boolean bound2CheckModel; private javafx.beans.value.ObservableValue<? extends org.controlsfx.control.CheckModel<javafx.scene.control.TreeItem<T>>> obsrv1CheckModel; private javafx.beans.property.Property<org.controlsfx.control.CheckModel<javafx.scene.control.TreeItem<T>>> obsrv2CheckModel; @Override public void applyTo(Z instance) { super.applyTo(instance); if (this.hasCheckModel) instance.setCheckModel(this.valCheckModel); if (this.bound1CheckModel) instance.checkModelProperty().bind(this.obsrv1CheckModel); if (this.bound2CheckModel) instance.checkModelProperty().bindBidirectional(this.obsrv2CheckModel); } /** * 設定屬性{@link CheckTreeView#setCheckModel(org.controlsfx.control.CheckModel)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B checkModel(org.controlsfx.control.CheckModel<javafx.scene.control.TreeItem<T>> value) { this.hasCheckModel = true; this.valCheckModel = value; return (B) this; } /** * 設定屬性{@link CheckTreeView#checkModelProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindCheckModel(javafx.beans.value.ObservableValue<? extends org.controlsfx.control.CheckModel<javafx.scene.control.TreeItem<T>>> source) { java.util.Objects.requireNonNull(source); this.bound1CheckModel = true; this.obsrv1CheckModel = source; this.bound2CheckModel = false; this.obsrv2CheckModel = null; return (B) this; } /** * 設定屬性{@link CheckTreeView#checkModelProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalCheckModel(javafx.beans.property.Property<org.controlsfx.control.CheckModel<javafx.scene.control.TreeItem<T>>> source) { java.util.Objects.requireNonNull(source); this.bound1CheckModel = false; this.obsrv1CheckModel = null; this.bound2CheckModel = true; this.obsrv2CheckModel = source; return (B) this; } /** * 建構{@link CheckTreeView}物件。 * * @return 新的{@link CheckTreeView}物件實體 */ @Override @SuppressWarnings("unchecked") public CheckTreeView<T> build() { CheckTreeView<T> instance = new CheckTreeView<T>(); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } /** * 建構{@link CheckTreeView}物件。 * * @return 新的{@link CheckTreeView}物件實體 */ @SuppressWarnings("unchecked") public CheckTreeView<T> build(javafx.scene.control.CheckBoxTreeItem<T> arg0) { CheckTreeView<T> instance = new CheckTreeView<T>(arg0); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } }