Package org.apache.tapestry5

## Interface SelectModel

- All Known Implementing Classes:
    `AbstractSelectModel`, `EnumSelectModel`, `SelectModelImpl`

      public interface SelectModel

  Defines the possible options and option groups for a <select> [X]HTML element. Primarily used by the `Select` component, but potentially used by anything similar, that needs to present a list of options to the user. Generally paired with a `ValueEncoder` to create client-side representations of server-side values.
  See Also:
    `Palette`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `List<OptionGroupModel>` | `getOptionGroups()` | The list of groups, each containing some number of individual options.
    `List<OptionModel>` | `getOptions()` | The list of ungrouped options, which appear after any grouped options.
    `void` | `visit​(SelectModelVisitor visitor)` | Allows access to all the `OptionGroupModel`s and `OptionModel`s within the SelectModel.

- - ### Method Detail

    - #### getOptionGroups

          List<OptionGroupModel> getOptionGroups()

      The list of groups, each containing some number of individual options.
      Returns:
        the groups, or null

    - #### getOptions

          List<OptionModel> getOptions()

      The list of ungrouped options, which appear after any grouped options. Generally, a model will either provide option groups or ungrouped options, but not both.
      Returns:
        the ungrouped options, or null

    - #### visit

          void visit​(SelectModelVisitor visitor)

      Allows access to all the `OptionGroupModel`s and `OptionModel`s within the SelectModel.