// @formatter:off /* * Unlicensed, generated by javafx.ftl */ package org.controlsfx.control; /** * {@link TaskProgressView}建構器。 * * @author JarReflectionDataLoader-1.0.0 * @version controlsfx-8.40.12.jar * @param <Z> 要建構的物件型態(需繼承{@link TaskProgressView}) * @param <B> 建構器本身的型態(需繼承{@link TaskProgressViewMaker}) */ @javax.annotation.Generated("Generated by javafx.ftl") @SuppressWarnings("all") public class TaskProgressViewMaker<T extends javafx.concurrent.Task<?>, Z extends TaskProgressView<T>, B extends TaskProgressViewMaker<T, Z, B>> extends javafx.scene.control.ControlMaker<Z, B> implements TaskProgressViewMakerExt<T, Z, B> { private boolean hasGraphicFactory; private javafx.util.Callback<T, javafx.scene.Node> valGraphicFactory; private boolean hasTasks; private java.util.Collection<T> valTasks; private boolean bound1GraphicFactory; private boolean bound2GraphicFactory; private javafx.beans.value.ObservableValue<? extends javafx.util.Callback<T, javafx.scene.Node>> obsrv1GraphicFactory; private javafx.beans.property.Property<javafx.util.Callback<T, javafx.scene.Node>> obsrv2GraphicFactory; @Override public void applyTo(Z instance) { super.applyTo(instance); if (this.hasGraphicFactory) instance.setGraphicFactory(this.valGraphicFactory); if (this.hasTasks) instance.getTasks().addAll(this.valTasks); if (this.bound1GraphicFactory) instance.graphicFactoryProperty().bind(this.obsrv1GraphicFactory); if (this.bound2GraphicFactory) instance.graphicFactoryProperty().bindBidirectional(this.obsrv2GraphicFactory); } /** * 設定屬性{@link TaskProgressView#setGraphicFactory(javafx.util.Callback)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B graphicFactory(javafx.util.Callback<T, javafx.scene.Node> value) { this.hasGraphicFactory = true; this.valGraphicFactory = value; return (B) this; } /** * 設定集合屬性{@link TaskProgressView#getTasks}的內容。 * * @param value 新的集合內容 * @return 目前的建構器(this) * @deprecated 屬性值並非{@link javafx.collections.ObservableList} */ @Deprecated @SuppressWarnings("unchecked") public final B tasks(java.util.Collection<? extends T> value) { this.hasTasks = true; this.valTasks = (java.util.Collection<T>) value; return (B) this; } /** * 設定集合屬性{@link TaskProgressView#getTasks}的內容。 * * @param value 新的集合內容 * @return 目前的建構器(this) */ @SafeVarargs @SuppressWarnings("unchecked") public final B tasks(T... value) { this.hasTasks = true; this.valTasks = java.util.Arrays.asList(value); return (B) this; } /** * 增加集合屬性{@link TaskProgressView#getTasks}的內容。 * * @param value 新的集合內容 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B tasksAdd(java.util.Collection<? extends T> value) { java.util.Objects.requireNonNull(value); this.hasTasks = true; if (this.valTasks == null) this.valTasks = new java.util.ArrayList<>(value.size()); this.valTasks.addAll(value); return (B) this; } /** * 增加集合屬性{@link TaskProgressView#getTasks}的內容。 * * @param value 新的集合內容 * @return 目前的建構器(this) */ @SafeVarargs @SuppressWarnings("unchecked") public final B tasksAdd(T... value) { java.util.Objects.requireNonNull(value); this.hasTasks = true; if (this.valTasks == null) this.valTasks = new java.util.ArrayList<>(value.length); this.valTasks.addAll(java.util.Arrays.asList(value)); return (B) this; } /** * 增加集合屬性{@link TaskProgressView#getTasks}的內容,排除null項目。 * * @param value 新的集合內容 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B tasksAddNonNull(java.util.Collection<? extends T> value) { java.util.Objects.requireNonNull(value); this.hasTasks = true; if (this.valTasks == null) this.valTasks = new java.util.ArrayList<>(value.size()); for (T i : value) if (i != null) this.valTasks.add(i); return (B) this; } /** * 增加集合屬性{@link TaskProgressView#getTasks}的內容,排除null項目。 * * @param value 新的集合內容 * @return 目前的建構器(this) */ @SafeVarargs @SuppressWarnings("unchecked") public final B tasksAddNonNull(T... value) { java.util.Objects.requireNonNull(value); this.hasTasks = true; if (this.valTasks == null) this.valTasks = new java.util.ArrayList<>(value.length); for (T i : value) if (i != null) this.valTasks.add(i); return (B) this; } /** * 設定屬性{@link TaskProgressView#graphicFactoryProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindGraphicFactory(javafx.beans.value.ObservableValue<? extends javafx.util.Callback<T, javafx.scene.Node>> source) { java.util.Objects.requireNonNull(source); this.bound1GraphicFactory = true; this.obsrv1GraphicFactory = source; this.bound2GraphicFactory = false; this.obsrv2GraphicFactory = null; return (B) this; } /** * 設定屬性{@link TaskProgressView#graphicFactoryProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalGraphicFactory(javafx.beans.property.Property<javafx.util.Callback<T, javafx.scene.Node>> source) { java.util.Objects.requireNonNull(source); this.bound1GraphicFactory = false; this.obsrv1GraphicFactory = null; this.bound2GraphicFactory = true; this.obsrv2GraphicFactory = source; return (B) this; } /** * 建構{@link TaskProgressView}物件。 * * @return 新的{@link TaskProgressView}物件實體 */ @Override @SuppressWarnings("unchecked") public TaskProgressView<T> build() { TaskProgressView<T> instance = new TaskProgressView<T>(); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } }