Package com.dua3.utility.fx.controls
Schnittstelle InputBuilder<B extends InputBuilder<B>>
- Typparameter:
B- the generic type of theInputBuilder
- Alle bekannten Implementierungsklassen:
InputDialogBuilder,InputGridBuilder,InputPaneBuilder
public interface InputBuilder<B extends InputBuilder<B>>
A builder class for creating input controls.
The InputBuilder class provides methods to add various types of labeled and unlabeled input controls such as text fields, checkboxes, and combo boxes to a UI form. It allows customization of the control's ID, label text, default value, and validation rules. The builder pattern allows chaining of method calls to create complex input forms with ease.
-
Methodenübersicht
Modifizierer und TypMethodeBeschreibung<T> Badd(String id, Class<T> type, Supplier<T> dflt, InputControl<T> control) Add an unlabeled input control.<T> BAdd a labeled input control.Add a labeled input control.Add an unlabeled input control.default BAdd a labeled checkbox.checkBox(String id, String label, Supplier<Boolean> dflt, String text, Function<Boolean, Optional<String>> validate) Creates a checkbox with the given parameters.default BchooseFile(String id, String label, Supplier<@Nullable Path> dflt, FileDialogMode mode, boolean existingOnly, Collection<FileChooser.ExtensionFilter> filter) Add a file chooser.chooseFile(String id, String label, Supplier<Path> dflt, FileDialogMode mode, boolean existingOnly, Collection<FileChooser.ExtensionFilter> filter, Function<Path, Optional<String>> validate) Add a file chooser dialog to allow the user to select a file.columns(int columns) Set the number of columns for layout (default is 1).default <T> BAdd a labeled combobox.<T> BcomboBox(String id, String label, Supplier<T> dflt, Class<T> cls, Collection<T> items, Function<T, Optional<String>> validate) Creates a comboBox widget with the given parameters.default <T> BcomboBoxEx(String id, String label, @Nullable UnaryOperator<@Nullable T> edit, @Nullable Supplier<@Nullable T> add, @Nullable BiPredicate<ComboBoxEx<T>, T> remove, Function<T, String> format, Supplier<@Nullable T> dflt, Class<T> cls, Collection<T> items) Adds a labeled combo box control with extended functionality.<T> BcomboBoxEx(String id, String label, @Nullable UnaryOperator<T> edit, @Nullable Supplier<T> add, @Nullable BiPredicate<ComboBoxEx<T>, T> remove, Function<T, String> format, Supplier<T> dflt, Class<T> cls, Collection<T> items, Function<T, Optional<String>> validate) Returns a custom combo box with the specified parameters.default BAdd a labeled decimal input.Add a labeled decimal input.default BAdd a labeled integer input.integer(String id, String label, Supplier<Integer> dflt, Function<Integer, Optional<String>> validate) Add a labeled integer input.Add a labeled custom node to the grid.Add an unlabeled custom node to the grid.options(String id, String label, Supplier<com.dua3.utility.options.Arguments> dflt, Supplier<Collection<com.dua3.utility.options.Option<?>>> options) Add a labeled pane with options.options(String id, Supplier<com.dua3.utility.options.Arguments> dflt, Supplier<Collection<com.dua3.utility.options.Option<?>>> options) Add an unlabeled pane with options.default <T> BAdd a labeled list of radiobuttons.<T> BradioList(String id, String label, Supplier<T> dflt, Class<T> cls, Collection<T> items, Function<T, Optional<String>> validate) Creates a radio list component.default BAdd a labeled string input.Add a labeled string input.
-
Methodendetails
-
add
Add a labeled input control.- Typparameter:
T- the result type- Parameter:
id- the control's IDlabel- the label texttype- the result typedflt- supplier of default valuecontrol- the control- Gibt zurück:
this
-
add
Add an unlabeled input control.- Typparameter:
T- the result type- Parameter:
id- the control's IDtype- the result typedflt- supplier of default valuecontrol- the control- Gibt zurück:
this
-
addNode
Add a labeled input control.- Parameter:
id- the node's IDlabel- the label textnode- the node- Gibt zurück:
this
-
addNode
Add an unlabeled input control.- Parameter:
id- the node's IDnode- the node- Gibt zurück:
this
-
columns
Set the number of columns for layout (default is 1).- Parameter:
columns- the number of columns for laying out the input controls- Gibt zurück:
this
-
string
Add a labeled string input.- Parameter:
id- the IDlabel- the label textdflt- supplier of default value- Gibt zurück:
this
-
string
B string(String id, String label, Supplier<String> dflt, Function<String, Optional<String>> validate) Add a labeled string input.- Parameter:
id- the IDlabel- the label textdflt- supplier of default valuevalidate- validation callback, return error message if invalid, empty optional if valid- Gibt zurück:
this
-
integer
Add a labeled integer input.- Parameter:
id- the IDlabel- the label textdflt- supplier of default value- Gibt zurück:
this
-
integer
B integer(String id, String label, Supplier<Integer> dflt, Function<Integer, Optional<String>> validate) Add a labeled integer input.- Parameter:
id- the IDlabel- the label textdflt- supplier of default valuevalidate- validation callback, return error message if invalid, empty optional if valid- Gibt zurück:
this
-
decimal
Add a labeled decimal input.- Parameter:
id- the IDlabel- the label textdflt- supplier of default value- Gibt zurück:
this
-
decimal
B decimal(String id, String label, Supplier<Double> dflt, Function<Double, Optional<String>> validate) Add a labeled decimal input.- Parameter:
id- the IDlabel- the label textdflt- supplier of default valuevalidate- validation callback, return error message if invalid, empty optional if valid- Gibt zurück:
this
-
checkBox
Add a labeled checkbox.- Parameter:
id- the IDlabel- the label textdflt- supplier of default valuetext- the checkbox text- Gibt zurück:
this
-
checkBox
B checkBox(String id, String label, Supplier<Boolean> dflt, String text, Function<Boolean, Optional<String>> validate) Creates a checkbox with the given parameters.- Parameter:
id- the ID of the checkboxlabel- the label for the checkboxdflt- the default value of the checkboxtext- the text to display next to the checkboxvalidate- a function that takes a Boolean value and returns an optional validation message- Gibt zurück:
- the created checkbox
-
comboBox
default <T> B comboBox(String id, String label, Supplier<T> dflt, Class<T> cls, Collection<T> items) Add a labeled combobox.- Typparameter:
T- the item type- Parameter:
id- the IDlabel- the label textdflt- supplier of default valuecls- the result classitems- the items to choose from- Gibt zurück:
this
-
comboBox
<T> B comboBox(String id, String label, Supplier<T> dflt, Class<T> cls, Collection<T> items, Function<T, Optional<String>> validate) Creates a comboBox widget with the given parameters.- Typparameter:
T- the type of the comboBox items- Parameter:
id- the unique identifier for the comboBoxlabel- the label to display with the comboBoxdflt- the supplier function to provide the default value for the comboBoxcls- the class type of the comboBox itemsitems- the collection of items to populate the comboBoxvalidate- the function to validate the selected item in the comboBox- Gibt zurück:
- the comboBox widget
-
comboBoxEx
default <T> B comboBoxEx(String id, String label, @Nullable UnaryOperator<@Nullable T> edit, @Nullable Supplier<@Nullable T> add, @Nullable BiPredicate<ComboBoxEx<T>, T> remove, Function<T, String> format, Supplier<@Nullable T> dflt, Class<T> cls, Collection<T> items) Adds a labeled combo box control with extended functionality.- Typparameter:
T- the item type- Parameter:
id- the control's IDlabel- the label textedit- the action to be performed when an item is edited (optional)add- the action to be performed when a new item is added (optional)remove- the action to be performed when an item is removed (optional)format- the function to format the items in the combo boxdflt- the supplier of the default valuecls- the result class of the combo box itemsitems- the collection of items to choose from- Gibt zurück:
- the InputBuilder instance
-
comboBoxEx
<T> B comboBoxEx(String id, String label, @Nullable UnaryOperator<T> edit, @Nullable Supplier<T> add, @Nullable BiPredicate<ComboBoxEx<T>, T> remove, Function<T, String> format, Supplier<T> dflt, Class<T> cls, Collection<T> items, Function<T, Optional<String>> validate) Returns a custom combo box with the specified parameters.- Typparameter:
T- the type of objects in the combo box- Parameter:
id- the ID of the combo boxlabel- the label of the combo boxedit- a function to modify the selected item in the combo box, or null if editing is not allowedadd- a supplier to add a new item to the combo box, or null if adding is not allowedremove- a predicate to remove an item from the combo box, or null if removing is not allowedformat- a function to format the items of the combo box as stringsdflt- a supplier to provide a default item for the combo boxcls- the class of objects in the combo boxitems- the collection of items to populate the combo boxvalidate- a function to validate the items in the combo box and return an optional error message- Gibt zurück:
- a custom combo box with the specified parameters
-
radioList
default <T> B radioList(String id, String label, Supplier<@Nullable T> dflt, Class<T> cls, Collection<T> items) Add a labeled list of radiobuttons.- Typparameter:
T- the item type- Parameter:
id- the IDlabel- the label textdflt- supplier of default valuecls- the result classitems- the items to choose from- Gibt zurück:
this
-
radioList
<T> B radioList(String id, String label, Supplier<T> dflt, Class<T> cls, Collection<T> items, Function<T, Optional<String>> validate) Creates a radio list component.- Typparameter:
T- the type of items in the radio list- Parameter:
id- the ID of the radio listlabel- the label text for the radio listdflt- a supplier that provides the default value for the radio listcls- the class of the items in the radio listitems- a collection of items for the radio listvalidate- a function to validate the selected item, returning an optional error message- Gibt zurück:
- a radio list component
-
options
B options(String id, String label, Supplier<com.dua3.utility.options.Arguments> dflt, Supplier<Collection<com.dua3.utility.options.Option<?>>> options) Add a labeled pane with options.- Parameter:
id- the IDlabel- the label textdflt- supplier of default valuesoptions- supplier of options- Gibt zurück:
this
-
options
B options(String id, Supplier<com.dua3.utility.options.Arguments> dflt, Supplier<Collection<com.dua3.utility.options.Option<?>>> options) Add an unlabeled pane with options.Note to implementers: Labels of the options should be aligned properly with labels of the input dialog.
- Parameter:
id- the IDdflt- supplier of default valuesoptions- supplier of options- Gibt zurück:
this
-
chooseFile
default B chooseFile(String id, String label, Supplier<@Nullable Path> dflt, FileDialogMode mode, boolean existingOnly, Collection<FileChooser.ExtensionFilter> filter) Add a file chooser.- Parameter:
id- the IDlabel- the label textdflt- supplier of default valuemode- the mode, eitherFileDialogMode.OPENorFileDialogMode.SAVEexistingOnly- only let the user choose existing files; i.e., no new files can be createdfilter- the extension filter to use- Gibt zurück:
this
-
chooseFile
B chooseFile(String id, String label, Supplier<Path> dflt, FileDialogMode mode, boolean existingOnly, Collection<FileChooser.ExtensionFilter> filter, Function<Path, Optional<String>> validate) Add a file chooser dialog to allow the user to select a file.- Parameter:
id- The identifier for the file chooser dialog.label- The label to display in the file chooser dialog.dflt- A function that provides the default path to preselect in the file chooser dialog.mode- The mode of the file dialog, such as OPEN or SAVE.existingOnly- Whether to only allow selection of existing files.filter- The file filters to apply in the file chooser dialog.validate- A function to perform additional validation on the selected file path. It returns an optional error message if the validation fails.- Gibt zurück:
this
-
node
Add an unlabeled custom node to the grid.- Parameter:
id- the ID of the nodenode- the node- Gibt zurück:
this
-
node
Add a labeled custom node to the grid.- Parameter:
id- the ID of the nodelabel- the label textnode- the node- Gibt zurück:
this
-