public class WebDialogs.InputDialogBuilderImpl extends java.lang.Object implements Dialogs.InputDialogBuilder
| Modifier and Type | Field and Description |
|---|---|
protected InputDialog |
inputDialog |
| Constructor and Description |
|---|
InputDialogBuilderImpl(FrameOwner owner) |
| Modifier and Type | Method and Description |
|---|---|
InputDialog |
build()
Builds the input dialog.
|
java.util.Collection<Action> |
getActions() |
java.lang.String |
getCaption() |
java.util.function.Consumer<InputDialog.InputDialogCloseEvent> |
getCloseListener() |
DialogActions |
getDialogActions() |
float |
getHeight() |
java.util.Collection<InputParameter> |
getParameters() |
java.util.function.Consumer<InputDialog.InputDialogResult> |
getResultHandler() |
java.util.function.Function<InputDialog.ValidationContext,ValidationErrors> |
getValidator() |
float |
getWidth() |
InputDialog |
show()
Shows the dialog.
|
Dialogs.InputDialogBuilder |
withActions(DialogActions actions)
Sets predefined dialog actions.
|
Dialogs.InputDialogBuilder |
withActions(DialogActions actions,
java.util.function.Consumer<InputDialog.InputDialogResult> resultHandler)
Sets dialog actions and result handler.
|
Dialogs.InputDialogBuilder |
withActions(InputDialogAction... actions)
Sets dialog actions.
|
Dialogs.InputDialogBuilder |
withCaption(java.lang.String caption)
Sets dialog screen caption.
|
Dialogs.InputDialogBuilder |
withCloseListener(java.util.function.Consumer<InputDialog.InputDialogCloseEvent> listener)
Add close listener to the dialog.
|
Dialogs.InputDialogBuilder |
withHeight(java.lang.String height)
Sets dialog height.
|
Dialogs.InputDialogBuilder |
withParameter(InputParameter parameter)
Adds input parameter to the dialog.
|
Dialogs.InputDialogBuilder |
withParameters(InputParameter... parameters)
Sets input parameters.
|
Dialogs.InputDialogBuilder |
withValidator(java.util.function.Function<InputDialog.ValidationContext,ValidationErrors> validator)
Sets additional handler for field validation.
|
Dialogs.InputDialogBuilder |
withWidth(java.lang.String width)
Sets dialog width.
|
protected InputDialog inputDialog
public InputDialogBuilderImpl(FrameOwner owner)
public Dialogs.InputDialogBuilder withParameter(InputParameter parameter)
Dialogs.InputDialogBuilderExample:
dialogs.createInputDialog(this)
.withParameter(
entityParameter("userField", User.class)
.withCaption("User field")
.withRequired(true)
)
.show();
withParameter in interface Dialogs.InputDialogBuilderparameter - input parameter that will be added to the dialogInputParameter.entityParameter(String, Class)public Dialogs.InputDialogBuilder withParameters(InputParameter... parameters)
Dialogs.InputDialogBuilderExample:
dialogs.createInputDialog(this)
.withParameters(
stringParameter("nameField")
.withCaption("Name field caption")
.withDefaultValue("default value"),
intParameter("countField")
.withCaption("Count field caption")
.withRequired(true))
.show();
withParameters in interface Dialogs.InputDialogBuilderparameters - input parametersInputParameter.stringParameter(String),
InputParameter.intParameter(String)public java.util.Collection<InputParameter> getParameters()
public Dialogs.InputDialogBuilder withCloseListener(java.util.function.Consumer<InputDialog.InputDialogCloseEvent> listener)
Dialogs.InputDialogBuilderDialogActions in InputDialog.withCloseListener in interface Dialogs.InputDialogBuilderlistener - close listener to addpublic java.util.function.Consumer<InputDialog.InputDialogCloseEvent> getCloseListener()
public Dialogs.InputDialogBuilder withActions(InputDialogAction... actions)
Dialogs.InputDialogBuilderInputDialogAction provides access to input dialog in InputDialogAction.InputDialogActionPerformed
where it is possible to get values form the fields and implement logic to close dialog.
Note, if there is no actions are set input dialog will use DialogActions.OK_CANCEL by default.
dialogs.createInputDialog(this)
.withCaption("Dialog caption")
.withParameter(parameter("nameField").withCaption("Name"))
.withActions(
action("okAction")
.withCaption("OK")
.withIcon(CubaIcon.DIALOG_OK)
.withHandler(event -> {
InputDialog inputDialog = event.getInputDialog();
String name = inputDialog.getValue("nameField");
// do logic
inputDialog.close(InputDialog.INPUT_DIALOG_OK_ACTION);
}),
action("cancelAction")
.withCaption("Cancel")
.withIcon(CubaIcon.DIALOG_CANCEL)
.withValidationRequired(false)
.withHandler(event -> {
InputDialog inputDialog = event.getInputDialog();
inputDialog.close(InputDialog.INPUT_DIALOG_CANCEL_ACTION);
}))
.show();
withActions in interface Dialogs.InputDialogBuilderactions - actionsInputDialogAction.action(String)public java.util.Collection<Action> getActions()
public Dialogs.InputDialogBuilder withActions(DialogActions actions)
Dialogs.InputDialogBuilderDialogActions.OK_CANCEL.withActions in interface Dialogs.InputDialogBuilderactions - actionspublic Dialogs.InputDialogBuilder withActions(DialogActions actions, java.util.function.Consumer<InputDialog.InputDialogResult> resultHandler)
Dialogs.InputDialogBuilderDialogs.InputDialogBuilder.withCloseListener(Consumer).
Example
dialogs.createInputDialog(this)
.withCaption("Dialog caption")
.withParameter(parameter("nameField").withCaption("Name"))
.withActions(DialogActions.OK_CANCEL, result -> {
switch (result.getCloseActionType()) {
case OK:
String name = result.getValue("nameField");
// do logic
break;
case CANCEL:
// do logic
break;
}
})
.show();
withActions in interface Dialogs.InputDialogBuilderactions - dialog actionsresultHandler - result handlerpublic DialogActions getDialogActions()
@Nullable public java.util.function.Consumer<InputDialog.InputDialogResult> getResultHandler()
public Dialogs.InputDialogBuilder withValidator(java.util.function.Function<InputDialog.ValidationContext,ValidationErrors> validator)
Dialogs.InputDialogBuilderValidationErrors
instance. Returned validation errors will be shown with another errors from fields.
Example
dialogs.createInputDialog(this)
.withParameters(
stringParameter("phoneField").withCaption("Phone"),
stringParameter("addressField").withCaption("Address"))
.withValidator(context -> {
String phone = context.getValue("phoneField");
String address = context.getValue("addressField");
if (Strings.isNullOrEmpty(phone) && Strings.isNullOrEmpty(address)) {
return ValidationErrors.of("Phone or Address should be filled");
}
return ValidationErrors.none();
})
.show();
withValidator in interface Dialogs.InputDialogBuildervalidator - validatorpublic java.util.function.Function<InputDialog.ValidationContext,ValidationErrors> getValidator()
public Dialogs.InputDialogBuilder withCaption(java.lang.String caption)
Dialogs.InputDialogBuilderwithCaption in interface Dialogs.InputDialogBuildercaption - dialog screen captionpublic Dialogs.InputDialogBuilder withWidth(java.lang.String width)
Dialogs.InputDialogBuilderwithWidth in interface Dialogs.InputDialogBuilderwidth - dialog widthpublic float getWidth()
public Dialogs.InputDialogBuilder withHeight(java.lang.String height)
Dialogs.InputDialogBuilderwithHeight in interface Dialogs.InputDialogBuilderheight - dialog heightpublic float getHeight()
@Nullable public java.lang.String getCaption()
public InputDialog show()
Dialogs.InputDialogBuildershow in interface Dialogs.InputDialogBuilderpublic InputDialog build()
Dialogs.InputDialogBuilderbuild in interface Dialogs.InputDialogBuilder