// @formatter:off
/*
* Unlicensed, generated by javafx.ftl
*/
package javafx.scene.chart;
/**
* {@link PieChart}建構器。
*
* @author JarReflectionDataLoader-1.0.0
* @version jfxrt.jar
* @param <Z> 要建構的物件型態(需繼承{@link PieChart})
* @param <B> 建構器本身的型態(需繼承{@link PieChartMaker})
*/
@javax.annotation.Generated("Generated by javafx.ftl")
@SuppressWarnings("all")
public class PieChartMaker<Z extends PieChart, B extends PieChartMaker<Z, B>>
extends javafx.scene.chart.ChartMaker<Z, B>
implements PieChartMakerExt<Z, B>
{
private boolean hasClockwise;
private boolean valClockwise;
private boolean hasData;
private javafx.collections.ObservableList<javafx.scene.chart.PieChart.Data> valData;
private boolean hasLabelLineLength;
private double valLabelLineLength;
private boolean hasLabelsVisible;
private boolean valLabelsVisible;
private boolean hasStartAngle;
private double valStartAngle;
private boolean bound1Clockwise;
private boolean bound2Clockwise;
private javafx.beans.value.ObservableValue<? extends Boolean> obsrv1Clockwise;
private javafx.beans.property.Property<Boolean> obsrv2Clockwise;
private boolean bound1Data;
private boolean bound2Data;
private javafx.beans.value.ObservableValue<? extends javafx.collections.ObservableList<javafx.scene.chart.PieChart.Data>> obsrv1Data;
private javafx.beans.property.Property<javafx.collections.ObservableList<javafx.scene.chart.PieChart.Data>> obsrv2Data;
private boolean bound1LabelLineLength;
private boolean bound2LabelLineLength;
private javafx.beans.value.ObservableValue<? extends Number> obsrv1LabelLineLength;
private javafx.beans.property.Property<Number> obsrv2LabelLineLength;
private boolean bound1LabelsVisible;
private boolean bound2LabelsVisible;
private javafx.beans.value.ObservableValue<? extends Boolean> obsrv1LabelsVisible;
private javafx.beans.property.Property<Boolean> obsrv2LabelsVisible;
private boolean bound1StartAngle;
private boolean bound2StartAngle;
private javafx.beans.value.ObservableValue<? extends Number> obsrv1StartAngle;
private javafx.beans.property.Property<Number> obsrv2StartAngle;
@Override
public void applyTo(Z instance)
{
super.applyTo(instance);
if (this.hasClockwise)
instance.setClockwise(this.valClockwise);
if (this.hasData)
instance.setData(this.valData);
if (this.hasLabelLineLength)
instance.setLabelLineLength(this.valLabelLineLength);
if (this.hasLabelsVisible)
instance.setLabelsVisible(this.valLabelsVisible);
if (this.hasStartAngle)
instance.setStartAngle(this.valStartAngle);
if (this.bound1Clockwise)
instance.clockwiseProperty().bind(this.obsrv1Clockwise);
if (this.bound2Clockwise)
instance.clockwiseProperty().bindBidirectional(this.obsrv2Clockwise);
if (this.bound1Data)
instance.dataProperty().bind(this.obsrv1Data);
if (this.bound2Data)
instance.dataProperty().bindBidirectional(this.obsrv2Data);
if (this.bound1LabelLineLength)
instance.labelLineLengthProperty().bind(this.obsrv1LabelLineLength);
if (this.bound2LabelLineLength)
instance.labelLineLengthProperty().bindBidirectional(this.obsrv2LabelLineLength);
if (this.bound1LabelsVisible)
instance.labelsVisibleProperty().bind(this.obsrv1LabelsVisible);
if (this.bound2LabelsVisible)
instance.labelsVisibleProperty().bindBidirectional(this.obsrv2LabelsVisible);
if (this.bound1StartAngle)
instance.startAngleProperty().bind(this.obsrv1StartAngle);
if (this.bound2StartAngle)
instance.startAngleProperty().bindBidirectional(this.obsrv2StartAngle);
}
/**
* 設定屬性{@link PieChart#setClockwise(boolean)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B clockwise(boolean value)
{
this.hasClockwise = true;
this.valClockwise = value;
return (B) this;
}
/**
* 設定屬性{@link PieChart#setData(javafx.collections.ObservableList)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B data(javafx.collections.ObservableList<javafx.scene.chart.PieChart.Data> value)
{
this.hasData = true;
this.valData = value;
return (B) this;
}
/**
* 設定屬性{@link PieChart#setLabelLineLength(double)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B labelLineLength(double value)
{
this.hasLabelLineLength = true;
this.valLabelLineLength = value;
return (B) this;
}
/**
* 設定屬性{@link PieChart#setLabelsVisible(boolean)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B labelsVisible(boolean value)
{
this.hasLabelsVisible = true;
this.valLabelsVisible = value;
return (B) this;
}
/**
* 設定屬性{@link PieChart#setStartAngle(double)}。
*
* @param value 新的屬性值
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public B startAngle(double value)
{
this.hasStartAngle = true;
this.valStartAngle = value;
return (B) this;
}
/**
* 設定屬性{@link PieChart#clockwiseProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindClockwise(javafx.beans.value.ObservableValue<? extends Boolean> source)
{
java.util.Objects.requireNonNull(source);
this.bound1Clockwise = true;
this.obsrv1Clockwise = source;
this.bound2Clockwise = false;
this.obsrv2Clockwise = null;
return (B) this;
}
/**
* 設定屬性{@link PieChart#clockwiseProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalClockwise(javafx.beans.property.Property<Boolean> source)
{
java.util.Objects.requireNonNull(source);
this.bound1Clockwise = false;
this.obsrv1Clockwise = null;
this.bound2Clockwise = true;
this.obsrv2Clockwise = source;
return (B) this;
}
/**
* 設定屬性{@link PieChart#dataProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindData(javafx.beans.value.ObservableValue<? extends javafx.collections.ObservableList<javafx.scene.chart.PieChart.Data>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1Data = true;
this.obsrv1Data = source;
this.bound2Data = false;
this.obsrv2Data = null;
return (B) this;
}
/**
* 設定屬性{@link PieChart#dataProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalData(javafx.beans.property.Property<javafx.collections.ObservableList<javafx.scene.chart.PieChart.Data>> source)
{
java.util.Objects.requireNonNull(source);
this.bound1Data = false;
this.obsrv1Data = null;
this.bound2Data = true;
this.obsrv2Data = source;
return (B) this;
}
/**
* 設定屬性{@link PieChart#labelLineLengthProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindLabelLineLength(javafx.beans.value.ObservableValue<? extends Number> source)
{
java.util.Objects.requireNonNull(source);
this.bound1LabelLineLength = true;
this.obsrv1LabelLineLength = source;
this.bound2LabelLineLength = false;
this.obsrv2LabelLineLength = null;
return (B) this;
}
/**
* 設定屬性{@link PieChart#labelLineLengthProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalLabelLineLength(javafx.beans.property.Property<Number> source)
{
java.util.Objects.requireNonNull(source);
this.bound1LabelLineLength = false;
this.obsrv1LabelLineLength = null;
this.bound2LabelLineLength = true;
this.obsrv2LabelLineLength = source;
return (B) this;
}
/**
* 設定屬性{@link PieChart#labelsVisibleProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindLabelsVisible(javafx.beans.value.ObservableValue<? extends Boolean> source)
{
java.util.Objects.requireNonNull(source);
this.bound1LabelsVisible = true;
this.obsrv1LabelsVisible = source;
this.bound2LabelsVisible = false;
this.obsrv2LabelsVisible = null;
return (B) this;
}
/**
* 設定屬性{@link PieChart#labelsVisibleProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalLabelsVisible(javafx.beans.property.Property<Boolean> source)
{
java.util.Objects.requireNonNull(source);
this.bound1LabelsVisible = false;
this.obsrv1LabelsVisible = null;
this.bound2LabelsVisible = true;
this.obsrv2LabelsVisible = source;
return (B) this;
}
/**
* 設定屬性{@link PieChart#startAngleProperty}的連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindStartAngle(javafx.beans.value.ObservableValue<? extends Number> source)
{
java.util.Objects.requireNonNull(source);
this.bound1StartAngle = true;
this.obsrv1StartAngle = source;
this.bound2StartAngle = false;
this.obsrv2StartAngle = null;
return (B) this;
}
/**
* 設定屬性{@link PieChart#startAngleProperty}的雙向連結。
*
* @param value 新的屬性連結(單向)
* @return 目前的建構器(this)
*/
@SuppressWarnings("unchecked")
public final B bindBidirectionalStartAngle(javafx.beans.property.Property<Number> source)
{
java.util.Objects.requireNonNull(source);
this.bound1StartAngle = false;
this.obsrv1StartAngle = null;
this.bound2StartAngle = true;
this.obsrv2StartAngle = source;
return (B) this;
}
/**
* 建構{@link PieChart}物件。
*
* @return 新的{@link PieChart}物件實體
*/
@Override
@SuppressWarnings("unchecked")
public PieChart build()
{
PieChart instance = new PieChart();
this.applyTo((Z) instance);
this.doAfterBuild((Z) instance);
return instance;
}
/**
* 建構{@link PieChart}物件。
*
* @return 新的{@link PieChart}物件實體
*/
@SuppressWarnings("unchecked")
public PieChart build(javafx.collections.ObservableList<javafx.scene.chart.PieChart.Data> arg0)
{
PieChart instance = new PieChart(arg0);
this.applyTo((Z) instance);
this.doAfterBuild((Z) instance);
return instance;
}
}