// @formatter:off
/*
* Unlicensed, generated by javafx.ftl
*/
package javafx.scene.control;
/**
* {@link TextArea}建構器。
*
* @author JarReflectionDataLoader-1.0.0
* @version jfxrt.jar
* @param <Z> 要建構的物件型態(需繼承{@link TextArea})
* @param <B> 建構器本身的型態(需繼承{@link TextAreaMaker})
*/
@javax.annotation.Generated("Generated by javafx.ftl")
@SuppressWarnings("all")
public class TextAreaMaker<Z extends TextArea, B extends TextAreaMaker<Z, B>>
extends javafx.scene.control.TextInputControlMaker<Z, B>
implements TextAreaMakerExt<Z, B>
{
private boolean hasParagraphs;
private java.util.Collection<java.lang.CharSequence> valParagraphs;
private boolean hasPrefColumnCount;
private int valPrefColumnCount;
private boolean hasPrefRowCount;
private int valPrefRowCount;
private boolean hasScrollLeft;
private double valScrollLeft;
private boolean hasScrollTop;
private double valScrollTop;
private boolean hasWrapText;
private boolean valWrapText;
private boolean bound1PrefColumnCount;
private boolean bound2PrefColumnCount;
private javafx.beans.value.ObservableValue<? extends Number> obsrv1PrefColumnCount;
private javafx.beans.property.Property<Number> obsrv2PrefColumnCount;
private boolean bound1PrefRowCount;
private boolean bound2PrefRowCount;
private javafx.beans.value.ObservableValue<? extends Number> obsrv1PrefRowCount;
private javafx.beans.property.Property<Number> obsrv2PrefRowCount;
private boolean bound1ScrollLeft;
private boolean bound2ScrollLeft;
private javafx.beans.value.ObservableValue<? extends Number> obsrv1ScrollLeft;
private javafx.beans.property.Property<Number> obsrv2ScrollLeft;
private boolean bound1ScrollTop;
private boolean bound2ScrollTop;
private javafx.beans.value.ObservableValue<? extends Number> obsrv1ScrollTop;
private javafx.beans.property.Property<Number> obsrv2ScrollTop;
private boolean bound1WrapText;
private boolean bound2WrapText;
private javafx.beans.value.ObservableValue<? extends Boolean> obsrv1WrapText;
private javafx.beans.property.Property<Boolean> obsrv2WrapText;
@Override
public void applyTo(Z instance)
{
super.applyTo(instance);
if (this.hasParagraphs)
instance.getParagraphs().addAll(this.valParagraphs);
if (this.hasPrefColumnCount)
instance.setPrefColumnCount(this.valPrefColumnCount);
if (this.hasPrefRowCount)
instance.setPrefRowCount(this.valPrefRowCount);
if (this.hasScrollLeft)
instance.setScrollLeft(this.valScrollLeft);
if (this.hasScrollTop)
instance.setScrollTop(this.valScrollTop);
if (this.hasWrapText)
instance.setWrapText(this.valWrapText);
if (this.bound1PrefColumnCount)
instance.prefColumnCountProperty().bind(this.obsrv1PrefColumnCount);
if (this.bound2PrefColumnCount)
instance.prefColumnCountProperty().bindBidirectional(this.obsrv2PrefColumnCount);
if (this.bound1PrefRowCount)
instance.prefRowCountProperty().bind(this.obsrv1PrefRowCount);
if (this.bound2PrefRowCount)
instance.prefRowCountProperty().bindBidirectional(this.obsrv2PrefRowCount);
if (this.bound1ScrollLeft)
instance.scrollLeftProperty().bind(this.obsrv1ScrollLeft);
if (this.bound2ScrollLeft)
instance.scrollLeftProperty().bindBidirectional(this.obsrv2ScrollLeft);
if (this.bound1ScrollTop)
instance.scrollTopProperty().bind(this.obsrv1ScrollTop);
if (this.bound2ScrollTop)
instance.scrollTopProperty().bindBidirectional(this.obsrv2ScrollTop);
if (this.bound1WrapText)
instance.wrapTextProperty().bind(this.obsrv1WrapText);
if (this.bound2WrapText)
instance.wrapTextProperty().bindBidirectional(this.obsrv2WrapText);
}
/**
* 設定集合屬性{@link TextArea#getParagraphs}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
* @deprecated 屬性值並非{@link javafx.collections.ObservableList}
*/
@Deprecated
@SuppressWarnings("unchecked")
public final B paragraphs(java.util.Collection<? extends java.lang.CharSequence> value)
{
this.hasParagraphs = true;
this.valParagraphs = (java.util.Collection<java.lang.CharSequence>) value;
return (B) this;
}
/**
* 設定集合屬性{@link TextArea#getParagraphs}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SafeVarargs
@SuppressWarnings("unchecked")
public final B paragraphs(java.lang.CharSequence... value)
{
this.hasParagraphs = true;
this.valParagraphs = java.util.Arrays.asList(value);
return (B) this;
}
/**
* 增加集合屬性{@link TextArea#getParagraphs}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B paragraphsAdd(java.util.Collection<? extends java.lang.CharSequence> value)
{
java.util.Objects.requireNonNull(value);
this.hasParagraphs = true;
if (this.valParagraphs == null)
this.valParagraphs = new java.util.ArrayList<>(value.size());
this.valParagraphs.addAll(value);
return (B) this;
}
/**
* 增加集合屬性{@link TextArea#getParagraphs}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SafeVarargs
@SuppressWarnings("unchecked")
public final B paragraphsAdd(java.lang.CharSequence... value)
{
java.util.Objects.requireNonNull(value);
this.hasParagraphs = true;
if (this.valParagraphs == null)
this.valParagraphs = new java.util.ArrayList<>(value.length);
this.valParagraphs.addAll(java.util.Arrays.asList(value));
return (B) this;
}
/**
* 增加集合屬性{@link TextArea#getParagraphs}的內容,排除null項目。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B paragraphsAddNonNull(java.util.Collection<? extends java.lang.CharSequence> value)
{
java.util.Objects.requireNonNull(value);
this.hasParagraphs = true;
if (this.valParagraphs == null)
this.valParagraphs = new java.util.ArrayList<>(value.size());
for (java.lang.CharSequence i : value)
if (i != null)
this.valParagraphs.add(i);
return (B) this;
}
/**
* 增加集合屬性{@link TextArea#getParagraphs}的內容,排除null項目。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SafeVarargs
@SuppressWarnings("unchecked")
public final B paragraphsAddNonNull(java.lang.CharSequence... value)
{
java.util.Objects.requireNonNull(value);
this.hasParagraphs = true;
if (this.valParagraphs == null)
this.valParagraphs = new java.util.ArrayList<>(value.length);
for (java.lang.CharSequence i : value)
if (i != null)
this.valParagraphs.add(i);
return (B) this;
}
/**
* 設定屬性{@link TextArea#setPrefColumnCount(int)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B prefColumnCount(int value)
{
this.hasPrefColumnCount = true;
this.valPrefColumnCount = value;
return (B) this;
}
/**
* 設定屬性{@link TextArea#setPrefRowCount(int)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B prefRowCount(int value)
{
this.hasPrefRowCount = true;
this.valPrefRowCount = value;
return (B) this;
}
/**
* 設定屬性{@link TextArea#setScrollLeft(double)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B scrollLeft(double value)
{
this.hasScrollLeft = true;
this.valScrollLeft = value;
return (B) this;
}
/**
* 設定屬性{@link TextArea#setScrollTop(double)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B scrollTop(double value)
{
this.hasScrollTop = true;
this.valScrollTop = value;
return (B) this;
}
/**
* 設定屬性{@link TextArea#setWrapText(boolean)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B wrapText(boolean value)
{
this.hasWrapText = true;
this.valWrapText = value;
return (B) this;
}
/**
* 設定屬性{@link TextArea#prefColumnCountProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindPrefColumnCount(javafx.beans.value.ObservableValue<? extends Number> source)
{
java.util.Objects.requireNonNull(source);
this.bound1PrefColumnCount = true;
this.obsrv1PrefColumnCount = source;
this.bound2PrefColumnCount = false;
this.obsrv2PrefColumnCount = null;
return (B) this;
}
/**
* 設定屬性{@link TextArea#prefColumnCountProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalPrefColumnCount(javafx.beans.property.Property<Number> source)
{
java.util.Objects.requireNonNull(source);
this.bound1PrefColumnCount = false;
this.obsrv1PrefColumnCount = null;
this.bound2PrefColumnCount = true;
this.obsrv2PrefColumnCount = source;
return (B) this;
}
/**
* 設定屬性{@link TextArea#prefRowCountProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindPrefRowCount(javafx.beans.value.ObservableValue<? extends Number> source)
{
java.util.Objects.requireNonNull(source);
this.bound1PrefRowCount = true;
this.obsrv1PrefRowCount = source;
this.bound2PrefRowCount = false;
this.obsrv2PrefRowCount = null;
return (B) this;
}
/**
* 設定屬性{@link TextArea#prefRowCountProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalPrefRowCount(javafx.beans.property.Property<Number> source)
{
java.util.Objects.requireNonNull(source);
this.bound1PrefRowCount = false;
this.obsrv1PrefRowCount = null;
this.bound2PrefRowCount = true;
this.obsrv2PrefRowCount = source;
return (B) this;
}
/**
* 設定屬性{@link TextArea#scrollLeftProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindScrollLeft(javafx.beans.value.ObservableValue<? extends Number> source)
{
java.util.Objects.requireNonNull(source);
this.bound1ScrollLeft = true;
this.obsrv1ScrollLeft = source;
this.bound2ScrollLeft = false;
this.obsrv2ScrollLeft = null;
return (B) this;
}
/**
* 設定屬性{@link TextArea#scrollLeftProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalScrollLeft(javafx.beans.property.Property<Number> source)
{
java.util.Objects.requireNonNull(source);
this.bound1ScrollLeft = false;
this.obsrv1ScrollLeft = null;
this.bound2ScrollLeft = true;
this.obsrv2ScrollLeft = source;
return (B) this;
}
/**
* 設定屬性{@link TextArea#scrollTopProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindScrollTop(javafx.beans.value.ObservableValue<? extends Number> source)
{
java.util.Objects.requireNonNull(source);
this.bound1ScrollTop = true;
this.obsrv1ScrollTop = source;
this.bound2ScrollTop = false;
this.obsrv2ScrollTop = null;
return (B) this;
}
/**
* 設定屬性{@link TextArea#scrollTopProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalScrollTop(javafx.beans.property.Property<Number> source)
{
java.util.Objects.requireNonNull(source);
this.bound1ScrollTop = false;
this.obsrv1ScrollTop = null;
this.bound2ScrollTop = true;
this.obsrv2ScrollTop = source;
return (B) this;
}
/**
* 設定屬性{@link TextArea#wrapTextProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindWrapText(javafx.beans.value.ObservableValue<? extends Boolean> source)
{
java.util.Objects.requireNonNull(source);
this.bound1WrapText = true;
this.obsrv1WrapText = source;
this.bound2WrapText = false;
this.obsrv2WrapText = null;
return (B) this;
}
/**
* 設定屬性{@link TextArea#wrapTextProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalWrapText(javafx.beans.property.Property<Boolean> source)
{
java.util.Objects.requireNonNull(source);
this.bound1WrapText = false;
this.obsrv1WrapText = null;
this.bound2WrapText = true;
this.obsrv2WrapText = source;
return (B) this;
}
/**
* 建構{@link TextArea}物件。
*
* @return 新的{@link TextArea}物件實體
*/
@Override
@SuppressWarnings("unchecked")
public TextArea build()
{
TextArea instance = new TextArea();
this.applyTo((Z) instance);
this.doAfterBuild((Z) instance);
return instance;
}
/**
* 建構{@link TextArea}物件。
*
* @return 新的{@link TextArea}物件實體
*/
@SuppressWarnings("unchecked")
public TextArea build(java.lang.String arg0)
{
TextArea instance = new TextArea(arg0);
this.applyTo((Z) instance);
this.doAfterBuild((Z) instance);
return instance;
}
}