// @formatter:off
/*
* Unlicensed, generated by javafx.ftl
*/
package javafx.scene.control;
/**
* {@link TableView}建構器。
*
* @author JarReflectionDataLoader-1.0.0
* @version jfxrt.jar
* @param <Z> 要建構的物件型態(需繼承{@link TableView})
* @param <B> 建構器本身的型態(需繼承{@link TableViewMaker})
*/
@javax.annotation.Generated("Generated by javafx.ftl")
@SuppressWarnings("all")
public class TableViewMaker<S extends java.lang.Object, Z extends TableView<S>, B extends TableViewMaker<S, Z, B>>
extends javafx.scene.control.ControlMaker<Z, B>
implements TableViewMakerExt<S, Z, B>
{
private boolean hasColumnResizePolicy;
private javafx.util.Callback<javafx.scene.control.TableView.ResizeFeatures, java.lang.Boolean> valColumnResizePolicy;
private boolean hasColumns;
private java.util.Collection<javafx.scene.control.TableColumn<S, ?>> valColumns;
private boolean hasEditable;
private boolean valEditable;
private boolean hasFixedCellSize;
private double valFixedCellSize;
private boolean hasFocusModel;
private javafx.scene.control.TableView.TableViewFocusModel<S> valFocusModel;
private boolean hasItems;
private javafx.collections.ObservableList<S> valItems;
private boolean hasOnScrollTo;
private javafx.event.EventHandler<javafx.scene.control.ScrollToEvent<java.lang.Integer>> valOnScrollTo;
private boolean hasOnScrollToColumn;
private javafx.event.EventHandler<javafx.scene.control.ScrollToEvent<javafx.scene.control.TableColumn<S, ?>>> valOnScrollToColumn;
private boolean hasOnSort;
private javafx.event.EventHandler<javafx.scene.control.SortEvent<javafx.scene.control.TableView<S>>> valOnSort;
private boolean hasPlaceholder;
private javafx.scene.Node valPlaceholder;
private boolean hasRowFactory;
private javafx.util.Callback<javafx.scene.control.TableView<S>, javafx.scene.control.TableRow<S>> valRowFactory;
private boolean hasSelectionModel;
private javafx.scene.control.TableView.TableViewSelectionModel<S> valSelectionModel;
private boolean hasSortOrder;
private java.util.Collection<javafx.scene.control.TableColumn<S, ?>> valSortOrder;
private boolean hasSortPolicy;
private javafx.util.Callback<javafx.scene.control.TableView<S>, java.lang.Boolean> valSortPolicy;
private boolean hasTableMenuButtonVisible;
private boolean valTableMenuButtonVisible;
private boolean hasVisibleLeafColumns;
private java.util.Collection<javafx.scene.control.TableColumn<S, ?>> valVisibleLeafColumns;
private boolean bound1ColumnResizePolicy;
private boolean bound2ColumnResizePolicy;
private javafx.beans.value.ObservableValue<? extends javafx.util.Callback<javafx.scene.control.TableView.ResizeFeatures, java.lang.Boolean>> obsrv1ColumnResizePolicy;
private javafx.beans.property.Property<javafx.util.Callback<javafx.scene.control.TableView.ResizeFeatures, java.lang.Boolean>> obsrv2ColumnResizePolicy;
private boolean bound1Editable;
private boolean bound2Editable;
private javafx.beans.value.ObservableValue<? extends Boolean> obsrv1Editable;
private javafx.beans.property.Property<Boolean> obsrv2Editable;
private boolean bound1FixedCellSize;
private boolean bound2FixedCellSize;
private javafx.beans.value.ObservableValue<? extends Number> obsrv1FixedCellSize;
private javafx.beans.property.Property<Number> obsrv2FixedCellSize;
private boolean bound1FocusModel;
private boolean bound2FocusModel;
private javafx.beans.value.ObservableValue<? extends javafx.scene.control.TableView.TableViewFocusModel<S>> obsrv1FocusModel;
private javafx.beans.property.Property<javafx.scene.control.TableView.TableViewFocusModel<S>> obsrv2FocusModel;
private boolean bound1Items;
private boolean bound2Items;
private javafx.beans.value.ObservableValue<? extends javafx.collections.ObservableList<S>> obsrv1Items;
private javafx.beans.property.Property<javafx.collections.ObservableList<S>> obsrv2Items;
private boolean bound1OnScrollToColumn;
private boolean bound2OnScrollToColumn;
private javafx.beans.value.ObservableValue<? extends javafx.event.EventHandler<javafx.scene.control.ScrollToEvent<javafx.scene.control.TableColumn<S, ?>>>> obsrv1OnScrollToColumn;
private javafx.beans.property.Property<javafx.event.EventHandler<javafx.scene.control.ScrollToEvent<javafx.scene.control.TableColumn<S, ?>>>> obsrv2OnScrollToColumn;
private boolean bound1OnScrollTo;
private boolean bound2OnScrollTo;
private javafx.beans.value.ObservableValue<? extends javafx.event.EventHandler<javafx.scene.control.ScrollToEvent<java.lang.Integer>>> obsrv1OnScrollTo;
private javafx.beans.property.Property<javafx.event.EventHandler<javafx.scene.control.ScrollToEvent<java.lang.Integer>>> obsrv2OnScrollTo;
private boolean bound1OnSort;
private boolean bound2OnSort;
private javafx.beans.value.ObservableValue<? extends javafx.event.EventHandler<javafx.scene.control.SortEvent<javafx.scene.control.TableView<S>>>> obsrv1OnSort;
private javafx.beans.property.Property<javafx.event.EventHandler<javafx.scene.control.SortEvent<javafx.scene.control.TableView<S>>>> obsrv2OnSort;
private boolean bound1Placeholder;
private boolean bound2Placeholder;
private javafx.beans.value.ObservableValue<? extends javafx.scene.Node> obsrv1Placeholder;
private javafx.beans.property.Property<javafx.scene.Node> obsrv2Placeholder;
private boolean bound1RowFactory;
private boolean bound2RowFactory;
private javafx.beans.value.ObservableValue<? extends javafx.util.Callback<javafx.scene.control.TableView<S>, javafx.scene.control.TableRow<S>>> obsrv1RowFactory;
private javafx.beans.property.Property<javafx.util.Callback<javafx.scene.control.TableView<S>, javafx.scene.control.TableRow<S>>> obsrv2RowFactory;
private boolean bound1SelectionModel;
private boolean bound2SelectionModel;
private javafx.beans.value.ObservableValue<? extends javafx.scene.control.TableView.TableViewSelectionModel<S>> obsrv1SelectionModel;
private javafx.beans.property.Property<javafx.scene.control.TableView.TableViewSelectionModel<S>> obsrv2SelectionModel;
private boolean bound1SortPolicy;
private boolean bound2SortPolicy;
private javafx.beans.value.ObservableValue<? extends javafx.util.Callback<javafx.scene.control.TableView<S>, java.lang.Boolean>> obsrv1SortPolicy;
private javafx.beans.property.Property<javafx.util.Callback<javafx.scene.control.TableView<S>, java.lang.Boolean>> obsrv2SortPolicy;
private boolean bound1TableMenuButtonVisible;
private boolean bound2TableMenuButtonVisible;
private javafx.beans.value.ObservableValue<? extends Boolean> obsrv1TableMenuButtonVisible;
private javafx.beans.property.Property<Boolean> obsrv2TableMenuButtonVisible;
@Override
public void applyTo(Z instance)
{
super.applyTo(instance);
if (this.hasColumnResizePolicy)
instance.setColumnResizePolicy(this.valColumnResizePolicy);
if (this.hasColumns)
instance.getColumns().addAll(this.valColumns);
if (this.hasEditable)
instance.setEditable(this.valEditable);
if (this.hasFixedCellSize)
instance.setFixedCellSize(this.valFixedCellSize);
if (this.hasFocusModel)
instance.setFocusModel(this.valFocusModel);
if (this.hasItems)
instance.setItems(this.valItems);
if (this.hasOnScrollTo)
instance.setOnScrollTo(this.valOnScrollTo);
if (this.hasOnScrollToColumn)
instance.setOnScrollToColumn(this.valOnScrollToColumn);
if (this.hasOnSort)
instance.setOnSort(this.valOnSort);
if (this.hasPlaceholder)
instance.setPlaceholder(this.valPlaceholder);
if (this.hasRowFactory)
instance.setRowFactory(this.valRowFactory);
if (this.hasSelectionModel)
instance.setSelectionModel(this.valSelectionModel);
if (this.hasSortOrder)
instance.getSortOrder().addAll(this.valSortOrder);
if (this.hasSortPolicy)
instance.setSortPolicy(this.valSortPolicy);
if (this.hasTableMenuButtonVisible)
instance.setTableMenuButtonVisible(this.valTableMenuButtonVisible);
if (this.hasVisibleLeafColumns)
instance.getVisibleLeafColumns().addAll(this.valVisibleLeafColumns);
if (this.bound1ColumnResizePolicy)
instance.columnResizePolicyProperty().bind(this.obsrv1ColumnResizePolicy);
if (this.bound2ColumnResizePolicy)
instance.columnResizePolicyProperty().bindBidirectional(this.obsrv2ColumnResizePolicy);
if (this.bound1Editable)
instance.editableProperty().bind(this.obsrv1Editable);
if (this.bound2Editable)
instance.editableProperty().bindBidirectional(this.obsrv2Editable);
if (this.bound1FixedCellSize)
instance.fixedCellSizeProperty().bind(this.obsrv1FixedCellSize);
if (this.bound2FixedCellSize)
instance.fixedCellSizeProperty().bindBidirectional(this.obsrv2FixedCellSize);
if (this.bound1FocusModel)
instance.focusModelProperty().bind(this.obsrv1FocusModel);
if (this.bound2FocusModel)
instance.focusModelProperty().bindBidirectional(this.obsrv2FocusModel);
if (this.bound1Items)
instance.itemsProperty().bind(this.obsrv1Items);
if (this.bound2Items)
instance.itemsProperty().bindBidirectional(this.obsrv2Items);
if (this.bound1OnScrollToColumn)
instance.onScrollToColumnProperty().bind(this.obsrv1OnScrollToColumn);
if (this.bound2OnScrollToColumn)
instance.onScrollToColumnProperty().bindBidirectional(this.obsrv2OnScrollToColumn);
if (this.bound1OnScrollTo)
instance.onScrollToProperty().bind(this.obsrv1OnScrollTo);
if (this.bound2OnScrollTo)
instance.onScrollToProperty().bindBidirectional(this.obsrv2OnScrollTo);
if (this.bound1OnSort)
instance.onSortProperty().bind(this.obsrv1OnSort);
if (this.bound2OnSort)
instance.onSortProperty().bindBidirectional(this.obsrv2OnSort);
if (this.bound1Placeholder)
instance.placeholderProperty().bind(this.obsrv1Placeholder);
if (this.bound2Placeholder)
instance.placeholderProperty().bindBidirectional(this.obsrv2Placeholder);
if (this.bound1RowFactory)
instance.rowFactoryProperty().bind(this.obsrv1RowFactory);
if (this.bound2RowFactory)
instance.rowFactoryProperty().bindBidirectional(this.obsrv2RowFactory);
if (this.bound1SelectionModel)
instance.selectionModelProperty().bind(this.obsrv1SelectionModel);
if (this.bound2SelectionModel)
instance.selectionModelProperty().bindBidirectional(this.obsrv2SelectionModel);
if (this.bound1SortPolicy)
instance.sortPolicyProperty().bind(this.obsrv1SortPolicy);
if (this.bound2SortPolicy)
instance.sortPolicyProperty().bindBidirectional(this.obsrv2SortPolicy);
if (this.bound1TableMenuButtonVisible)
instance.tableMenuButtonVisibleProperty().bind(this.obsrv1TableMenuButtonVisible);
if (this.bound2TableMenuButtonVisible)
instance.tableMenuButtonVisibleProperty().bindBidirectional(this.obsrv2TableMenuButtonVisible);
}
/**
* 設定屬性{@link TableView#setColumnResizePolicy(javafx.util.Callback)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B columnResizePolicy(javafx.util.Callback<javafx.scene.control.TableView.ResizeFeatures, java.lang.Boolean> value)
{
this.hasColumnResizePolicy = true;
this.valColumnResizePolicy = value;
return (B) this;
}
/**
* 設定集合屬性{@link TableView#getColumns}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
* @deprecated 屬性值並非{@link javafx.collections.ObservableList}
*/
@Deprecated
@SuppressWarnings("unchecked")
public final B columns(java.util.Collection<? extends javafx.scene.control.TableColumn<S, ?>> value)
{
this.hasColumns = true;
this.valColumns = (java.util.Collection<javafx.scene.control.TableColumn<S, ?>>) value;
return (B) this;
}
/**
* 設定集合屬性{@link TableView#getColumns}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SafeVarargs
@SuppressWarnings("unchecked")
public final B columns(javafx.scene.control.TableColumn<S, ?>... value)
{
this.hasColumns = true;
this.valColumns = java.util.Arrays.asList(value);
return (B) this;
}
/**
* 增加集合屬性{@link TableView#getColumns}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B columnsAdd(java.util.Collection<? extends javafx.scene.control.TableColumn<S, ?>> value)
{
java.util.Objects.requireNonNull(value);
this.hasColumns = true;
if (this.valColumns == null)
this.valColumns = new java.util.ArrayList<>(value.size());
this.valColumns.addAll(value);
return (B) this;
}
/**
* 增加集合屬性{@link TableView#getColumns}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SafeVarargs
@SuppressWarnings("unchecked")
public final B columnsAdd(javafx.scene.control.TableColumn<S, ?>... value)
{
java.util.Objects.requireNonNull(value);
this.hasColumns = true;
if (this.valColumns == null)
this.valColumns = new java.util.ArrayList<>(value.length);
this.valColumns.addAll(java.util.Arrays.asList(value));
return (B) this;
}
/**
* 增加集合屬性{@link TableView#getColumns}的內容,排除null項目。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B columnsAddNonNull(java.util.Collection<? extends javafx.scene.control.TableColumn<S, ?>> value)
{
java.util.Objects.requireNonNull(value);
this.hasColumns = true;
if (this.valColumns == null)
this.valColumns = new java.util.ArrayList<>(value.size());
for (javafx.scene.control.TableColumn<S, ?> i : value)
if (i != null)
this.valColumns.add(i);
return (B) this;
}
/**
* 增加集合屬性{@link TableView#getColumns}的內容,排除null項目。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SafeVarargs
@SuppressWarnings("unchecked")
public final B columnsAddNonNull(javafx.scene.control.TableColumn<S, ?>... value)
{
java.util.Objects.requireNonNull(value);
this.hasColumns = true;
if (this.valColumns == null)
this.valColumns = new java.util.ArrayList<>(value.length);
for (javafx.scene.control.TableColumn<S, ?> i : value)
if (i != null)
this.valColumns.add(i);
return (B) this;
}
/**
* 設定屬性{@link TableView#setEditable(boolean)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B editable(boolean value)
{
this.hasEditable = true;
this.valEditable = value;
return (B) this;
}
/**
* 設定屬性{@link TableView#setFixedCellSize(double)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B fixedCellSize(double value)
{
this.hasFixedCellSize = true;
this.valFixedCellSize = value;
return (B) this;
}
/**
* 設定屬性{@link TableView#setFocusModel(javafx.scene.control.TableView.TableViewFocusModel)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B focusModel(javafx.scene.control.TableView.TableViewFocusModel<S> value)
{
this.hasFocusModel = true;
this.valFocusModel = value;
return (B) this;
}
/**
* 設定屬性{@link TableView#setItems(javafx.collections.ObservableList)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B items(javafx.collections.ObservableList<S> value)
{
this.hasItems = true;
this.valItems = value;
return (B) this;
}
/**
* 設定屬性{@link TableView#setOnScrollTo(javafx.event.EventHandler)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B onScrollTo(javafx.event.EventHandler<javafx.scene.control.ScrollToEvent<java.lang.Integer>> value)
{
this.hasOnScrollTo = true;
this.valOnScrollTo = value;
return (B) this;
}
/**
* 設定屬性{@link TableView#setOnScrollToColumn(javafx.event.EventHandler)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B onScrollToColumn(javafx.event.EventHandler<javafx.scene.control.ScrollToEvent<javafx.scene.control.TableColumn<S, ?>>> value)
{
this.hasOnScrollToColumn = true;
this.valOnScrollToColumn = value;
return (B) this;
}
/**
* 設定屬性{@link TableView#setOnSort(javafx.event.EventHandler)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B onSort(javafx.event.EventHandler<javafx.scene.control.SortEvent<javafx.scene.control.TableView<S>>> value)
{
this.hasOnSort = true;
this.valOnSort = value;
return (B) this;
}
/**
* 設定屬性{@link TableView#setPlaceholder(javafx.scene.Node)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B placeholder(javafx.scene.Node value)
{
this.hasPlaceholder = true;
this.valPlaceholder = value;
return (B) this;
}
/**
* 設定屬性{@link TableView#setRowFactory(javafx.util.Callback)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B rowFactory(javafx.util.Callback<javafx.scene.control.TableView<S>, javafx.scene.control.TableRow<S>> value)
{
this.hasRowFactory = true;
this.valRowFactory = value;
return (B) this;
}
/**
* 設定屬性{@link TableView#setSelectionModel(javafx.scene.control.TableView.TableViewSelectionModel)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B selectionModel(javafx.scene.control.TableView.TableViewSelectionModel<S> value)
{
this.hasSelectionModel = true;
this.valSelectionModel = value;
return (B) this;
}
/**
* 設定集合屬性{@link TableView#getSortOrder}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
* @deprecated 屬性值並非{@link javafx.collections.ObservableList}
*/
@Deprecated
@SuppressWarnings("unchecked")
public final B sortOrder(java.util.Collection<? extends javafx.scene.control.TableColumn<S, ?>> value)
{
this.hasSortOrder = true;
this.valSortOrder = (java.util.Collection<javafx.scene.control.TableColumn<S, ?>>) value;
return (B) this;
}
/**
* 設定集合屬性{@link TableView#getSortOrder}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SafeVarargs
@SuppressWarnings("unchecked")
public final B sortOrder(javafx.scene.control.TableColumn<S, ?>... value)
{
this.hasSortOrder = true;
this.valSortOrder = java.util.Arrays.asList(value);
return (B) this;
}
/**
* 增加集合屬性{@link TableView#getSortOrder}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B sortOrderAdd(java.util.Collection<? extends javafx.scene.control.TableColumn<S, ?>> value)
{
java.util.Objects.requireNonNull(value);
this.hasSortOrder = true;
if (this.valSortOrder == null)
this.valSortOrder = new java.util.ArrayList<>(value.size());
this.valSortOrder.addAll(value);
return (B) this;
}
/**
* 增加集合屬性{@link TableView#getSortOrder}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SafeVarargs
@SuppressWarnings("unchecked")
public final B sortOrderAdd(javafx.scene.control.TableColumn<S, ?>... value)
{
java.util.Objects.requireNonNull(value);
this.hasSortOrder = true;
if (this.valSortOrder == null)
this.valSortOrder = new java.util.ArrayList<>(value.length);
this.valSortOrder.addAll(java.util.Arrays.asList(value));
return (B) this;
}
/**
* 增加集合屬性{@link TableView#getSortOrder}的內容,排除null項目。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B sortOrderAddNonNull(java.util.Collection<? extends javafx.scene.control.TableColumn<S, ?>> value)
{
java.util.Objects.requireNonNull(value);
this.hasSortOrder = true;
if (this.valSortOrder == null)
this.valSortOrder = new java.util.ArrayList<>(value.size());
for (javafx.scene.control.TableColumn<S, ?> i : value)
if (i != null)
this.valSortOrder.add(i);
return (B) this;
}
/**
* 增加集合屬性{@link TableView#getSortOrder}的內容,排除null項目。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SafeVarargs
@SuppressWarnings("unchecked")
public final B sortOrderAddNonNull(javafx.scene.control.TableColumn<S, ?>... value)
{
java.util.Objects.requireNonNull(value);
this.hasSortOrder = true;
if (this.valSortOrder == null)
this.valSortOrder = new java.util.ArrayList<>(value.length);
for (javafx.scene.control.TableColumn<S, ?> i : value)
if (i != null)
this.valSortOrder.add(i);
return (B) this;
}
/**
* 設定屬性{@link TableView#setSortPolicy(javafx.util.Callback)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B sortPolicy(javafx.util.Callback<javafx.scene.control.TableView<S>, java.lang.Boolean> value)
{
this.hasSortPolicy = true;
this.valSortPolicy = value;
return (B) this;
}
/**
* 設定屬性{@link TableView#setTableMenuButtonVisible(boolean)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B tableMenuButtonVisible(boolean value)
{
this.hasTableMenuButtonVisible = true;
this.valTableMenuButtonVisible = value;
return (B) this;
}
/**
* 設定集合屬性{@link TableView#getVisibleLeafColumns}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
* @deprecated 屬性值並非{@link javafx.collections.ObservableList}
*/
@Deprecated
@SuppressWarnings("unchecked")
public final B visibleLeafColumns(java.util.Collection<? extends javafx.scene.control.TableColumn<S, ?>> value)
{
this.hasVisibleLeafColumns = true;
this.valVisibleLeafColumns = (java.util.Collection<javafx.scene.control.TableColumn<S, ?>>) value;
return (B) this;
}
/**
* 設定集合屬性{@link TableView#getVisibleLeafColumns}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SafeVarargs
@SuppressWarnings("unchecked")
public final B visibleLeafColumns(javafx.scene.control.TableColumn<S, ?>... value)
{
this.hasVisibleLeafColumns = true;
this.valVisibleLeafColumns = java.util.Arrays.asList(value);
return (B) this;
}
/**
* 增加集合屬性{@link TableView#getVisibleLeafColumns}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B visibleLeafColumnsAdd(java.util.Collection<? extends javafx.scene.control.TableColumn<S, ?>> value)
{
java.util.Objects.requireNonNull(value);
this.hasVisibleLeafColumns = true;
if (this.valVisibleLeafColumns == null)
this.valVisibleLeafColumns = new java.util.ArrayList<>(value.size());
this.valVisibleLeafColumns.addAll(value);
return (B) this;
}
/**
* 增加集合屬性{@link TableView#getVisibleLeafColumns}的內容。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SafeVarargs
@SuppressWarnings("unchecked")
public final B visibleLeafColumnsAdd(javafx.scene.control.TableColumn<S, ?>... value)
{
java.util.Objects.requireNonNull(value);
this.hasVisibleLeafColumns = true;
if (this.valVisibleLeafColumns == null)
this.valVisibleLeafColumns = new java.util.ArrayList<>(value.length);
this.valVisibleLeafColumns.addAll(java.util.Arrays.asList(value));
return (B) this;
}
/**
* 增加集合屬性{@link TableView#getVisibleLeafColumns}的內容,排除null項目。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B visibleLeafColumnsAddNonNull(java.util.Collection<? extends javafx.scene.control.TableColumn<S, ?>> value)
{
java.util.Objects.requireNonNull(value);
this.hasVisibleLeafColumns = true;
if (this.valVisibleLeafColumns == null)
this.valVisibleLeafColumns = new java.util.ArrayList<>(value.size());
for (javafx.scene.control.TableColumn<S, ?> i : value)
if (i != null)
this.valVisibleLeafColumns.add(i);
return (B) this;
}
/**
* 增加集合屬性{@link TableView#getVisibleLeafColumns}的內容,排除null項目。
*
* @param value 新的集合內容
* @return 目前的建構器(this)
*/
@SafeVarargs
@SuppressWarnings("unchecked")
public final B visibleLeafColumnsAddNonNull(javafx.scene.control.TableColumn<S, ?>... value)
{
java.util.Objects.requireNonNull(value);
this.hasVisibleLeafColumns = true;
if (this.valVisibleLeafColumns == null)
this.valVisibleLeafColumns = new java.util.ArrayList<>(value.length);
for (javafx.scene.control.TableColumn<S, ?> i : value)
if (i != null)
this.valVisibleLeafColumns.add(i);
return (B) this;
}
/**
* 設定屬性{@link TableView#columnResizePolicyProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindColumnResizePolicy(javafx.beans.value.ObservableValue<? extends javafx.util.Callback<javafx.scene.control.TableView.ResizeFeatures, java.lang.Boolean>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1ColumnResizePolicy = true;
this.obsrv1ColumnResizePolicy = source;
this.bound2ColumnResizePolicy = false;
this.obsrv2ColumnResizePolicy = null;
return (B) this;
}
/**
* 設定屬性{@link TableView#columnResizePolicyProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalColumnResizePolicy(javafx.beans.property.Property<javafx.util.Callback<javafx.scene.control.TableView.ResizeFeatures, java.lang.Boolean>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1ColumnResizePolicy = false;
this.obsrv1ColumnResizePolicy = null;
this.bound2ColumnResizePolicy = true;
this.obsrv2ColumnResizePolicy = source;
return (B) this;
}
/**
* 設定屬性{@link TableView#editableProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindEditable(javafx.beans.value.ObservableValue<? extends Boolean> source)
{
java.util.Objects.requireNonNull(source);
this.bound1Editable = true;
this.obsrv1Editable = source;
this.bound2Editable = false;
this.obsrv2Editable = null;
return (B) this;
}
/**
* 設定屬性{@link TableView#editableProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalEditable(javafx.beans.property.Property<Boolean> source)
{
java.util.Objects.requireNonNull(source);
this.bound1Editable = false;
this.obsrv1Editable = null;
this.bound2Editable = true;
this.obsrv2Editable = source;
return (B) this;
}
/**
* 設定屬性{@link TableView#fixedCellSizeProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindFixedCellSize(javafx.beans.value.ObservableValue<? extends Number> source)
{
java.util.Objects.requireNonNull(source);
this.bound1FixedCellSize = true;
this.obsrv1FixedCellSize = source;
this.bound2FixedCellSize = false;
this.obsrv2FixedCellSize = null;
return (B) this;
}
/**
* 設定屬性{@link TableView#fixedCellSizeProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalFixedCellSize(javafx.beans.property.Property<Number> source)
{
java.util.Objects.requireNonNull(source);
this.bound1FixedCellSize = false;
this.obsrv1FixedCellSize = null;
this.bound2FixedCellSize = true;
this.obsrv2FixedCellSize = source;
return (B) this;
}
/**
* 設定屬性{@link TableView#focusModelProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindFocusModel(javafx.beans.value.ObservableValue<? extends javafx.scene.control.TableView.TableViewFocusModel<S>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1FocusModel = true;
this.obsrv1FocusModel = source;
this.bound2FocusModel = false;
this.obsrv2FocusModel = null;
return (B) this;
}
/**
* 設定屬性{@link TableView#focusModelProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalFocusModel(javafx.beans.property.Property<javafx.scene.control.TableView.TableViewFocusModel<S>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1FocusModel = false;
this.obsrv1FocusModel = null;
this.bound2FocusModel = true;
this.obsrv2FocusModel = source;
return (B) this;
}
/**
* 設定屬性{@link TableView#itemsProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindItems(javafx.beans.value.ObservableValue<? extends javafx.collections.ObservableList<S>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1Items = true;
this.obsrv1Items = source;
this.bound2Items = false;
this.obsrv2Items = null;
return (B) this;
}
/**
* 設定屬性{@link TableView#itemsProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalItems(javafx.beans.property.Property<javafx.collections.ObservableList<S>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1Items = false;
this.obsrv1Items = null;
this.bound2Items = true;
this.obsrv2Items = source;
return (B) this;
}
/**
* 設定屬性{@link TableView#onScrollToColumnProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindOnScrollToColumn(javafx.beans.value.ObservableValue<? extends javafx.event.EventHandler<javafx.scene.control.ScrollToEvent<javafx.scene.control.TableColumn<S, ?>>>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1OnScrollToColumn = true;
this.obsrv1OnScrollToColumn = source;
this.bound2OnScrollToColumn = false;
this.obsrv2OnScrollToColumn = null;
return (B) this;
}
/**
* 設定屬性{@link TableView#onScrollToColumnProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalOnScrollToColumn(javafx.beans.property.Property<javafx.event.EventHandler<javafx.scene.control.ScrollToEvent<javafx.scene.control.TableColumn<S, ?>>>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1OnScrollToColumn = false;
this.obsrv1OnScrollToColumn = null;
this.bound2OnScrollToColumn = true;
this.obsrv2OnScrollToColumn = source;
return (B) this;
}
/**
* 設定屬性{@link TableView#onScrollToProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindOnScrollTo(javafx.beans.value.ObservableValue<? extends javafx.event.EventHandler<javafx.scene.control.ScrollToEvent<java.lang.Integer>>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1OnScrollTo = true;
this.obsrv1OnScrollTo = source;
this.bound2OnScrollTo = false;
this.obsrv2OnScrollTo = null;
return (B) this;
}
/**
* 設定屬性{@link TableView#onScrollToProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalOnScrollTo(javafx.beans.property.Property<javafx.event.EventHandler<javafx.scene.control.ScrollToEvent<java.lang.Integer>>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1OnScrollTo = false;
this.obsrv1OnScrollTo = null;
this.bound2OnScrollTo = true;
this.obsrv2OnScrollTo = source;
return (B) this;
}
/**
* 設定屬性{@link TableView#onSortProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindOnSort(javafx.beans.value.ObservableValue<? extends javafx.event.EventHandler<javafx.scene.control.SortEvent<javafx.scene.control.TableView<S>>>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1OnSort = true;
this.obsrv1OnSort = source;
this.bound2OnSort = false;
this.obsrv2OnSort = null;
return (B) this;
}
/**
* 設定屬性{@link TableView#onSortProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalOnSort(javafx.beans.property.Property<javafx.event.EventHandler<javafx.scene.control.SortEvent<javafx.scene.control.TableView<S>>>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1OnSort = false;
this.obsrv1OnSort = null;
this.bound2OnSort = true;
this.obsrv2OnSort = source;
return (B) this;
}
/**
* 設定屬性{@link TableView#placeholderProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindPlaceholder(javafx.beans.value.ObservableValue<? extends javafx.scene.Node> source)
{
java.util.Objects.requireNonNull(source);
this.bound1Placeholder = true;
this.obsrv1Placeholder = source;
this.bound2Placeholder = false;
this.obsrv2Placeholder = null;
return (B) this;
}
/**
* 設定屬性{@link TableView#placeholderProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalPlaceholder(javafx.beans.property.Property<javafx.scene.Node> source)
{
java.util.Objects.requireNonNull(source);
this.bound1Placeholder = false;
this.obsrv1Placeholder = null;
this.bound2Placeholder = true;
this.obsrv2Placeholder = source;
return (B) this;
}
/**
* 設定屬性{@link TableView#rowFactoryProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindRowFactory(javafx.beans.value.ObservableValue<? extends javafx.util.Callback<javafx.scene.control.TableView<S>, javafx.scene.control.TableRow<S>>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1RowFactory = true;
this.obsrv1RowFactory = source;
this.bound2RowFactory = false;
this.obsrv2RowFactory = null;
return (B) this;
}
/**
* 設定屬性{@link TableView#rowFactoryProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalRowFactory(javafx.beans.property.Property<javafx.util.Callback<javafx.scene.control.TableView<S>, javafx.scene.control.TableRow<S>>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1RowFactory = false;
this.obsrv1RowFactory = null;
this.bound2RowFactory = true;
this.obsrv2RowFactory = source;
return (B) this;
}
/**
* 設定屬性{@link TableView#selectionModelProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindSelectionModel(javafx.beans.value.ObservableValue<? extends javafx.scene.control.TableView.TableViewSelectionModel<S>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1SelectionModel = true;
this.obsrv1SelectionModel = source;
this.bound2SelectionModel = false;
this.obsrv2SelectionModel = null;
return (B) this;
}
/**
* 設定屬性{@link TableView#selectionModelProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalSelectionModel(javafx.beans.property.Property<javafx.scene.control.TableView.TableViewSelectionModel<S>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1SelectionModel = false;
this.obsrv1SelectionModel = null;
this.bound2SelectionModel = true;
this.obsrv2SelectionModel = source;
return (B) this;
}
/**
* 設定屬性{@link TableView#sortPolicyProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindSortPolicy(javafx.beans.value.ObservableValue<? extends javafx.util.Callback<javafx.scene.control.TableView<S>, java.lang.Boolean>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1SortPolicy = true;
this.obsrv1SortPolicy = source;
this.bound2SortPolicy = false;
this.obsrv2SortPolicy = null;
return (B) this;
}
/**
* 設定屬性{@link TableView#sortPolicyProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalSortPolicy(javafx.beans.property.Property<javafx.util.Callback<javafx.scene.control.TableView<S>, java.lang.Boolean>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1SortPolicy = false;
this.obsrv1SortPolicy = null;
this.bound2SortPolicy = true;
this.obsrv2SortPolicy = source;
return (B) this;
}
/**
* 設定屬性{@link TableView#tableMenuButtonVisibleProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindTableMenuButtonVisible(javafx.beans.value.ObservableValue<? extends Boolean> source)
{
java.util.Objects.requireNonNull(source);
this.bound1TableMenuButtonVisible = true;
this.obsrv1TableMenuButtonVisible = source;
this.bound2TableMenuButtonVisible = false;
this.obsrv2TableMenuButtonVisible = null;
return (B) this;
}
/**
* 設定屬性{@link TableView#tableMenuButtonVisibleProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalTableMenuButtonVisible(javafx.beans.property.Property<Boolean> source)
{
java.util.Objects.requireNonNull(source);
this.bound1TableMenuButtonVisible = false;
this.obsrv1TableMenuButtonVisible = null;
this.bound2TableMenuButtonVisible = true;
this.obsrv2TableMenuButtonVisible = source;
return (B) this;
}
/**
* 建構{@link TableView}物件。
*
* @return 新的{@link TableView}物件實體
*/
@Override
@SuppressWarnings("unchecked")
public TableView<S> build()
{
TableView<S> instance = new TableView<S>();
this.applyTo((Z) instance);
this.doAfterBuild((Z) instance);
return instance;
}
/**
* 建構{@link TableView}物件。
*
* @return 新的{@link TableView}物件實體
*/
@SuppressWarnings("unchecked")
public TableView<S> build(javafx.collections.ObservableList<S> arg0)
{
TableView<S> instance = new TableView<S>(arg0);
this.applyTo((Z) instance);
this.doAfterBuild((Z) instance);
return instance;
}
}