// @formatter:off /* * Unlicensed, generated by javafx.ftl */ package javafx.scene.text; /** * {@link Text}建構器。 * * @author JarReflectionDataLoader-1.0.0 * @version jfxrt.jar * @param <Z> 要建構的物件型態(需繼承{@link Text}) * @param <B> 建構器本身的型態(需繼承{@link TextMaker}) */ @javax.annotation.Generated("Generated by javafx.ftl") @SuppressWarnings("all") public class TextMaker<Z extends Text, B extends TextMaker<Z, B>> extends javafx.scene.shape.ShapeMaker<Z, B> implements TextMakerExt<Z, B> { private boolean hasBoundsType; private javafx.scene.text.TextBoundsType valBoundsType; private boolean hasFont; private javafx.scene.text.Font valFont; private boolean hasFontSmoothingType; private javafx.scene.text.FontSmoothingType valFontSmoothingType; private boolean hasLineSpacing; private double valLineSpacing; private boolean hasStrikethrough; private boolean valStrikethrough; private boolean hasText; private java.lang.String valText; private boolean hasTextAlignment; private javafx.scene.text.TextAlignment valTextAlignment; private boolean hasTextOrigin; private javafx.geometry.VPos valTextOrigin; private boolean hasUnderline; private boolean valUnderline; private boolean hasWrappingWidth; private double valWrappingWidth; private boolean hasX; private double valX; private boolean hasY; private double valY; private boolean bound1BoundsType; private boolean bound2BoundsType; private javafx.beans.value.ObservableValue<? extends javafx.scene.text.TextBoundsType> obsrv1BoundsType; private javafx.beans.property.Property<javafx.scene.text.TextBoundsType> obsrv2BoundsType; private boolean bound1Font; private boolean bound2Font; private javafx.beans.value.ObservableValue<? extends javafx.scene.text.Font> obsrv1Font; private javafx.beans.property.Property<javafx.scene.text.Font> obsrv2Font; private boolean bound1FontSmoothingType; private boolean bound2FontSmoothingType; private javafx.beans.value.ObservableValue<? extends javafx.scene.text.FontSmoothingType> obsrv1FontSmoothingType; private javafx.beans.property.Property<javafx.scene.text.FontSmoothingType> obsrv2FontSmoothingType; private boolean bound1LineSpacing; private boolean bound2LineSpacing; private javafx.beans.value.ObservableValue<? extends Number> obsrv1LineSpacing; private javafx.beans.property.Property<Number> obsrv2LineSpacing; private boolean bound1Strikethrough; private boolean bound2Strikethrough; private javafx.beans.value.ObservableValue<? extends Boolean> obsrv1Strikethrough; private javafx.beans.property.Property<Boolean> obsrv2Strikethrough; private boolean bound1TextAlignment; private boolean bound2TextAlignment; private javafx.beans.value.ObservableValue<? extends javafx.scene.text.TextAlignment> obsrv1TextAlignment; private javafx.beans.property.Property<javafx.scene.text.TextAlignment> obsrv2TextAlignment; private boolean bound1TextOrigin; private boolean bound2TextOrigin; private javafx.beans.value.ObservableValue<? extends javafx.geometry.VPos> obsrv1TextOrigin; private javafx.beans.property.Property<javafx.geometry.VPos> obsrv2TextOrigin; private boolean bound1Text; private boolean bound2Text; private javafx.beans.value.ObservableValue<? extends String> obsrv1Text; private javafx.beans.property.Property<String> obsrv2Text; private boolean bound1Underline; private boolean bound2Underline; private javafx.beans.value.ObservableValue<? extends Boolean> obsrv1Underline; private javafx.beans.property.Property<Boolean> obsrv2Underline; private boolean bound1WrappingWidth; private boolean bound2WrappingWidth; private javafx.beans.value.ObservableValue<? extends Number> obsrv1WrappingWidth; private javafx.beans.property.Property<Number> obsrv2WrappingWidth; private boolean bound1X; private boolean bound2X; private javafx.beans.value.ObservableValue<? extends Number> obsrv1X; private javafx.beans.property.Property<Number> obsrv2X; private boolean bound1Y; private boolean bound2Y; private javafx.beans.value.ObservableValue<? extends Number> obsrv1Y; private javafx.beans.property.Property<Number> obsrv2Y; @Override public void applyTo(Z instance) { super.applyTo(instance); if (this.hasBoundsType) instance.setBoundsType(this.valBoundsType); if (this.hasFont) instance.setFont(this.valFont); if (this.hasFontSmoothingType) instance.setFontSmoothingType(this.valFontSmoothingType); if (this.hasLineSpacing) instance.setLineSpacing(this.valLineSpacing); if (this.hasStrikethrough) instance.setStrikethrough(this.valStrikethrough); if (this.hasText) instance.setText(this.valText); if (this.hasTextAlignment) instance.setTextAlignment(this.valTextAlignment); if (this.hasTextOrigin) instance.setTextOrigin(this.valTextOrigin); if (this.hasUnderline) instance.setUnderline(this.valUnderline); if (this.hasWrappingWidth) instance.setWrappingWidth(this.valWrappingWidth); if (this.hasX) instance.setX(this.valX); if (this.hasY) instance.setY(this.valY); if (this.bound1BoundsType) instance.boundsTypeProperty().bind(this.obsrv1BoundsType); if (this.bound2BoundsType) instance.boundsTypeProperty().bindBidirectional(this.obsrv2BoundsType); if (this.bound1Font) instance.fontProperty().bind(this.obsrv1Font); if (this.bound2Font) instance.fontProperty().bindBidirectional(this.obsrv2Font); if (this.bound1FontSmoothingType) instance.fontSmoothingTypeProperty().bind(this.obsrv1FontSmoothingType); if (this.bound2FontSmoothingType) instance.fontSmoothingTypeProperty().bindBidirectional(this.obsrv2FontSmoothingType); if (this.bound1LineSpacing) instance.lineSpacingProperty().bind(this.obsrv1LineSpacing); if (this.bound2LineSpacing) instance.lineSpacingProperty().bindBidirectional(this.obsrv2LineSpacing); if (this.bound1Strikethrough) instance.strikethroughProperty().bind(this.obsrv1Strikethrough); if (this.bound2Strikethrough) instance.strikethroughProperty().bindBidirectional(this.obsrv2Strikethrough); if (this.bound1TextAlignment) instance.textAlignmentProperty().bind(this.obsrv1TextAlignment); if (this.bound2TextAlignment) instance.textAlignmentProperty().bindBidirectional(this.obsrv2TextAlignment); if (this.bound1TextOrigin) instance.textOriginProperty().bind(this.obsrv1TextOrigin); if (this.bound2TextOrigin) instance.textOriginProperty().bindBidirectional(this.obsrv2TextOrigin); if (this.bound1Text) instance.textProperty().bind(this.obsrv1Text); if (this.bound2Text) instance.textProperty().bindBidirectional(this.obsrv2Text); if (this.bound1Underline) instance.underlineProperty().bind(this.obsrv1Underline); if (this.bound2Underline) instance.underlineProperty().bindBidirectional(this.obsrv2Underline); if (this.bound1WrappingWidth) instance.wrappingWidthProperty().bind(this.obsrv1WrappingWidth); if (this.bound2WrappingWidth) instance.wrappingWidthProperty().bindBidirectional(this.obsrv2WrappingWidth); if (this.bound1X) instance.xProperty().bind(this.obsrv1X); if (this.bound2X) instance.xProperty().bindBidirectional(this.obsrv2X); if (this.bound1Y) instance.yProperty().bind(this.obsrv1Y); if (this.bound2Y) instance.yProperty().bindBidirectional(this.obsrv2Y); } /** * 設定屬性{@link Text#setBoundsType(javafx.scene.text.TextBoundsType)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B boundsType(javafx.scene.text.TextBoundsType value) { this.hasBoundsType = true; this.valBoundsType = value; return (B) this; } /** * 設定屬性{@link Text#setFont(javafx.scene.text.Font)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B font(javafx.scene.text.Font value) { this.hasFont = true; this.valFont = value; return (B) this; } /** * 設定屬性{@link Text#setFontSmoothingType(javafx.scene.text.FontSmoothingType)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B fontSmoothingType(javafx.scene.text.FontSmoothingType value) { this.hasFontSmoothingType = true; this.valFontSmoothingType = value; return (B) this; } /** * 設定屬性{@link Text#setLineSpacing(double)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B lineSpacing(double value) { this.hasLineSpacing = true; this.valLineSpacing = value; return (B) this; } /** * 設定屬性{@link Text#setStrikethrough(boolean)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B strikethrough(boolean value) { this.hasStrikethrough = true; this.valStrikethrough = value; return (B) this; } /** * 設定屬性{@link Text#setText(java.lang.String)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B text(java.lang.String value) { this.hasText = true; this.valText = value; return (B) this; } /** * 設定屬性{@link Text#setTextAlignment(javafx.scene.text.TextAlignment)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B textAlignment(javafx.scene.text.TextAlignment value) { this.hasTextAlignment = true; this.valTextAlignment = value; return (B) this; } /** * 設定屬性{@link Text#setTextOrigin(javafx.geometry.VPos)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B textOrigin(javafx.geometry.VPos value) { this.hasTextOrigin = true; this.valTextOrigin = value; return (B) this; } /** * 設定屬性{@link Text#setUnderline(boolean)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B underline(boolean value) { this.hasUnderline = true; this.valUnderline = value; return (B) this; } /** * 設定屬性{@link Text#setWrappingWidth(double)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B wrappingWidth(double value) { this.hasWrappingWidth = true; this.valWrappingWidth = value; return (B) this; } /** * 設定屬性{@link Text#setX(double)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B x(double value) { this.hasX = true; this.valX = value; return (B) this; } /** * 設定屬性{@link Text#setY(double)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B y(double value) { this.hasY = true; this.valY = value; return (B) this; } /** * 設定屬性{@link Text#boundsTypeProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBoundsType(javafx.beans.value.ObservableValue<? extends javafx.scene.text.TextBoundsType> source) { java.util.Objects.requireNonNull(source); this.bound1BoundsType = true; this.obsrv1BoundsType = source; this.bound2BoundsType = false; this.obsrv2BoundsType = null; return (B) this; } /** * 設定屬性{@link Text#boundsTypeProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalBoundsType(javafx.beans.property.Property<javafx.scene.text.TextBoundsType> source) { java.util.Objects.requireNonNull(source); this.bound1BoundsType = false; this.obsrv1BoundsType = null; this.bound2BoundsType = true; this.obsrv2BoundsType = source; return (B) this; } /** * 設定屬性{@link Text#fontProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindFont(javafx.beans.value.ObservableValue<? extends javafx.scene.text.Font> source) { java.util.Objects.requireNonNull(source); this.bound1Font = true; this.obsrv1Font = source; this.bound2Font = false; this.obsrv2Font = null; return (B) this; } /** * 設定屬性{@link Text#fontProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalFont(javafx.beans.property.Property<javafx.scene.text.Font> source) { java.util.Objects.requireNonNull(source); this.bound1Font = false; this.obsrv1Font = null; this.bound2Font = true; this.obsrv2Font = source; return (B) this; } /** * 設定屬性{@link Text#fontSmoothingTypeProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindFontSmoothingType(javafx.beans.value.ObservableValue<? extends javafx.scene.text.FontSmoothingType> source) { java.util.Objects.requireNonNull(source); this.bound1FontSmoothingType = true; this.obsrv1FontSmoothingType = source; this.bound2FontSmoothingType = false; this.obsrv2FontSmoothingType = null; return (B) this; } /** * 設定屬性{@link Text#fontSmoothingTypeProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalFontSmoothingType(javafx.beans.property.Property<javafx.scene.text.FontSmoothingType> source) { java.util.Objects.requireNonNull(source); this.bound1FontSmoothingType = false; this.obsrv1FontSmoothingType = null; this.bound2FontSmoothingType = true; this.obsrv2FontSmoothingType = source; return (B) this; } /** * 設定屬性{@link Text#lineSpacingProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindLineSpacing(javafx.beans.value.ObservableValue<? extends Number> source) { java.util.Objects.requireNonNull(source); this.bound1LineSpacing = true; this.obsrv1LineSpacing = source; this.bound2LineSpacing = false; this.obsrv2LineSpacing = null; return (B) this; } /** * 設定屬性{@link Text#lineSpacingProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalLineSpacing(javafx.beans.property.Property<Number> source) { java.util.Objects.requireNonNull(source); this.bound1LineSpacing = false; this.obsrv1LineSpacing = null; this.bound2LineSpacing = true; this.obsrv2LineSpacing = source; return (B) this; } /** * 設定屬性{@link Text#strikethroughProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindStrikethrough(javafx.beans.value.ObservableValue<? extends Boolean> source) { java.util.Objects.requireNonNull(source); this.bound1Strikethrough = true; this.obsrv1Strikethrough = source; this.bound2Strikethrough = false; this.obsrv2Strikethrough = null; return (B) this; } /** * 設定屬性{@link Text#strikethroughProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalStrikethrough(javafx.beans.property.Property<Boolean> source) { java.util.Objects.requireNonNull(source); this.bound1Strikethrough = false; this.obsrv1Strikethrough = null; this.bound2Strikethrough = true; this.obsrv2Strikethrough = source; return (B) this; } /** * 設定屬性{@link Text#textAlignmentProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindTextAlignment(javafx.beans.value.ObservableValue<? extends javafx.scene.text.TextAlignment> source) { java.util.Objects.requireNonNull(source); this.bound1TextAlignment = true; this.obsrv1TextAlignment = source; this.bound2TextAlignment = false; this.obsrv2TextAlignment = null; return (B) this; } /** * 設定屬性{@link Text#textAlignmentProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalTextAlignment(javafx.beans.property.Property<javafx.scene.text.TextAlignment> source) { java.util.Objects.requireNonNull(source); this.bound1TextAlignment = false; this.obsrv1TextAlignment = null; this.bound2TextAlignment = true; this.obsrv2TextAlignment = source; return (B) this; } /** * 設定屬性{@link Text#textOriginProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindTextOrigin(javafx.beans.value.ObservableValue<? extends javafx.geometry.VPos> source) { java.util.Objects.requireNonNull(source); this.bound1TextOrigin = true; this.obsrv1TextOrigin = source; this.bound2TextOrigin = false; this.obsrv2TextOrigin = null; return (B) this; } /** * 設定屬性{@link Text#textOriginProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalTextOrigin(javafx.beans.property.Property<javafx.geometry.VPos> source) { java.util.Objects.requireNonNull(source); this.bound1TextOrigin = false; this.obsrv1TextOrigin = null; this.bound2TextOrigin = true; this.obsrv2TextOrigin = source; return (B) this; } /** * 設定屬性{@link Text#textProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindText(javafx.beans.value.ObservableValue<? extends String> source) { java.util.Objects.requireNonNull(source); this.bound1Text = true; this.obsrv1Text = source; this.bound2Text = false; this.obsrv2Text = null; return (B) this; } /** * 設定屬性{@link Text#textProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalText(javafx.beans.property.Property<String> source) { java.util.Objects.requireNonNull(source); this.bound1Text = false; this.obsrv1Text = null; this.bound2Text = true; this.obsrv2Text = source; return (B) this; } /** * 設定屬性{@link Text#underlineProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindUnderline(javafx.beans.value.ObservableValue<? extends Boolean> source) { java.util.Objects.requireNonNull(source); this.bound1Underline = true; this.obsrv1Underline = source; this.bound2Underline = false; this.obsrv2Underline = null; return (B) this; } /** * 設定屬性{@link Text#underlineProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalUnderline(javafx.beans.property.Property<Boolean> source) { java.util.Objects.requireNonNull(source); this.bound1Underline = false; this.obsrv1Underline = null; this.bound2Underline = true; this.obsrv2Underline = source; return (B) this; } /** * 設定屬性{@link Text#wrappingWidthProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindWrappingWidth(javafx.beans.value.ObservableValue<? extends Number> source) { java.util.Objects.requireNonNull(source); this.bound1WrappingWidth = true; this.obsrv1WrappingWidth = source; this.bound2WrappingWidth = false; this.obsrv2WrappingWidth = null; return (B) this; } /** * 設定屬性{@link Text#wrappingWidthProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalWrappingWidth(javafx.beans.property.Property<Number> source) { java.util.Objects.requireNonNull(source); this.bound1WrappingWidth = false; this.obsrv1WrappingWidth = null; this.bound2WrappingWidth = true; this.obsrv2WrappingWidth = source; return (B) this; } /** * 設定屬性{@link Text#xProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindX(javafx.beans.value.ObservableValue<? extends Number> source) { java.util.Objects.requireNonNull(source); this.bound1X = true; this.obsrv1X = source; this.bound2X = false; this.obsrv2X = null; return (B) this; } /** * 設定屬性{@link Text#xProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalX(javafx.beans.property.Property<Number> source) { java.util.Objects.requireNonNull(source); this.bound1X = false; this.obsrv1X = null; this.bound2X = true; this.obsrv2X = source; return (B) this; } /** * 設定屬性{@link Text#yProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindY(javafx.beans.value.ObservableValue<? extends Number> source) { java.util.Objects.requireNonNull(source); this.bound1Y = true; this.obsrv1Y = source; this.bound2Y = false; this.obsrv2Y = null; return (B) this; } /** * 設定屬性{@link Text#yProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalY(javafx.beans.property.Property<Number> source) { java.util.Objects.requireNonNull(source); this.bound1Y = false; this.obsrv1Y = null; this.bound2Y = true; this.obsrv2Y = source; return (B) this; } /** * 建構{@link Text}物件。 * * @return 新的{@link Text}物件實體 */ @Override @SuppressWarnings("unchecked") public Text build() { Text instance = new Text(); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } /** * 建構{@link Text}物件。 * * @return 新的{@link Text}物件實體 */ @SuppressWarnings("unchecked") public Text build(java.lang.String arg0) { Text instance = new Text(arg0); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } /** * 建構{@link Text}物件。 * * @return 新的{@link Text}物件實體 */ @SuppressWarnings("unchecked") public Text build(double arg0, double arg1, java.lang.String arg2) { Text instance = new Text(arg0, arg1, arg2); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } }