T
- the type of the items to be inserted in the combo box@HtmlImport(value="frontend://flow-component-renderer.html") public class ComboBox<T> extends GeneratedVaadinComboBox<ComboBox<T>,T> implements HasSize, HasValidation, HasDataProvider<T>
vaadin-combo-box
webcomponent. It
contains the same features of the webcomponent, such as item filtering,
object selection and item templating.GeneratedVaadinComboBox.CustomValueSetEvent<R extends GeneratedVaadinComboBox<R,?>>, GeneratedVaadinComboBox.FilterChangeEvent<R extends GeneratedVaadinComboBox<R,?>>, GeneratedVaadinComboBox.InvalidChangeEvent<R extends GeneratedVaadinComboBox<R,?>>, GeneratedVaadinComboBox.OpenedChangeEvent<R extends GeneratedVaadinComboBox<R,?>>, GeneratedVaadinComboBox.SelectedItemChangeEvent<R extends GeneratedVaadinComboBox<R,?>>
AbstractField.ComponentValueChangeEvent<C extends Component,V>
BlurNotifier.BlurEvent<C extends Component>
FocusNotifier.FocusEvent<C extends Component>
HasValue.ValueChangeEvent<V>, HasValue.ValueChangeListener<E extends HasValue.ValueChangeEvent<?>>
Constructor and Description |
---|
ComboBox()
Default constructor.
|
ComboBox(String label)
Creates an empty combo box with the defined label.
|
ComboBox(String label,
Collection<T> items)
Creates a combo box with the defined label and populated with the items
in the collection.
|
ComboBox(String label,
T... items)
Creates a combo box with the defined label and populated with the items
in the array.
|
Modifier and Type | Method and Description |
---|---|
Registration |
addCustomValueSetListener(ComponentEventListener<GeneratedVaadinComboBox.CustomValueSetEvent<ComboBox<T>>> listener)
Adds a listener for CustomValueSetEvent which is fired when user types in
a value that don't already exist in the ComboBox.
|
DataProvider<T,?> |
getDataProvider() |
T |
getEmptyValue()
Returns the value that represents an empty value.
|
String |
getErrorMessage()
Gets the current error message from the combobox.
|
List<T> |
getFilteredItems()
Gets the list of items which were filtered by the user input.
|
ItemLabelGenerator<T> |
getItemLabelGenerator()
Gets the item label generator that is used to produce the strings shown
in the combo box for each item.
|
String |
getLabel()
Gets the label of the combobox.
|
String |
getPattern()
Gets the valid input pattern
|
String |
getPlaceholder()
Gets the placeholder of the combobox.
|
T |
getValue()
Returns the current value of this object.
|
boolean |
isAllowCustomValue()
If
true , the user can input a value that is not present in the
items list. |
boolean |
isAutofocus()
Get the state for the auto-focus property of the combobox.
|
boolean |
isInvalid()
Gets the validity of the combobox output.
|
boolean |
isOpened()
Gets the states of the drop-down.
|
boolean |
isPreventInvalidInput()
Determines whether preventing the user from inputing invalid value.
|
boolean |
isRequired()
Determines whether the combobox is marked as input required.
|
void |
onEnabledStateChanged(boolean enabled)
Handle component enable state when the enabled state changes.
|
void |
setAllowCustomValue(boolean allowCustomValue)
Description copied from corresponding location in WebComponent:
|
void |
setAutofocus(boolean autofocus)
Set the combobox to be input focused when the page loads.
|
void |
setDataProvider(DataProvider<T,?> dataProvider)
Sets the data provider for this listing.
|
void |
setErrorMessage(String errorMessage)
Description copied from corresponding location in WebComponent:
|
void |
setFilteredItems(Collection<T> filteredItems)
It sets the list of visible items in reaction of the input of the user.
|
void |
setFilteredItems(T... filteredItems)
Convenience method for the
setFilteredItems(Collection) . |
void |
setInvalid(boolean invalid)
Description copied from corresponding location in WebComponent:
|
void |
setItemLabelGenerator(ItemLabelGenerator<T> itemLabelGenerator)
Sets the item label generator that is used to produce the strings shown
in the combo box for each item.
|
void |
setLabel(String label)
Description copied from corresponding location in WebComponent:
|
void |
setOpened(boolean opened)
Description copied from corresponding location in WebComponent:
|
void |
setPattern(String pattern)
Description copied from corresponding location in WebComponent:
|
void |
setPlaceholder(String placeholder)
Description copied from corresponding location in WebComponent:
|
void |
setPreventInvalidInput(boolean preventInvalidInput)
Description copied from corresponding location in WebComponent:
|
void |
setRenderer(Renderer<T> renderer)
Sets the TemplateRenderer responsible to render the individual items in
the list of possible choices of the ComboBox.
|
void |
setRequired(boolean required)
Description copied from corresponding location in WebComponent:
|
void |
setValue(T value)
Sets the value of this object.
|
addFilterChangeListener, addInvalidChangeListener, addOpenedChangeListener, addSelectedItemChangeListener, addToPrefix, cancel, checkValidity, close, getErrorMessageString, getFilteredItemsJsonArray, getFilterString, getItemsJsonArray, getLabelString, getNameString, getPatternString, getPlaceholderString, isAllowCustomValueBoolean, isAutofocusBoolean, isDisabledBoolean, isInvalidBoolean, isLoadingBoolean, isOpenedBoolean, isPreventInvalidInputBoolean, isReadonlyBoolean, isRequiredBoolean, open, remove, removeAll, setDisabled, setFilter, setFilteredItems, setItems, setLoading, setName, setReadonly, validate
hasValidValue, setPresentationValue, setSynchronizedEvent
addValueChangeListener, isEmpty, setModelValue, valueEquals
addListener, fireEvent, from, get, getChildren, getElement, getEventBus, getId, getLocale, getParent, getTranslation, getTranslation, getUI, hasListener, isTemplateMapped, isVisible, onAttach, onDetach, set, setElement, setId, setVisible
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getHeight, getWidth, setHeight, setSizeFull, setSizeUndefined, setWidth
getElement
setItems
addClassName, addClassNames, getClassName, getClassNames, getStyle, hasClassName, removeClassName, removeClassNames, setClassName, setClassName
blur, focus, getTabIndex, setTabIndex
addBlurListener
addFocusListener
isEnabled, setEnabled
isReadOnly, isRequiredIndicatorVisible, setReadOnly, setRequiredIndicatorVisible
clear, getOptionalValue
addAttachListener
addDetachListener
public ComboBox()
public ComboBox(String label)
label
- the label describing the combo boxpublic ComboBox(String label, Collection<T> items)
label
- the label describing the combo boxitems
- the items to be shown in the list of the combo boxHasDataProvider.setItems(Collection)
@SafeVarargs public ComboBox(String label, T... items)
label
- the label describing the combo boxitems
- the items to be shown in the list of the combo boxHasItems.setItems(Object...)
public void setRenderer(Renderer<T> renderer)
setItemLabelGenerator(ItemLabelGenerator)
.renderer
- a renderer for the items in the selection list of the
ComboBox, not null
public void setDataProvider(DataProvider<T,?> dataProvider)
HasDataProvider
setDataProvider
in interface HasDataProvider<T>
dataProvider
- the data provider, not nullpublic DataProvider<T,?> getDataProvider()
public List<T> getFilteredItems()
public void setFilteredItems(T... filteredItems)
setFilteredItems(Collection)
. It sets
the list of visible items in reaction of the input of the user.filteredItems
- the items to show in response of a filter inputpublic void setFilteredItems(Collection<T> filteredItems)
filteredItems
- the items to show in response of a filter inputpublic void setItemLabelGenerator(ItemLabelGenerator<T> itemLabelGenerator)
String.valueOf(Object)
is used.
When the setRenderer(Renderer)
is used, the ItemLabelGenerator
is only used to show the selected item label.
itemLabelGenerator
- the item label provider to use, not nullpublic ItemLabelGenerator<T> getItemLabelGenerator()
public void setOpened(boolean opened)
GeneratedVaadinComboBox
Description copied from corresponding location in WebComponent:
True if the dropdown is open, false otherwise.
setOpened
in class GeneratedVaadinComboBox<ComboBox<T>,T>
opened
- the boolean value to setpublic boolean isOpened()
true
if the drop-down is opened, false
otherwisepublic void setInvalid(boolean invalid)
GeneratedVaadinComboBox
Description copied from corresponding location in WebComponent:
Set to true if the value is invalid.
setInvalid
in interface HasValidation
setInvalid
in class GeneratedVaadinComboBox<ComboBox<T>,T>
invalid
- the boolean value to setpublic boolean isInvalid()
return true, if the value is invalid.
isInvalid
in interface HasValidation
validity
property from the componentpublic void setErrorMessage(String errorMessage)
GeneratedVaadinComboBox
Description copied from corresponding location in WebComponent:
The error message to display when the input is invalid.
setErrorMessage
in interface HasValidation
setErrorMessage
in class GeneratedVaadinComboBox<ComboBox<T>,T>
errorMessage
- the String value to setpublic String getErrorMessage()
getErrorMessage
in interface HasValidation
public void setAllowCustomValue(boolean allowCustomValue)
GeneratedVaadinComboBox
Description copied from corresponding location in WebComponent:
If true
, the user can input a value that is not present in the
items list. value
property will be set to the input value in this
case. Also, when value
is set programmatically, the input value
will be set to reflect that value.
setAllowCustomValue
in class GeneratedVaadinComboBox<ComboBox<T>,T>
allowCustomValue
- the boolean value to setpublic boolean isAllowCustomValue()
true
, the user can input a value that is not present in the
items list. value
property will be set to the input value in this
case. Also, when value
is set programmatically, the input value
will be set to reflect that value.
This property is not synchronized automatically from the client side, so the returned value may not be the same as in client side.
allowCustomValue
property from the comboboxpublic void setAutofocus(boolean autofocus)
setAutofocus
in class GeneratedVaadinComboBox<ComboBox<T>,T>
autofocus
- the boolean value to setpublic boolean isAutofocus()
This property is not synchronized automatically from the client side, so the returned value may not be the same as in client side.
autofocus
property from the comboboxpublic void setPreventInvalidInput(boolean preventInvalidInput)
GeneratedVaadinComboBox
Description copied from corresponding location in WebComponent:
Set to true to prevent the user from entering invalid input.
setPreventInvalidInput
in class GeneratedVaadinComboBox<ComboBox<T>,T>
preventInvalidInput
- the boolean value to setpublic boolean isPreventInvalidInput()
This property is not synchronized automatically from the client side, so the returned value may not be the same as in client side.
preventInvalidInput
property of the comboboxpublic void setRequired(boolean required)
GeneratedVaadinComboBox
Description copied from corresponding location in WebComponent:
Set to true to mark the input as required.
setRequired
in class GeneratedVaadinComboBox<ComboBox<T>,T>
required
- the boolean value to setpublic boolean isRequired()
This property is not synchronized automatically from the client side, so the returned value may not be the same as in client side.
true
if the input is required, false
otherwisepublic void setLabel(String label)
GeneratedVaadinComboBox
Description copied from corresponding location in WebComponent:
The label for this element.
setLabel
in class GeneratedVaadinComboBox<ComboBox<T>,T>
label
- the String value to setpublic String getLabel()
label
property of the comboboxpublic void setPlaceholder(String placeholder)
GeneratedVaadinComboBox
Description copied from corresponding location in WebComponent:
A placeholder string in addition to the label.
setPlaceholder
in class GeneratedVaadinComboBox<ComboBox<T>,T>
placeholder
- the String value to setpublic String getPlaceholder()
placeholder
property of the comboboxpublic void setPattern(String pattern)
GeneratedVaadinComboBox
Description copied from corresponding location in WebComponent:
A pattern to validate the input
with.
setPattern
in class GeneratedVaadinComboBox<ComboBox<T>,T>
pattern
- the String value to setpublic String getPattern()
pattern
property of the comboboxpublic T getEmptyValue()
HasValue
By default HasValue
is expected to support null
as empty
values. Specific implementations might not support this.
getEmptyValue
in interface HasValue<AbstractField.ComponentValueChangeEvent<ComboBox<T>,T>,T>
getEmptyValue
in class AbstractField<ComboBox<T>,T>
public void setValue(T value)
HasValue
getValue()
, fires a value change event. May throw
IllegalArgumentException
if the value is not acceptable.
Implementation note: the implementing class should document
whether null values are accepted or not, and override
HasValue.getEmptyValue()
if the empty value is not null
.
public T getValue()
HasValue
Implementation note: the implementing class should document
whether null values may be returned or not, and override
HasValue.getEmptyValue()
if the empty value is not null
.
public Registration addCustomValueSetListener(ComponentEventListener<GeneratedVaadinComboBox.CustomValueSetEvent<ComboBox<T>>> listener)
As a side effect makes the ComboBox allow custom values. If you don't
want to allow a user to add new values to the list once the listener is
added please disable it explicitly via the
setAllowCustomValue(boolean)
method.
The custom value becomes disallowed automatically once the last custom value set listener is removed.
addCustomValueSetListener
in class GeneratedVaadinComboBox<ComboBox<T>,T>
listener
- the listener to be notified when a new value is filledRegistration
for removing the event listenersetAllowCustomValue(boolean)
public void onEnabledStateChanged(boolean enabled)
Component
By default this sets or removes the 'disabled' attribute from the element. This can be overridden to have custom handling.
onEnabledStateChanged
in class Component
enabled
- the new enabled state of the componentCopyright © 2023. All rights reserved.