com.vaadin.ui.
Class Select
java.lang.Object
com.vaadin.ui.AbstractComponent
com.vaadin.ui.AbstractField
com.vaadin.ui.AbstractSelect
com.vaadin.ui.Select
All Implemented Interfaces:
Buffered, BufferedValidatable, Container, Container.ItemSetChangeListener, Container.ItemSetChangeNotifier, Container.PropertySetChangeListener, Container.PropertySetChangeNotifier, Container.Viewer, Property, Property.Editor, Property.ReadOnlyStatusChangeListener, Property.ReadOnlyStatusChangeNotifier, Property.ValueChangeListener, Property.ValueChangeNotifier, Property.Viewer, Validatable, Action.ShortcutNotifier, FieldEvents.BlurNotifier, FieldEvents.FocusNotifier, MethodEventSource, Paintable, Sizeable, VariableOwner, AbstractSelect.Filtering, Component, Component.Focusable, Field, Serializable, EventListener
Direct Known Subclasses:
- extends AbstractSelect
- implements AbstractSelect.Filtering, FieldEvents.BlurNotifier, FieldEvents.FocusNotifier
public class Select
A class representing a selection of items the user has selected in a UI. The
set of choices is presented as a set of Item
s in a
Container
.
A Select
component may be in single- or multiselect mode.
Multiselect mode means that more than one item can be selected
simultaneously.
Since:
3.0
Version:
6.8.18
Author:
Vaadin Ltd.
See Also:
Nested Class Summary |
---|
Nested classes/interfaces inherited from class com.vaadin.ui.AbstractField |
---|
AbstractField.FocusShortcut, AbstractField.ReadOnlyStatusChangeEvent |
Nested classes/interfaces inherited from class com.vaadin.ui.AbstractComponent |
---|
AbstractComponent.ComponentErrorEvent, AbstractComponent.ComponentErrorHandler |
Nested classes/interfaces inherited from interface com.vaadin.data.Container |
---|
Container.Editor, Container.Filter, Container.Filterable, Container.Hierarchical, Container.Indexed, Container.ItemSetChangeListener, Container.ItemSetChangeNotifier, Container.Ordered, Container.PropertySetChangeListener, Container.PropertySetChangeNotifier, Container.SimpleFilterable, Container.Sortable, Container.Viewer |
Nested classes/interfaces inherited from interface com.vaadin.ui.Field |
---|
Field.ValueChangeEvent |
Nested classes/interfaces inherited from interface com.vaadin.data.Buffered |
---|
Buffered.SourceException |
Nested classes/interfaces inherited from interface com.vaadin.data.Property |
---|
Property.ConversionException, Property.Editor, Property.ReadOnlyException, Property.ReadOnlyStatusChangeListener, Property.ReadOnlyStatusChangeNotifier, Property.ValueChangeListener, Property.ValueChangeNotifier, Property.Viewer |
Field Summary | |
---|---|
protected int |
pageLength
Holds value of property pageLength. |
Fields inherited from class com.vaadin.ui.AbstractSelect |
---|
ITEM_CAPTION_MODE_EXPLICIT, ITEM_CAPTION_MODE_EXPLICIT_DEFAULTS_ID, ITEM_CAPTION_MODE_ICON_ONLY, ITEM_CAPTION_MODE_ID, ITEM_CAPTION_MODE_INDEX, ITEM_CAPTION_MODE_ITEM, ITEM_CAPTION_MODE_PROPERTY, itemIdMapper, items |
Fields inherited from interface com.vaadin.ui.AbstractSelect.Filtering |
---|
FILTERINGMODE_CONTAINS, FILTERINGMODE_OFF, FILTERINGMODE_STARTSWITH |
Constructor Summary | |
---|---|
Select()
|
|
Select(String caption)
|
|
Select(String caption,
Collection<?> options)
|
|
Select(String caption,
Container dataSource)
|
Method Summary | |
---|---|
void |
addListener(FieldEvents.BlurListener listener)
Adds a BlurListener to the Component which gets fired
when a Field loses keyboard focus. |
void |
addListener(FieldEvents.FocusListener listener)
Adds a FocusListener to the Component which gets fired
when a Field receives keyboard focus. |
protected Container.Filter |
buildFilter(String filterString,
int filteringMode)
Constructs a filter instance to use when using a Filterable container in the ITEM_CAPTION_MODE_PROPERTY mode. |
void |
changeVariables(Object source,
Map<String,Object> variables)
Invoked when the value of a variable has changed. |
void |
containerItemSetChange(Container.ItemSetChangeEvent event)
Lets the listener know a Containers Item set has changed. |
int |
getColumns()
Deprecated. see setter function |
protected List<?> |
getFilteredOptions()
Filters the options in memory and returns the full filtered list. |
int |
getFilteringMode()
Gets the current filtering mode. |
protected List<?> |
getOptionsWithFilter(boolean needNullSelectOption)
Returns the filtered options for the current page using a container filter. |
boolean |
isMultiSelect()
Deprecated. use ListSelect , OptionGroup or
TwinColSelect instead |
boolean |
isScrollToSelectedItem()
Returns true if the select should find the page with the selected item when opening the popup (single select combo box only). |
void |
paintContent(PaintTarget target)
Paints the content of this component. |
void |
removeListener(FieldEvents.BlurListener listener)
Removes a BlurListener from the Component. |
void |
removeListener(FieldEvents.FocusListener listener)
Removes a FocusListener from the Component. |
void |
setColumns(int columns)
Deprecated. |
void |
setFilteringMode(int filteringMode)
Sets the option filtering mode. |
void |
setMultiSelect(boolean multiSelect)
Deprecated. use ListSelect , OptionGroup or
TwinColSelect instead |
void |
setScrollToSelectedItem(boolean scrollToSelectedItem)
Sets whether to scroll the selected item visible (directly open the page on which it is) when opening the combo box popup or not. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface com.vaadin.ui.Field |
---|
getDescription, setCaption, setDescription |
Field Detail |
---|
pageLength
protected int pageLength
Holds value of property pageLength. 0 disables paging.
Constructor Detail |
---|
Select
public Select()
Select
public Select(String caption,
Collection<?> options)
Select
public Select(String caption,
Container dataSource)
Select
public Select(String caption)
Method Detail |
---|
paintContent
public void paintContent(PaintTarget target)
throws PaintException
- Overrides:
paintContent
in classAbstractSelect
- Parameters:
target
- the Paint Event.- Throws:
PaintException
- if the paint operation failed.
Paints the content of this component.
getOptionsWithFilter
protected List<?> getOptionsWithFilter(boolean needNullSelectOption)
- Parameters:
needNullSelectOption
-- Returns:
- filtered list of options (may be empty) or null if cannot use container filters
Returns the filtered options for the current page using a container
filter.
As a size effect, filteredSize
is set to the total number of
items passing the filter.
The current container must be Filterable
and Indexed
, and
the filtering mode must be suitable for container filtering (tested with
#canUseContainerFilter()
).
Use getFilteredOptions()
and
sanitetizeList(List, boolean)
if this is not the case.
buildFilter
protected Container.Filter buildFilter(String filterString,
int filteringMode)
- Parameters:
filterString
-filteringMode
-- Returns:
Constructs a filter instance to use when using a Filterable container in
the ITEM_CAPTION_MODE_PROPERTY
mode.
Note that the client side implementation expects the filter string to
apply to the item caption string it sees, so changing the behavior of
this method can cause problems.
containerItemSetChange
public void containerItemSetChange(Container.ItemSetChangeEvent event)
- Specified by:
containerItemSetChange
in interfaceContainer.ItemSetChangeListener
- Overrides:
containerItemSetChange
in classAbstractSelect
- Parameters:
event
- change event text- See Also:
Container.ItemSetChangeListener.containerItemSetChange(com.vaadin.data.Container.ItemSetChangeEvent)
Description copied from class: AbstractSelect
Lets the listener know a Containers Item set has changed.
getFilteredOptions
protected List<?> getFilteredOptions()
- Returns:
Filters the options in memory and returns the full filtered list.
This can be less efficient than using container filters, so use
getOptionsWithFilter(boolean)
if possible (filterable container
and suitable item caption mode etc.).
changeVariables
public void changeVariables(Object source,
Map<String,Object> variables)
- Specified by:
changeVariables
in interfaceVariableOwner
- Overrides:
changeVariables
in classAbstractSelect
- Parameters:
source
- the Source of the variable change. This is the origin of the event. For example in Web Adapter this is the request.variables
- the Mapping from variable names to new variable values.- See Also:
AbstractComponent.changeVariables(java.lang.Object, java.util.Map)
Invoked when the value of a variable has changed.
setFilteringMode
public void setFilteringMode(int filteringMode)
- Specified by:
setFilteringMode
in interfaceAbstractSelect.Filtering
- Parameters:
filteringMode
- the filtering mode to use
Description copied from interface: AbstractSelect.Filtering
Sets the option filtering mode.
getFilteringMode
public int getFilteringMode()
- Specified by:
getFilteringMode
in interfaceAbstractSelect.Filtering
- Returns:
- the filtering mode in use
Description copied from interface: AbstractSelect.Filtering
Gets the current filtering mode.
setColumns
@Deprecated
public void setColumns(int columns)
- Parameters:
columns
- the number of columns to set.
Deprecated.
Note, one should use more generic setWidth(String) method instead of this. This now days actually converts columns to width with em css unit. Sets the number of columns in the editor. If the number of columns is set 0, the actual number of displayed columns is determined implicitly by the adapter.
getColumns
@Deprecated
public int getColumns()
- Returns:
Deprecated. see setter function
addListener
public void addListener(FieldEvents.BlurListener listener)
- Specified by:
addListener
in interfaceFieldEvents.BlurNotifier
- See Also:
FieldEvents.BlurListener
Description copied from interface: FieldEvents.BlurNotifier
Adds a BlurListener
to the Component which gets fired
when a Field
loses keyboard focus.
removeListener
public void removeListener(FieldEvents.BlurListener listener)
- Specified by:
removeListener
in interfaceFieldEvents.BlurNotifier
- See Also:
FieldEvents.BlurListener
Description copied from interface: FieldEvents.BlurNotifier
Removes a BlurListener
from the Component.
addListener
public void addListener(FieldEvents.FocusListener listener)
- Specified by:
addListener
in interfaceFieldEvents.FocusNotifier
- See Also:
FieldEvents.FocusListener
Description copied from interface: FieldEvents.FocusNotifier
Adds a FocusListener
to the Component which gets fired
when a Field
receives keyboard focus.
removeListener
public void removeListener(FieldEvents.FocusListener listener)
- Specified by:
removeListener
in interfaceFieldEvents.FocusNotifier
- See Also:
FieldEvents.FocusListener
Description copied from interface: FieldEvents.FocusNotifier
Removes a FocusListener
from the Component.
setMultiSelect
@Deprecated
public void setMultiSelect(boolean multiSelect)
- Overrides:
setMultiSelect
in classAbstractSelect
- Parameters:
multiSelect
- the New value of property multiSelect.- See Also:
AbstractSelect.setMultiSelect(boolean)
Deprecated. use ListSelect
, OptionGroup
or
TwinColSelect
instead
Description copied from class: AbstractSelect
Sets the multiselect mode. Setting multiselect mode false may loose selection information: if selected items set contains one or more selected items, only one of the selected items is kept as selected.
isMultiSelect
@Deprecated
public boolean isMultiSelect()
- Overrides:
isMultiSelect
in classAbstractSelect
- Returns:
- the Value of property multiSelect.
- See Also:
AbstractSelect.isMultiSelect()
Deprecated. use ListSelect
, OptionGroup
or
TwinColSelect
instead
Description copied from class: AbstractSelect
Is the select in multiselect mode? In multiselect mode
setScrollToSelectedItem
public void setScrollToSelectedItem(boolean scrollToSelectedItem)
- Parameters:
scrollToSelectedItem
- true to find the page with the selected item when opening the selection popup
Sets whether to scroll the selected item visible (directly open the page on which it is) when opening the combo box popup or not. Only applies to single select mode. This requires finding the index of the item, which can be expensive in many large lazy loading containers.
isScrollToSelectedItem
public boolean isScrollToSelectedItem()
- Returns:
- true if the page with the selected item will be shown when opening the popup
- See Also:
setScrollToSelectedItem(boolean)
Returns true if the select should find the page with the selected item when opening the popup (single select combo box only).