// @formatter:off /* * Unlicensed, generated by javafx.ftl */ package javafx.scene.effect; /** * {@link Lighting}建構器。 * * @author JarReflectionDataLoader-1.0.0 * @version jfxrt.jar * @param <Z> 要建構的物件型態(需繼承{@link Lighting}) * @param <B> 建構器本身的型態(需繼承{@link LightingMaker}) */ @javax.annotation.Generated("Generated by javafx.ftl") @SuppressWarnings("all") public class LightingMaker<Z extends Lighting, B extends LightingMaker<Z, B>> extends javafx.scene.effect.EffectMaker<Z, B> implements LightingMakerExt<Z, B> { private boolean hasBumpInput; private javafx.scene.effect.Effect valBumpInput; private boolean hasContentInput; private javafx.scene.effect.Effect valContentInput; private boolean hasDiffuseConstant; private double valDiffuseConstant; private boolean hasLight; private javafx.scene.effect.Light valLight; private boolean hasSpecularConstant; private double valSpecularConstant; private boolean hasSpecularExponent; private double valSpecularExponent; private boolean hasSurfaceScale; private double valSurfaceScale; private boolean bound1BumpInput; private boolean bound2BumpInput; private javafx.beans.value.ObservableValue<? extends javafx.scene.effect.Effect> obsrv1BumpInput; private javafx.beans.property.Property<javafx.scene.effect.Effect> obsrv2BumpInput; private boolean bound1ContentInput; private boolean bound2ContentInput; private javafx.beans.value.ObservableValue<? extends javafx.scene.effect.Effect> obsrv1ContentInput; private javafx.beans.property.Property<javafx.scene.effect.Effect> obsrv2ContentInput; private boolean bound1DiffuseConstant; private boolean bound2DiffuseConstant; private javafx.beans.value.ObservableValue<? extends Number> obsrv1DiffuseConstant; private javafx.beans.property.Property<Number> obsrv2DiffuseConstant; private boolean bound1Light; private boolean bound2Light; private javafx.beans.value.ObservableValue<? extends javafx.scene.effect.Light> obsrv1Light; private javafx.beans.property.Property<javafx.scene.effect.Light> obsrv2Light; private boolean bound1SpecularConstant; private boolean bound2SpecularConstant; private javafx.beans.value.ObservableValue<? extends Number> obsrv1SpecularConstant; private javafx.beans.property.Property<Number> obsrv2SpecularConstant; private boolean bound1SpecularExponent; private boolean bound2SpecularExponent; private javafx.beans.value.ObservableValue<? extends Number> obsrv1SpecularExponent; private javafx.beans.property.Property<Number> obsrv2SpecularExponent; private boolean bound1SurfaceScale; private boolean bound2SurfaceScale; private javafx.beans.value.ObservableValue<? extends Number> obsrv1SurfaceScale; private javafx.beans.property.Property<Number> obsrv2SurfaceScale; @Override public void applyTo(Z instance) { super.applyTo(instance); if (this.hasBumpInput) instance.setBumpInput(this.valBumpInput); if (this.hasContentInput) instance.setContentInput(this.valContentInput); if (this.hasDiffuseConstant) instance.setDiffuseConstant(this.valDiffuseConstant); if (this.hasLight) instance.setLight(this.valLight); if (this.hasSpecularConstant) instance.setSpecularConstant(this.valSpecularConstant); if (this.hasSpecularExponent) instance.setSpecularExponent(this.valSpecularExponent); if (this.hasSurfaceScale) instance.setSurfaceScale(this.valSurfaceScale); if (this.bound1BumpInput) instance.bumpInputProperty().bind(this.obsrv1BumpInput); if (this.bound2BumpInput) instance.bumpInputProperty().bindBidirectional(this.obsrv2BumpInput); if (this.bound1ContentInput) instance.contentInputProperty().bind(this.obsrv1ContentInput); if (this.bound2ContentInput) instance.contentInputProperty().bindBidirectional(this.obsrv2ContentInput); if (this.bound1DiffuseConstant) instance.diffuseConstantProperty().bind(this.obsrv1DiffuseConstant); if (this.bound2DiffuseConstant) instance.diffuseConstantProperty().bindBidirectional(this.obsrv2DiffuseConstant); if (this.bound1Light) instance.lightProperty().bind(this.obsrv1Light); if (this.bound2Light) instance.lightProperty().bindBidirectional(this.obsrv2Light); if (this.bound1SpecularConstant) instance.specularConstantProperty().bind(this.obsrv1SpecularConstant); if (this.bound2SpecularConstant) instance.specularConstantProperty().bindBidirectional(this.obsrv2SpecularConstant); if (this.bound1SpecularExponent) instance.specularExponentProperty().bind(this.obsrv1SpecularExponent); if (this.bound2SpecularExponent) instance.specularExponentProperty().bindBidirectional(this.obsrv2SpecularExponent); if (this.bound1SurfaceScale) instance.surfaceScaleProperty().bind(this.obsrv1SurfaceScale); if (this.bound2SurfaceScale) instance.surfaceScaleProperty().bindBidirectional(this.obsrv2SurfaceScale); } /** * 設定屬性{@link Lighting#setBumpInput(javafx.scene.effect.Effect)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B bumpInput(javafx.scene.effect.Effect value) { this.hasBumpInput = true; this.valBumpInput = value; return (B) this; } /** * 設定屬性{@link Lighting#setContentInput(javafx.scene.effect.Effect)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B contentInput(javafx.scene.effect.Effect value) { this.hasContentInput = true; this.valContentInput = value; return (B) this; } /** * 設定屬性{@link Lighting#setDiffuseConstant(double)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B diffuseConstant(double value) { this.hasDiffuseConstant = true; this.valDiffuseConstant = value; return (B) this; } /** * 設定屬性{@link Lighting#setLight(javafx.scene.effect.Light)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B light(javafx.scene.effect.Light value) { this.hasLight = true; this.valLight = value; return (B) this; } /** * 設定屬性{@link Lighting#setSpecularConstant(double)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B specularConstant(double value) { this.hasSpecularConstant = true; this.valSpecularConstant = value; return (B) this; } /** * 設定屬性{@link Lighting#setSpecularExponent(double)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B specularExponent(double value) { this.hasSpecularExponent = true; this.valSpecularExponent = value; return (B) this; } /** * 設定屬性{@link Lighting#setSurfaceScale(double)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B surfaceScale(double value) { this.hasSurfaceScale = true; this.valSurfaceScale = value; return (B) this; } /** * 設定屬性{@link Lighting#bumpInputProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBumpInput(javafx.beans.value.ObservableValue<? extends javafx.scene.effect.Effect> source) { java.util.Objects.requireNonNull(source); this.bound1BumpInput = true; this.obsrv1BumpInput = source; this.bound2BumpInput = false; this.obsrv2BumpInput = null; return (B) this; } /** * 設定屬性{@link Lighting#bumpInputProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalBumpInput(javafx.beans.property.Property<javafx.scene.effect.Effect> source) { java.util.Objects.requireNonNull(source); this.bound1BumpInput = false; this.obsrv1BumpInput = null; this.bound2BumpInput = true; this.obsrv2BumpInput = source; return (B) this; } /** * 設定屬性{@link Lighting#contentInputProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindContentInput(javafx.beans.value.ObservableValue<? extends javafx.scene.effect.Effect> source) { java.util.Objects.requireNonNull(source); this.bound1ContentInput = true; this.obsrv1ContentInput = source; this.bound2ContentInput = false; this.obsrv2ContentInput = null; return (B) this; } /** * 設定屬性{@link Lighting#contentInputProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalContentInput(javafx.beans.property.Property<javafx.scene.effect.Effect> source) { java.util.Objects.requireNonNull(source); this.bound1ContentInput = false; this.obsrv1ContentInput = null; this.bound2ContentInput = true; this.obsrv2ContentInput = source; return (B) this; } /** * 設定屬性{@link Lighting#diffuseConstantProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindDiffuseConstant(javafx.beans.value.ObservableValue<? extends Number> source) { java.util.Objects.requireNonNull(source); this.bound1DiffuseConstant = true; this.obsrv1DiffuseConstant = source; this.bound2DiffuseConstant = false; this.obsrv2DiffuseConstant = null; return (B) this; } /** * 設定屬性{@link Lighting#diffuseConstantProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalDiffuseConstant(javafx.beans.property.Property<Number> source) { java.util.Objects.requireNonNull(source); this.bound1DiffuseConstant = false; this.obsrv1DiffuseConstant = null; this.bound2DiffuseConstant = true; this.obsrv2DiffuseConstant = source; return (B) this; } /** * 設定屬性{@link Lighting#lightProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindLight(javafx.beans.value.ObservableValue<? extends javafx.scene.effect.Light> source) { java.util.Objects.requireNonNull(source); this.bound1Light = true; this.obsrv1Light = source; this.bound2Light = false; this.obsrv2Light = null; return (B) this; } /** * 設定屬性{@link Lighting#lightProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalLight(javafx.beans.property.Property<javafx.scene.effect.Light> source) { java.util.Objects.requireNonNull(source); this.bound1Light = false; this.obsrv1Light = null; this.bound2Light = true; this.obsrv2Light = source; return (B) this; } /** * 設定屬性{@link Lighting#specularConstantProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindSpecularConstant(javafx.beans.value.ObservableValue<? extends Number> source) { java.util.Objects.requireNonNull(source); this.bound1SpecularConstant = true; this.obsrv1SpecularConstant = source; this.bound2SpecularConstant = false; this.obsrv2SpecularConstant = null; return (B) this; } /** * 設定屬性{@link Lighting#specularConstantProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalSpecularConstant(javafx.beans.property.Property<Number> source) { java.util.Objects.requireNonNull(source); this.bound1SpecularConstant = false; this.obsrv1SpecularConstant = null; this.bound2SpecularConstant = true; this.obsrv2SpecularConstant = source; return (B) this; } /** * 設定屬性{@link Lighting#specularExponentProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindSpecularExponent(javafx.beans.value.ObservableValue<? extends Number> source) { java.util.Objects.requireNonNull(source); this.bound1SpecularExponent = true; this.obsrv1SpecularExponent = source; this.bound2SpecularExponent = false; this.obsrv2SpecularExponent = null; return (B) this; } /** * 設定屬性{@link Lighting#specularExponentProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalSpecularExponent(javafx.beans.property.Property<Number> source) { java.util.Objects.requireNonNull(source); this.bound1SpecularExponent = false; this.obsrv1SpecularExponent = null; this.bound2SpecularExponent = true; this.obsrv2SpecularExponent = source; return (B) this; } /** * 設定屬性{@link Lighting#surfaceScaleProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindSurfaceScale(javafx.beans.value.ObservableValue<? extends Number> source) { java.util.Objects.requireNonNull(source); this.bound1SurfaceScale = true; this.obsrv1SurfaceScale = source; this.bound2SurfaceScale = false; this.obsrv2SurfaceScale = null; return (B) this; } /** * 設定屬性{@link Lighting#surfaceScaleProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalSurfaceScale(javafx.beans.property.Property<Number> source) { java.util.Objects.requireNonNull(source); this.bound1SurfaceScale = false; this.obsrv1SurfaceScale = null; this.bound2SurfaceScale = true; this.obsrv2SurfaceScale = source; return (B) this; } /** * 建構{@link Lighting}物件。 * * @return 新的{@link Lighting}物件實體 */ @Override @SuppressWarnings("unchecked") public Lighting build() { Lighting instance = new Lighting(); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } /** * 建構{@link Lighting}物件。 * * @return 新的{@link Lighting}物件實體 */ @SuppressWarnings("unchecked") public Lighting build(javafx.scene.effect.Light arg0) { Lighting instance = new Lighting(arg0); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } }