com.holonplatform.vaadin.components.builders

## Interface BaseSelectInputBuilder<T,C extends Input<T>,S,ITEM,B extends BaseSelectInputBuilder<T,C,S,ITEM,B>>

- Type Parameters:
    `T` - Value type
    `C` - Input type
    `S` - Selection type
    `ITEM` - Selection items type
    `B` - Concrete builder type
  All Superinterfaces:
    ComponentConfigurator<B>, InputBuilder<T,C,B>, InputConfigurator<T,B>
  All Known Subinterfaces:
    BaseSelectInputBuilder.MultiSelectConfigurator<T,ITEM,B>, BaseSelectInputBuilder.SingleSelectConfigurator<T,ITEM,B>, BaseSelectModeMultiPropertySelectInputBuilder<T,B>, BaseSelectModeMultiPropertySelectInputBuilder.OptionsModeMultiPropertySelectInputBuilder<T>, BaseSelectModeMultiPropertySelectInputBuilder.SelectModeMultiPropertySelectInputBuilder<T>, BaseSelectModeMultiSelectInputBuilder<T,B>, BaseSelectModeMultiSelectInputBuilder.OptionsModeMultiSelectInputBuilder<T>, BaseSelectModeMultiSelectInputBuilder.SelectModeMultiSelectInputBuilder<T>, BaseSelectModeSinglePropertySelectInputBuilder<T,B>, BaseSelectModeSinglePropertySelectInputBuilder.NativeModeSinglePropertySelectInputBuilder<T>, BaseSelectModeSinglePropertySelectInputBuilder.OptionsModeSinglePropertySelectInputBuilder<T>, BaseSelectModeSinglePropertySelectInputBuilder.SelectModeSinglePropertySelectInputBuilder<T>, BaseSelectModeSingleSelectInputBuilder<T,B>, BaseSelectModeSingleSelectInputBuilder.NativeModeSingleSelectInputBuilder<T>, BaseSelectModeSingleSelectInputBuilder.OptionsModeSingleSelectInputBuilder<T>, BaseSelectModeSingleSelectInputBuilder.SelectModeSingleSelectInputBuilder<T>, MultiPropertySelectInputBuilder<T,B>, MultiPropertySelectInputBuilder.GenericMultiPropertySelectInputBuilder<T>, MultiSelectInputBuilder<T,B>, MultiSelectInputBuilder.GenericMultiSelectInputBuilder<T>, PropertySelectInputBuilder<T,C,S,B>, SelectInputBuilder<T,C,S,ITEM,B>, SelectItemDataSourceBuilder<T,C,S,ITEM,B>, SinglePropertySelectInputBuilder<T,B>, SinglePropertySelectInputBuilder.GenericSinglePropertySelectInputBuilder<T>, SingleSelectInputBuilder<T,B>, SingleSelectInputBuilder.GenericSingleSelectInputBuilder<T>

      public interface BaseSelectInputBuilder<T,C extends Input<T>,S,ITEM,B extends BaseSelectInputBuilder<T,C,S,ITEM,B>>
      extends InputBuilder<T,C,B>

  Base builder to create selection `Input`s.
  Since:
    5.0.0

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `BaseSelectInputBuilder.MultiSelectConfigurator<T,ITEM,B extends BaseSelectInputBuilder.MultiSelectConfigurator<T,ITEM,B>>` Multi select component configurator.
    `static class` | `BaseSelectInputBuilder.RenderingMode` Select UI rendering mode
    `static interface` | `BaseSelectInputBuilder.SingleSelectConfigurator<T,ITEM,B extends BaseSelectInputBuilder.SingleSelectConfigurator<T,ITEM,B>>` Single select component configurator.

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

      `InputConfigurator.BaseFieldConfigurator<T>`

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

      `ComponentConfigurator.BaseComponentConfigurator`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `B` | `itemCaption(ITEM item, com.holonplatform.core.i18n.Localizable caption)` Set an explicit caption for given item.
    `default B` | `itemCaption(ITEM item, String caption)` Set an explicit caption for given item.
    `default B` | `itemCaption(ITEM item, String caption, String messageCode)` Set an explicit caption for given item.
    `B` | `itemCaptionGenerator(ItemSet.ItemCaptionGenerator<ITEM> itemCaptionGenerator)` Set the item caption generator to use to display item captions.
    `B` | `itemDescriptionGenerator(ItemSet.ItemDescriptionGenerator<ITEM> itemDescriptionGenerator)` Set the item description generator to use to display item descriptions (tooltips).
    `B` | `itemIcon(ITEM item, com.vaadin.server.Resource icon)` Sets the icon for an item.
    `B` | `itemIconGenerator(ItemSet.ItemIconGenerator<ITEM> itemIconGenerator)` Set the item icon generator to use to display item icons.

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

      `asField, build, deferLocalization, dragSource, dropTarget, validatable`

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

      `locale, readOnly, tabIndex, withValue, withValueChangeListener`

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

      `caption, caption, caption, captionAsHtml, description, description, description, disabled, errorHandler, fullHeight, fullSize, fullWidth, height, height, heightUndefined, hidden, icon, id, notVisible, primaryStyleName, replaceStyleName, responsive, sizeUndefined, styleName, width, width, widthUndefined, withAttachListener, withContextClickListener, withData, withDetachListener, withShortcutListener`

- - ### Method Detail

    - #### itemCaptionGenerator

          B itemCaptionGenerator(ItemSet.ItemCaptionGenerator<ITEM> itemCaptionGenerator)

      Set the item caption generator to use to display item captions.
      Parameters:
        `itemCaptionGenerator` - The generator to set
      Returns:
        this

    - #### itemIconGenerator

          B itemIconGenerator(ItemSet.ItemIconGenerator<ITEM> itemIconGenerator)

      Set the item icon generator to use to display item icons.
      Parameters:
        `itemIconGenerator` - The generator to set
      Returns:
        this

    - #### itemDescriptionGenerator

          B itemDescriptionGenerator(ItemSet.ItemDescriptionGenerator<ITEM> itemDescriptionGenerator)

      Set the item description generator to use to display item descriptions (tooltips).
      Parameters:
        `itemDescriptionGenerator` - The generator to set
      Returns:
        this
      Since:
        5.0.6

    - #### itemCaption

          B itemCaption(ITEM item,
                        com.holonplatform.core.i18n.Localizable caption)

      Set an explicit caption for given item.
      Parameters:
        `item` - Item to set the caption for (not null)
        `caption` - Item caption (not null)
      Returns:
        this

    - #### itemCaption

          default B itemCaption(ITEM item,
                                String caption)

      Set an explicit caption for given item.
      Parameters:
        `item` - Item to set the caption for (not null)
        `caption` - Item caption
      Returns:
        this

    - #### itemCaption

          default B itemCaption(ITEM item,
                                String caption,
                                String messageCode)

      Set an explicit caption for given item.
      Parameters:
        `item` - Item to set the caption for (not null)
        `caption` - Item caption
        `messageCode` - Item caption translation code
      Returns:
        this

    - #### itemIcon

          B itemIcon(ITEM item,
                     com.vaadin.server.Resource icon)

      Sets the icon for an item.
      Parameters:
        `item` - the item to set the icon for
        `icon` - Item icon
      Returns:
        this

Copyright © 2019 The Holon Platform. All rights reserved.