com.holonplatform.vaadin.flow.components.builders

## Interface InputConfigurator<T,E extends ValueHolder.ValueChangeEvent<T>,C extends InputConfigurator<T,E,C>>

- Type Parameters:
    `T` - Value type
    `E` - Value change event type
    `C` - Concrete configurator type
  All Superinterfaces:
    ComponentConfigurator<C>, HasElementConfigurator<C>
  All Known Subinterfaces:
    BaseTemporalInputConfigurator<D,C>, BooleanInputBuilder, BooleanInputConfigurator<C>, DateInputBuilder, DateInputConfigurator<C>, DateTimeInputBuilder, DateTimeInputConfigurator<C>, HasValueInputBuilder<T,H,C>, InputAdapterBuilder<T,V,H,C,B>, InputBuilder<T,E,C,I,B,V>, InputConfigurator.BaseInputConfigurator<T>, InputConverterBuilder<T,V,H,C>, InputValueConfigurator<T,E,C>, LocalDateInputBuilder, LocalDateInputConfigurator<C>, LocalDateTimeInputBuilder, LocalDateTimeInputConfigurator<C>, LocalTimeInputBuilder, LocalTimeInputConfigurator<C>, MultiSelectInputConfigurator<T,ITEM,C>, NumberInputBuilder<T>, NumberInputConfigurator<T,C>, OptionsModeMultiSelectInputBuilder<T,ITEM,B>, OptionsModeMultiSelectInputBuilder.DatastoreItemOptionsModeMultiSelectInputBuilder<T,ITEM>, OptionsModeMultiSelectInputBuilder.DatastoreItemOptionsModeMultiSelectInputConfigurator<T,ITEM,C>, OptionsModeMultiSelectInputBuilder.DatastorePropertyOptionsModeMultiSelectInputBuilder<T>, OptionsModeMultiSelectInputBuilder.DatastorePropertyOptionsModeMultiSelectInputConfigurator<T,C>, OptionsModeMultiSelectInputBuilder.ItemOptionsModeMultiSelectInputBuilder<T,ITEM>, OptionsModeMultiSelectInputBuilder.ItemOptionsModeMultiSelectInputConfigurator<T,ITEM,D,C>, OptionsModeMultiSelectInputBuilder.PropertyOptionsModeMultiSelectInputBuilder<T>, OptionsModeMultiSelectInputBuilder.PropertyOptionsModeMultiSelectInputConfigurator<T,D,C>, OptionsModeMultiSelectInputBuilder.ValidatableDatastoreItemOptionsModeMultiSelectInputBuilder<T,ITEM>, OptionsModeMultiSelectInputBuilder.ValidatableDatastorePropertyOptionsModeMultiSelectInputBuilder<T>, OptionsModeMultiSelectInputBuilder.ValidatableItemOptionsModeMultiSelectInputBuilder<T,ITEM>, OptionsModeMultiSelectInputBuilder.ValidatablePropertyOptionsModeMultiSelectInputBuilder<T>, OptionsModeSingleSelectInputBuilder<T,ITEM,B>, OptionsModeSingleSelectInputBuilder.DatastoreItemOptionsModeSingleSelectInputBuilder<T,ITEM>, OptionsModeSingleSelectInputBuilder.DatastoreItemOptionsModeSingleSelectInputConfigurator<T,ITEM,C>, OptionsModeSingleSelectInputBuilder.DatastorePropertyOptionsModeSingleSelectInputBuilder<T>, OptionsModeSingleSelectInputBuilder.DatastorePropertyOptionsModeSingleSelectInputConfigurator<T,C>, OptionsModeSingleSelectInputBuilder.ItemOptionsModeSingleSelectInputBuilder<T,ITEM>, OptionsModeSingleSelectInputBuilder.ItemOptionsModeSingleSelectInputConfigurator<T,ITEM,D,C>, OptionsModeSingleSelectInputBuilder.PropertyOptionsModeSingleSelectInputBuilder<T>, OptionsModeSingleSelectInputBuilder.PropertyOptionsModeSingleSelectInputConfigurator<T,D,C>, OptionsModeSingleSelectInputBuilder.ValidatableDatastoreItemOptionsModeSingleSelectInputBuilder<T,ITEM>, OptionsModeSingleSelectInputBuilder.ValidatableDatastorePropertyOptionsModeSingleSelectInputBuilder<T>, OptionsModeSingleSelectInputBuilder.ValidatableItemOptionsModeSingleSelectInputBuilder<T,ITEM>, OptionsModeSingleSelectInputBuilder.ValidatablePropertyOptionsModeSingleSelectInputBuilder<T>, PasswordInputBuilder, PasswordInputConfigurator<C>, PropertySelectInputConfigurator<T,S,C>, SelectableInputConfigurator<T,S,C>, SelectModeSingleSelectInputBuilder<T,ITEM,B>, SelectModeSingleSelectInputBuilder.DatastoreItemSelectModeSingleSelectInputBuilder<T,ITEM>, SelectModeSingleSelectInputBuilder.DatastoreItemSelectModeSingleSelectInputConfigurator<T,ITEM,C>, SelectModeSingleSelectInputBuilder.DatastorePropertySelectModeSingleSelectInputBuilder<T>, SelectModeSingleSelectInputBuilder.DatastorePropertySelectModeSingleSelectInputConfigurator<T,C>, SelectModeSingleSelectInputBuilder.ItemSelectModeSingleSelectInputBuilder<T,ITEM>, SelectModeSingleSelectInputBuilder.ItemSelectModeSingleSelectInputConfigurator<T,ITEM,D,C>, SelectModeSingleSelectInputBuilder.PropertySelectModeSingleSelectInputBuilder<T>, SelectModeSingleSelectInputBuilder.PropertySelectModeSingleSelectInputConfigurator<T,D,C>, SelectModeSingleSelectInputBuilder.ValidatableDatastoreItemSelectModeSingleSelectInputBuilder<T,ITEM>, SelectModeSingleSelectInputBuilder.ValidatableDatastorePropertySelectModeSingleSelectInputBuilder<T>, SelectModeSingleSelectInputBuilder.ValidatableItemSelectModeSingleSelectInputBuilder<T,ITEM>, SelectModeSingleSelectInputBuilder.ValidatablePropertySelectModeSingleSelectInputBuilder<T>, SingleSelectInputConfigurator<T,ITEM,C>, StringAreaInputBuilder, StringAreaInputConfigurator<C>, StringInputBuilder, StringInputConfigurator<C>, ValidatableBooleanInputBuilder, ValidatableDateInputBuilder, ValidatableDateTimeInputBuilder, ValidatableLocalDateInputBuilder, ValidatableLocalDateTimeInputBuilder, ValidatableLocalTimeInputBuilder, ValidatableNumberInputBuilder<T>, ValidatablePasswordInputBuilder, ValidatableStringAreaInputBuilder, ValidatableStringInputBuilder

      public interface InputConfigurator<T,E extends ValueHolder.ValueChangeEvent<T>,C extends InputConfigurator<T,E,C>>
      extends ComponentConfigurator<C>

  Interface to configure an `Input`.
  Since:
    5.2.0

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `InputConfigurator.BaseInputConfigurator<T>` Base `InputConfigurator`.

    - ### Nested classes/interfaces inherited from interface com.holonplatform.vaadin.flow.components.builders.ComponentConfigurator

      `ComponentConfigurator.BaseComponentConfigurator`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `default C` | `readOnly()` Set the input component as read-only.
    `C` | `readOnly(boolean readOnly)` Set whether the input component is read-only.
    `C` | `required()` Set the input as required, i.e. the user must fill in a value.
    `C` | `required(boolean required)` Set the input as required or not.
    `C` | `withValueChangeListener(ValueHolder.ValueChangeListener<T,E> listener)` Add a `ValueHolder.ValueChangeListener` to be notified when the input value changes.

    - ### Methods inherited from interface com.holonplatform.vaadin.flow.components.builders.ComponentConfigurator

      `hidden, id, visible, withAttachListener, withDetachListener`

    - ### Methods inherited from interface com.holonplatform.vaadin.flow.components.builders.HasElementConfigurator

      `withEventListener, withEventListener, withThemeName`

- - ### Method Detail

    - #### readOnly

          C readOnly(boolean readOnly)

      Set whether the input component is read-only.

      When the input component is read-only, the user can not change the value of the input.

      Parameters:
        `readOnly` - Whether to set the input as read-only
      Returns:
        this

    - #### readOnly

          default C readOnly()

      Set the input component as read-only. The user can not change the value of the input.
      Returns:
        this

    - #### withValueChangeListener

          C withValueChangeListener(ValueHolder.ValueChangeListener<T,E> listener)

      Add a `ValueHolder.ValueChangeListener` to be notified when the input value changes.
      Parameters:
        `listener` - The `ValueHolder.ValueChangeListener` to add (not null)
      Returns:
        this

    - #### required

          C required(boolean required)

      Set the input as required or not. When the input is required the user must fill in a value.

      Depending on the actual input component implementation, setting the input as required may involve:

      - Showing a required indicator symbol, if supported. Normally a label must be configured to show the required indicator symbol.
      - Setting a `required` attribute in the `input` element at client side, if supported.
      Parameters:
        `required` - Whether the input is required
      Returns:
        this

    - #### required

          C required()

      Set the input as required, i.e. the user must fill in a value.

      Depending on the actual input component implementation, setting the input as required may involve:

      - Showing a required indicator symbol, if supported. Normally a label must be configured to show the required indicator symbol.
      - Setting a `required` attribute in the `input` element at client side, if supported.
      Returns:
        this

Copyright © 2019 The Holon Platform. All rights reserved.