// @formatter:off /* * Unlicensed, generated by javafx.ftl */ package javafx.scene.control; /** * {@link MenuItem}建構器。 * * @author JarReflectionDataLoader-1.0.0 * @version jfxrt.jar * @param <Z> 要建構的物件型態(需繼承{@link MenuItem}) * @param <B> 建構器本身的型態(需繼承{@link MenuItemMaker}) */ @javax.annotation.Generated("Generated by javafx.ftl") @SuppressWarnings("all") public class MenuItemMaker<Z extends MenuItem, B extends MenuItemMaker<Z, B>> extends jxtn.jfx.makers.AbstractMaker<Z, B> implements MenuItemMakerExt<Z, B> { private boolean hasAccelerator; private javafx.scene.input.KeyCombination valAccelerator; private boolean hasDisable; private boolean valDisable; private boolean hasGraphic; private javafx.scene.Node valGraphic; private boolean hasId; private java.lang.String valId; private boolean hasMnemonicParsing; private boolean valMnemonicParsing; private boolean hasOnAction; private javafx.event.EventHandler<javafx.event.ActionEvent> valOnAction; private boolean hasOnMenuValidation; private javafx.event.EventHandler<javafx.event.Event> valOnMenuValidation; private boolean hasStyle; private java.lang.String valStyle; private boolean hasStyleClass; private java.util.Collection<java.lang.String> valStyleClass; private boolean hasText; private java.lang.String valText; private boolean hasUserData; private java.lang.Object valUserData; private boolean hasVisible; private boolean valVisible; private boolean bound1Accelerator; private boolean bound2Accelerator; private javafx.beans.value.ObservableValue<? extends javafx.scene.input.KeyCombination> obsrv1Accelerator; private javafx.beans.property.Property<javafx.scene.input.KeyCombination> obsrv2Accelerator; private boolean bound1Disable; private boolean bound2Disable; private javafx.beans.value.ObservableValue<? extends Boolean> obsrv1Disable; private javafx.beans.property.Property<Boolean> obsrv2Disable; private boolean bound1Graphic; private boolean bound2Graphic; private javafx.beans.value.ObservableValue<? extends javafx.scene.Node> obsrv1Graphic; private javafx.beans.property.Property<javafx.scene.Node> obsrv2Graphic; private boolean bound1Id; private boolean bound2Id; private javafx.beans.value.ObservableValue<? extends String> obsrv1Id; private javafx.beans.property.Property<String> obsrv2Id; private boolean bound1MnemonicParsing; private boolean bound2MnemonicParsing; private javafx.beans.value.ObservableValue<? extends Boolean> obsrv1MnemonicParsing; private javafx.beans.property.Property<Boolean> obsrv2MnemonicParsing; private boolean bound1OnAction; private boolean bound2OnAction; private javafx.beans.value.ObservableValue<? extends javafx.event.EventHandler<javafx.event.ActionEvent>> obsrv1OnAction; private javafx.beans.property.Property<javafx.event.EventHandler<javafx.event.ActionEvent>> obsrv2OnAction; private boolean bound1OnMenuValidation; private boolean bound2OnMenuValidation; private javafx.beans.value.ObservableValue<? extends javafx.event.EventHandler<javafx.event.Event>> obsrv1OnMenuValidation; private javafx.beans.property.Property<javafx.event.EventHandler<javafx.event.Event>> obsrv2OnMenuValidation; private boolean bound1Style; private boolean bound2Style; private javafx.beans.value.ObservableValue<? extends String> obsrv1Style; private javafx.beans.property.Property<String> obsrv2Style; private boolean bound1Text; private boolean bound2Text; private javafx.beans.value.ObservableValue<? extends String> obsrv1Text; private javafx.beans.property.Property<String> obsrv2Text; private boolean bound1Visible; private boolean bound2Visible; private javafx.beans.value.ObservableValue<? extends Boolean> obsrv1Visible; private javafx.beans.property.Property<Boolean> obsrv2Visible; @Override public void applyTo(Z instance) { super.applyTo(instance); if (this.hasAccelerator) instance.setAccelerator(this.valAccelerator); if (this.hasDisable) instance.setDisable(this.valDisable); if (this.hasGraphic) instance.setGraphic(this.valGraphic); if (this.hasId) instance.setId(this.valId); if (this.hasMnemonicParsing) instance.setMnemonicParsing(this.valMnemonicParsing); if (this.hasOnAction) instance.setOnAction(this.valOnAction); if (this.hasOnMenuValidation) instance.setOnMenuValidation(this.valOnMenuValidation); if (this.hasStyle) instance.setStyle(this.valStyle); if (this.hasStyleClass) instance.getStyleClass().addAll(this.valStyleClass); if (this.hasText) instance.setText(this.valText); if (this.hasUserData) instance.setUserData(this.valUserData); if (this.hasVisible) instance.setVisible(this.valVisible); if (this.bound1Accelerator) instance.acceleratorProperty().bind(this.obsrv1Accelerator); if (this.bound2Accelerator) instance.acceleratorProperty().bindBidirectional(this.obsrv2Accelerator); if (this.bound1Disable) instance.disableProperty().bind(this.obsrv1Disable); if (this.bound2Disable) instance.disableProperty().bindBidirectional(this.obsrv2Disable); if (this.bound1Graphic) instance.graphicProperty().bind(this.obsrv1Graphic); if (this.bound2Graphic) instance.graphicProperty().bindBidirectional(this.obsrv2Graphic); if (this.bound1Id) instance.idProperty().bind(this.obsrv1Id); if (this.bound2Id) instance.idProperty().bindBidirectional(this.obsrv2Id); if (this.bound1MnemonicParsing) instance.mnemonicParsingProperty().bind(this.obsrv1MnemonicParsing); if (this.bound2MnemonicParsing) instance.mnemonicParsingProperty().bindBidirectional(this.obsrv2MnemonicParsing); if (this.bound1OnAction) instance.onActionProperty().bind(this.obsrv1OnAction); if (this.bound2OnAction) instance.onActionProperty().bindBidirectional(this.obsrv2OnAction); if (this.bound1OnMenuValidation) instance.onMenuValidationProperty().bind(this.obsrv1OnMenuValidation); if (this.bound2OnMenuValidation) instance.onMenuValidationProperty().bindBidirectional(this.obsrv2OnMenuValidation); if (this.bound1Style) instance.styleProperty().bind(this.obsrv1Style); if (this.bound2Style) instance.styleProperty().bindBidirectional(this.obsrv2Style); if (this.bound1Text) instance.textProperty().bind(this.obsrv1Text); if (this.bound2Text) instance.textProperty().bindBidirectional(this.obsrv2Text); if (this.bound1Visible) instance.visibleProperty().bind(this.obsrv1Visible); if (this.bound2Visible) instance.visibleProperty().bindBidirectional(this.obsrv2Visible); } /** * 設定屬性{@link MenuItem#setAccelerator(javafx.scene.input.KeyCombination)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B accelerator(javafx.scene.input.KeyCombination value) { this.hasAccelerator = true; this.valAccelerator = value; return (B) this; } /** * 設定屬性{@link MenuItem#setDisable(boolean)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B disable(boolean value) { this.hasDisable = true; this.valDisable = value; return (B) this; } /** * 設定屬性{@link MenuItem#setGraphic(javafx.scene.Node)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B graphic(javafx.scene.Node value) { this.hasGraphic = true; this.valGraphic = value; return (B) this; } /** * 設定屬性{@link MenuItem#setId(java.lang.String)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B id(java.lang.String value) { this.hasId = true; this.valId = value; return (B) this; } /** * 設定屬性{@link MenuItem#setMnemonicParsing(boolean)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B mnemonicParsing(boolean value) { this.hasMnemonicParsing = true; this.valMnemonicParsing = value; return (B) this; } /** * 設定屬性{@link MenuItem#setOnAction(javafx.event.EventHandler)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B onAction(javafx.event.EventHandler<javafx.event.ActionEvent> value) { this.hasOnAction = true; this.valOnAction = value; return (B) this; } /** * 設定屬性{@link MenuItem#setOnMenuValidation(javafx.event.EventHandler)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B onMenuValidation(javafx.event.EventHandler<javafx.event.Event> value) { this.hasOnMenuValidation = true; this.valOnMenuValidation = value; return (B) this; } /** * 設定屬性{@link MenuItem#setStyle(java.lang.String)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B style(java.lang.String value) { this.hasStyle = true; this.valStyle = value; return (B) this; } /** * 設定集合屬性{@link MenuItem#getStyleClass}的內容。 * * @param value 新的集合內容 * @return 目前的建構器(this) * @deprecated 屬性值並非{@link javafx.collections.ObservableList} */ @Deprecated @SuppressWarnings("unchecked") public final B styleClass(java.util.Collection<? extends java.lang.String> value) { this.hasStyleClass = true; this.valStyleClass = (java.util.Collection<java.lang.String>) value; return (B) this; } /** * 設定集合屬性{@link MenuItem#getStyleClass}的內容。 * * @param value 新的集合內容 * @return 目前的建構器(this) */ @SafeVarargs @SuppressWarnings("unchecked") public final B styleClass(java.lang.String... value) { this.hasStyleClass = true; this.valStyleClass = java.util.Arrays.asList(value); return (B) this; } /** * 增加集合屬性{@link MenuItem#getStyleClass}的內容。 * * @param value 新的集合內容 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B styleClassAdd(java.util.Collection<? extends java.lang.String> value) { java.util.Objects.requireNonNull(value); this.hasStyleClass = true; if (this.valStyleClass == null) this.valStyleClass = new java.util.ArrayList<>(value.size()); this.valStyleClass.addAll(value); return (B) this; } /** * 增加集合屬性{@link MenuItem#getStyleClass}的內容。 * * @param value 新的集合內容 * @return 目前的建構器(this) */ @SafeVarargs @SuppressWarnings("unchecked") public final B styleClassAdd(java.lang.String... value) { java.util.Objects.requireNonNull(value); this.hasStyleClass = true; if (this.valStyleClass == null) this.valStyleClass = new java.util.ArrayList<>(value.length); this.valStyleClass.addAll(java.util.Arrays.asList(value)); return (B) this; } /** * 增加集合屬性{@link MenuItem#getStyleClass}的內容,排除null項目。 * * @param value 新的集合內容 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B styleClassAddNonNull(java.util.Collection<? extends java.lang.String> value) { java.util.Objects.requireNonNull(value); this.hasStyleClass = true; if (this.valStyleClass == null) this.valStyleClass = new java.util.ArrayList<>(value.size()); for (java.lang.String i : value) if (i != null) this.valStyleClass.add(i); return (B) this; } /** * 增加集合屬性{@link MenuItem#getStyleClass}的內容,排除null項目。 * * @param value 新的集合內容 * @return 目前的建構器(this) */ @SafeVarargs @SuppressWarnings("unchecked") public final B styleClassAddNonNull(java.lang.String... value) { java.util.Objects.requireNonNull(value); this.hasStyleClass = true; if (this.valStyleClass == null) this.valStyleClass = new java.util.ArrayList<>(value.length); for (java.lang.String i : value) if (i != null) this.valStyleClass.add(i); return (B) this; } /** * 設定屬性{@link MenuItem#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 MenuItem#setUserData(java.lang.Object)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B userData(java.lang.Object value) { this.hasUserData = true; this.valUserData = value; return (B) this; } /** * 設定屬性{@link MenuItem#setVisible(boolean)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B visible(boolean value) { this.hasVisible = true; this.valVisible = value; return (B) this; } /** * 設定屬性{@link MenuItem#acceleratorProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindAccelerator(javafx.beans.value.ObservableValue<? extends javafx.scene.input.KeyCombination> source) { java.util.Objects.requireNonNull(source); this.bound1Accelerator = true; this.obsrv1Accelerator = source; this.bound2Accelerator = false; this.obsrv2Accelerator = null; return (B) this; } /** * 設定屬性{@link MenuItem#acceleratorProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalAccelerator(javafx.beans.property.Property<javafx.scene.input.KeyCombination> source) { java.util.Objects.requireNonNull(source); this.bound1Accelerator = false; this.obsrv1Accelerator = null; this.bound2Accelerator = true; this.obsrv2Accelerator = source; return (B) this; } /** * 設定屬性{@link MenuItem#disableProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindDisable(javafx.beans.value.ObservableValue<? extends Boolean> source) { java.util.Objects.requireNonNull(source); this.bound1Disable = true; this.obsrv1Disable = source; this.bound2Disable = false; this.obsrv2Disable = null; return (B) this; } /** * 設定屬性{@link MenuItem#disableProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalDisable(javafx.beans.property.Property<Boolean> source) { java.util.Objects.requireNonNull(source); this.bound1Disable = false; this.obsrv1Disable = null; this.bound2Disable = true; this.obsrv2Disable = source; return (B) this; } /** * 設定屬性{@link MenuItem#graphicProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindGraphic(javafx.beans.value.ObservableValue<? extends javafx.scene.Node> source) { java.util.Objects.requireNonNull(source); this.bound1Graphic = true; this.obsrv1Graphic = source; this.bound2Graphic = false; this.obsrv2Graphic = null; return (B) this; } /** * 設定屬性{@link MenuItem#graphicProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalGraphic(javafx.beans.property.Property<javafx.scene.Node> source) { java.util.Objects.requireNonNull(source); this.bound1Graphic = false; this.obsrv1Graphic = null; this.bound2Graphic = true; this.obsrv2Graphic = source; return (B) this; } /** * 設定屬性{@link MenuItem#idProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindId(javafx.beans.value.ObservableValue<? extends String> source) { java.util.Objects.requireNonNull(source); this.bound1Id = true; this.obsrv1Id = source; this.bound2Id = false; this.obsrv2Id = null; return (B) this; } /** * 設定屬性{@link MenuItem#idProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalId(javafx.beans.property.Property<String> source) { java.util.Objects.requireNonNull(source); this.bound1Id = false; this.obsrv1Id = null; this.bound2Id = true; this.obsrv2Id = source; return (B) this; } /** * 設定屬性{@link MenuItem#mnemonicParsingProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindMnemonicParsing(javafx.beans.value.ObservableValue<? extends Boolean> source) { java.util.Objects.requireNonNull(source); this.bound1MnemonicParsing = true; this.obsrv1MnemonicParsing = source; this.bound2MnemonicParsing = false; this.obsrv2MnemonicParsing = null; return (B) this; } /** * 設定屬性{@link MenuItem#mnemonicParsingProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalMnemonicParsing(javafx.beans.property.Property<Boolean> source) { java.util.Objects.requireNonNull(source); this.bound1MnemonicParsing = false; this.obsrv1MnemonicParsing = null; this.bound2MnemonicParsing = true; this.obsrv2MnemonicParsing = source; return (B) this; } /** * 設定屬性{@link MenuItem#onActionProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindOnAction(javafx.beans.value.ObservableValue<? extends javafx.event.EventHandler<javafx.event.ActionEvent>> source) { java.util.Objects.requireNonNull(source); this.bound1OnAction = true; this.obsrv1OnAction = source; this.bound2OnAction = false; this.obsrv2OnAction = null; return (B) this; } /** * 設定屬性{@link MenuItem#onActionProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalOnAction(javafx.beans.property.Property<javafx.event.EventHandler<javafx.event.ActionEvent>> source) { java.util.Objects.requireNonNull(source); this.bound1OnAction = false; this.obsrv1OnAction = null; this.bound2OnAction = true; this.obsrv2OnAction = source; return (B) this; } /** * 設定屬性{@link MenuItem#onMenuValidationProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindOnMenuValidation(javafx.beans.value.ObservableValue<? extends javafx.event.EventHandler<javafx.event.Event>> source) { java.util.Objects.requireNonNull(source); this.bound1OnMenuValidation = true; this.obsrv1OnMenuValidation = source; this.bound2OnMenuValidation = false; this.obsrv2OnMenuValidation = null; return (B) this; } /** * 設定屬性{@link MenuItem#onMenuValidationProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalOnMenuValidation(javafx.beans.property.Property<javafx.event.EventHandler<javafx.event.Event>> source) { java.util.Objects.requireNonNull(source); this.bound1OnMenuValidation = false; this.obsrv1OnMenuValidation = null; this.bound2OnMenuValidation = true; this.obsrv2OnMenuValidation = source; return (B) this; } /** * 設定屬性{@link MenuItem#styleProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindStyle(javafx.beans.value.ObservableValue<? extends String> source) { java.util.Objects.requireNonNull(source); this.bound1Style = true; this.obsrv1Style = source; this.bound2Style = false; this.obsrv2Style = null; return (B) this; } /** * 設定屬性{@link MenuItem#styleProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalStyle(javafx.beans.property.Property<String> source) { java.util.Objects.requireNonNull(source); this.bound1Style = false; this.obsrv1Style = null; this.bound2Style = true; this.obsrv2Style = source; return (B) this; } /** * 設定屬性{@link MenuItem#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 MenuItem#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 MenuItem#visibleProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindVisible(javafx.beans.value.ObservableValue<? extends Boolean> source) { java.util.Objects.requireNonNull(source); this.bound1Visible = true; this.obsrv1Visible = source; this.bound2Visible = false; this.obsrv2Visible = null; return (B) this; } /** * 設定屬性{@link MenuItem#visibleProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalVisible(javafx.beans.property.Property<Boolean> source) { java.util.Objects.requireNonNull(source); this.bound1Visible = false; this.obsrv1Visible = null; this.bound2Visible = true; this.obsrv2Visible = source; return (B) this; } /** * 建構{@link MenuItem}物件。 * * @return 新的{@link MenuItem}物件實體 */ @Override @SuppressWarnings("unchecked") public MenuItem build() { MenuItem instance = new MenuItem(); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } /** * 建構{@link MenuItem}物件。 * * @return 新的{@link MenuItem}物件實體 */ @SuppressWarnings("unchecked") public MenuItem build(java.lang.String arg0) { MenuItem instance = new MenuItem(arg0); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } /** * 建構{@link MenuItem}物件。 * * @return 新的{@link MenuItem}物件實體 */ @SuppressWarnings("unchecked") public MenuItem build(java.lang.String arg0, javafx.scene.Node arg1) { MenuItem instance = new MenuItem(arg0, arg1); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } }