// @formatter:off /* * Unlicensed, generated by javafx.ftl */ package org.controlsfx.control; /** * {@link BreadCrumbBar}建構器。 * * @author JarReflectionDataLoader-1.0.0 * @version controlsfx-8.40.12.jar * @param <Z> 要建構的物件型態(需繼承{@link BreadCrumbBar}) * @param <B> 建構器本身的型態(需繼承{@link BreadCrumbBarMaker}) */ @javax.annotation.Generated("Generated by javafx.ftl") @SuppressWarnings("all") public class BreadCrumbBarMaker<T extends java.lang.Object, Z extends BreadCrumbBar<T>, B extends BreadCrumbBarMaker<T, Z, B>> extends javafx.scene.control.ControlMaker<Z, B> implements BreadCrumbBarMakerExt<T, Z, B> { private boolean hasAutoNavigationEnabled; private boolean valAutoNavigationEnabled; private boolean hasCrumbFactory; private javafx.util.Callback<javafx.scene.control.TreeItem<T>, javafx.scene.control.Button> valCrumbFactory; private boolean hasOnCrumbAction; private javafx.event.EventHandler<org.controlsfx.control.BreadCrumbBar.BreadCrumbActionEvent<T>> valOnCrumbAction; private boolean hasSelectedCrumb; private javafx.scene.control.TreeItem<T> valSelectedCrumb; private boolean bound1AutoNavigationEnabled; private boolean bound2AutoNavigationEnabled; private javafx.beans.value.ObservableValue<? extends Boolean> obsrv1AutoNavigationEnabled; private javafx.beans.property.Property<Boolean> obsrv2AutoNavigationEnabled; private boolean bound1CrumbFactory; private boolean bound2CrumbFactory; private javafx.beans.value.ObservableValue<? extends javafx.util.Callback<javafx.scene.control.TreeItem<T>, javafx.scene.control.Button>> obsrv1CrumbFactory; private javafx.beans.property.Property<javafx.util.Callback<javafx.scene.control.TreeItem<T>, javafx.scene.control.Button>> obsrv2CrumbFactory; private boolean bound1OnCrumbAction; private boolean bound2OnCrumbAction; private javafx.beans.value.ObservableValue<? extends javafx.event.EventHandler<org.controlsfx.control.BreadCrumbBar.BreadCrumbActionEvent<T>>> obsrv1OnCrumbAction; private javafx.beans.property.Property<javafx.event.EventHandler<org.controlsfx.control.BreadCrumbBar.BreadCrumbActionEvent<T>>> obsrv2OnCrumbAction; private boolean bound1SelectedCrumb; private boolean bound2SelectedCrumb; private javafx.beans.value.ObservableValue<? extends javafx.scene.control.TreeItem<T>> obsrv1SelectedCrumb; private javafx.beans.property.Property<javafx.scene.control.TreeItem<T>> obsrv2SelectedCrumb; @Override public void applyTo(Z instance) { super.applyTo(instance); if (this.hasAutoNavigationEnabled) instance.setAutoNavigationEnabled(this.valAutoNavigationEnabled); if (this.hasCrumbFactory) instance.setCrumbFactory(this.valCrumbFactory); if (this.hasOnCrumbAction) instance.setOnCrumbAction(this.valOnCrumbAction); if (this.hasSelectedCrumb) instance.setSelectedCrumb(this.valSelectedCrumb); if (this.bound1AutoNavigationEnabled) instance.autoNavigationEnabledProperty().bind(this.obsrv1AutoNavigationEnabled); if (this.bound2AutoNavigationEnabled) instance.autoNavigationEnabledProperty().bindBidirectional(this.obsrv2AutoNavigationEnabled); if (this.bound1CrumbFactory) instance.crumbFactoryProperty().bind(this.obsrv1CrumbFactory); if (this.bound2CrumbFactory) instance.crumbFactoryProperty().bindBidirectional(this.obsrv2CrumbFactory); if (this.bound1OnCrumbAction) instance.onCrumbActionProperty().bind(this.obsrv1OnCrumbAction); if (this.bound2OnCrumbAction) instance.onCrumbActionProperty().bindBidirectional(this.obsrv2OnCrumbAction); if (this.bound1SelectedCrumb) instance.selectedCrumbProperty().bind(this.obsrv1SelectedCrumb); if (this.bound2SelectedCrumb) instance.selectedCrumbProperty().bindBidirectional(this.obsrv2SelectedCrumb); } /** * 設定屬性{@link BreadCrumbBar#setAutoNavigationEnabled(boolean)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B autoNavigationEnabled(boolean value) { this.hasAutoNavigationEnabled = true; this.valAutoNavigationEnabled = value; return (B) this; } /** * 設定屬性{@link BreadCrumbBar#setCrumbFactory(javafx.util.Callback)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B crumbFactory(javafx.util.Callback<javafx.scene.control.TreeItem<T>, javafx.scene.control.Button> value) { this.hasCrumbFactory = true; this.valCrumbFactory = value; return (B) this; } /** * 設定屬性{@link BreadCrumbBar#setOnCrumbAction(javafx.event.EventHandler)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B onCrumbAction(javafx.event.EventHandler<org.controlsfx.control.BreadCrumbBar.BreadCrumbActionEvent<T>> value) { this.hasOnCrumbAction = true; this.valOnCrumbAction = value; return (B) this; } /** * 設定屬性{@link BreadCrumbBar#setSelectedCrumb(javafx.scene.control.TreeItem)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B selectedCrumb(javafx.scene.control.TreeItem<T> value) { this.hasSelectedCrumb = true; this.valSelectedCrumb = value; return (B) this; } /** * 設定屬性{@link BreadCrumbBar#autoNavigationEnabledProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindAutoNavigationEnabled(javafx.beans.value.ObservableValue<? extends Boolean> source) { java.util.Objects.requireNonNull(source); this.bound1AutoNavigationEnabled = true; this.obsrv1AutoNavigationEnabled = source; this.bound2AutoNavigationEnabled = false; this.obsrv2AutoNavigationEnabled = null; return (B) this; } /** * 設定屬性{@link BreadCrumbBar#autoNavigationEnabledProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalAutoNavigationEnabled(javafx.beans.property.Property<Boolean> source) { java.util.Objects.requireNonNull(source); this.bound1AutoNavigationEnabled = false; this.obsrv1AutoNavigationEnabled = null; this.bound2AutoNavigationEnabled = true; this.obsrv2AutoNavigationEnabled = source; return (B) this; } /** * 設定屬性{@link BreadCrumbBar#crumbFactoryProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindCrumbFactory(javafx.beans.value.ObservableValue<? extends javafx.util.Callback<javafx.scene.control.TreeItem<T>, javafx.scene.control.Button>> source) { java.util.Objects.requireNonNull(source); this.bound1CrumbFactory = true; this.obsrv1CrumbFactory = source; this.bound2CrumbFactory = false; this.obsrv2CrumbFactory = null; return (B) this; } /** * 設定屬性{@link BreadCrumbBar#crumbFactoryProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalCrumbFactory(javafx.beans.property.Property<javafx.util.Callback<javafx.scene.control.TreeItem<T>, javafx.scene.control.Button>> source) { java.util.Objects.requireNonNull(source); this.bound1CrumbFactory = false; this.obsrv1CrumbFactory = null; this.bound2CrumbFactory = true; this.obsrv2CrumbFactory = source; return (B) this; } /** * 設定屬性{@link BreadCrumbBar#onCrumbActionProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindOnCrumbAction(javafx.beans.value.ObservableValue<? extends javafx.event.EventHandler<org.controlsfx.control.BreadCrumbBar.BreadCrumbActionEvent<T>>> source) { java.util.Objects.requireNonNull(source); this.bound1OnCrumbAction = true; this.obsrv1OnCrumbAction = source; this.bound2OnCrumbAction = false; this.obsrv2OnCrumbAction = null; return (B) this; } /** * 設定屬性{@link BreadCrumbBar#onCrumbActionProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalOnCrumbAction(javafx.beans.property.Property<javafx.event.EventHandler<org.controlsfx.control.BreadCrumbBar.BreadCrumbActionEvent<T>>> source) { java.util.Objects.requireNonNull(source); this.bound1OnCrumbAction = false; this.obsrv1OnCrumbAction = null; this.bound2OnCrumbAction = true; this.obsrv2OnCrumbAction = source; return (B) this; } /** * 設定屬性{@link BreadCrumbBar#selectedCrumbProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindSelectedCrumb(javafx.beans.value.ObservableValue<? extends javafx.scene.control.TreeItem<T>> source) { java.util.Objects.requireNonNull(source); this.bound1SelectedCrumb = true; this.obsrv1SelectedCrumb = source; this.bound2SelectedCrumb = false; this.obsrv2SelectedCrumb = null; return (B) this; } /** * 設定屬性{@link BreadCrumbBar#selectedCrumbProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalSelectedCrumb(javafx.beans.property.Property<javafx.scene.control.TreeItem<T>> source) { java.util.Objects.requireNonNull(source); this.bound1SelectedCrumb = false; this.obsrv1SelectedCrumb = null; this.bound2SelectedCrumb = true; this.obsrv2SelectedCrumb = source; return (B) this; } /** * 建構{@link BreadCrumbBar}物件。 * * @return 新的{@link BreadCrumbBar}物件實體 */ @Override @SuppressWarnings("unchecked") public BreadCrumbBar<T> build() { BreadCrumbBar<T> instance = new BreadCrumbBar<T>(); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } /** * 建構{@link BreadCrumbBar}物件。 * * @return 新的{@link BreadCrumbBar}物件實體 */ @SuppressWarnings("unchecked") public BreadCrumbBar<T> build(javafx.scene.control.TreeItem<T> arg0) { BreadCrumbBar<T> instance = new BreadCrumbBar<T>(arg0); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } }