Class GridMultiSelect<V>
- java.lang.Object
-
- com.vaadin.flow.component.Component
-
- com.vaadin.flow.component.AbstractField<com.vaadin.flow.component.customfield.CustomField<T>,T>
-
- com.vaadin.flow.component.customfield.CustomField<F>
-
- org.vaadin.miki.superfields.gridselect.AbstractGridSelect<V,Set<V>>
-
- org.vaadin.miki.superfields.gridselect.GridMultiSelect<V>
-
- Type Parameters:
V- Value to store in theGrid.
- All Implemented Interfaces:
com.vaadin.flow.component.AttachNotifier,com.vaadin.flow.component.BlurNotifier<com.vaadin.flow.component.customfield.CustomField>,com.vaadin.flow.component.DetachNotifier,com.vaadin.flow.component.Focusable<com.vaadin.flow.component.customfield.CustomField>,com.vaadin.flow.component.FocusNotifier<com.vaadin.flow.component.customfield.CustomField>,com.vaadin.flow.component.HasElement,com.vaadin.flow.component.HasEnabled,com.vaadin.flow.component.HasHelper,com.vaadin.flow.component.HasLabel,com.vaadin.flow.component.HasSize,com.vaadin.flow.component.HasStyle,com.vaadin.flow.component.HasTheme,com.vaadin.flow.component.HasValidation,com.vaadin.flow.component.HasValue<com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<com.vaadin.flow.component.customfield.CustomField<Set<V>>,Set<V>>,Set<V>>,com.vaadin.flow.component.HasValueAndElement<com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<com.vaadin.flow.component.customfield.CustomField<Set<V>>,Set<V>>,Set<V>>,com.vaadin.flow.component.shared.HasTooltip,com.vaadin.flow.data.binder.HasItems<V>,Serializable,HasHelperPositionable,HasId,HasLabelPositionable,HasMaximumSelectionSize,WithHelperMixin<GridMultiSelect<V>>,WithHelperPositionableMixin<GridMultiSelect<V>>,WithIdMixin<GridMultiSelect<V>>,WithItemsMixin<V,GridMultiSelect<V>>,WithLabelMixin<GridMultiSelect<V>>,WithLabelPositionableMixin<GridMultiSelect<V>>,WithMaximumSelectionSizeMixin<GridMultiSelect<V>>,WithValueMixin<com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<com.vaadin.flow.component.customfield.CustomField<Set<V>>,Set<V>>,Set<V>,GridMultiSelect<V>>
public class GridMultiSelect<V> extends AbstractGridSelect<V,Set<V>> implements WithIdMixin<GridMultiSelect<V>>, WithItemsMixin<V,GridMultiSelect<V>>, WithMaximumSelectionSizeMixin<GridMultiSelect<V>>, WithHelperMixin<GridMultiSelect<V>>, WithHelperPositionableMixin<GridMultiSelect<V>>, WithLabelPositionableMixin<GridMultiSelect<V>>, WithLabelMixin<GridMultiSelect<V>>, WithValueMixin<com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<com.vaadin.flow.component.customfield.CustomField<Set<V>>,Set<V>>,Set<V>,GridMultiSelect<V>>
- Since:
- 2020-12-09
- Author:
- miki
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.vaadin.flow.component.AbstractField
com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<C extends com.vaadin.flow.component.Component,V extends Object>
-
Nested classes/interfaces inherited from interface com.vaadin.flow.component.BlurNotifier
com.vaadin.flow.component.BlurNotifier.BlurEvent<C extends com.vaadin.flow.component.Component>
-
Nested classes/interfaces inherited from interface com.vaadin.flow.component.FocusNotifier
com.vaadin.flow.component.FocusNotifier.FocusEvent<C extends com.vaadin.flow.component.Component>
-
Nested classes/interfaces inherited from interface com.vaadin.flow.component.HasValue
com.vaadin.flow.component.HasValue.ValueChangeEvent<V extends Object>, com.vaadin.flow.component.HasValue.ValueChangeListener<E extends com.vaadin.flow.component.HasValue.ValueChangeEvent<?>>
-
-
Field Summary
-
Fields inherited from interface org.vaadin.miki.markers.HasHelperPositionable
HELPER_ABOVE_THEME_VARIANT
-
Fields inherited from interface org.vaadin.miki.markers.HasLabelPositionable
LABEL_POSITION_ATTRIBUTE, LABEL_POSITION_DETAILS_ATTRIBUTE
-
Fields inherited from interface org.vaadin.miki.markers.HasMaximumSelectionSize
UNLIMITED
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedGridMultiSelect(com.vaadin.flow.component.grid.Grid<V> underlyingGrid)More advanced constructor that allows using predefined grid.GridMultiSelect(Class<V> type, boolean createColumns, V... items)Constructs the component.GridMultiSelect(V... items)Creates the component.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidconfigureGrid(com.vaadin.flow.component.grid.Grid<V> grid)Configures the grid.protected Set<V>generateModelValue()intgetMaximumSelectionSize()Returns the current maximum selection size.protected voidonGridSelected(com.vaadin.flow.data.selection.SelectionEvent<com.vaadin.flow.component.grid.Grid<V>,V> event)This method is called when a grid cell is selected in the client.voidsetItems(Collection<V> collection)voidsetMaximumSelectionSize(int maximumSelectionSize)Defines the new maximum selection size.protected voidsetPresentationValue(Set<V> vs)protected voidupdateValue()-
Methods inherited from class org.vaadin.miki.superfields.gridselect.AbstractGridSelect
getGrid, isEnabled, setEnabled, setReadOnly
-
Methods inherited from class com.vaadin.flow.component.customfield.CustomField
add, addThemeVariants, getErrorMessage, getLabel, isInvalid, onAttach, remove, removeThemeVariants, setErrorMessage, setInvalid, setLabel
-
Methods inherited from class com.vaadin.flow.component.AbstractField
addValueChangeListener, getEmptyValue, getValue, isEmpty, setModelValue, setValue, valueEquals
-
Methods inherited from class com.vaadin.flow.component.Component
addListener, findAncestor, fireEvent, from, get, getChildren, getElement, getEventBus, getId, getListeners, getLocale, getParent, getTranslation, getTranslation, getTranslation, getTranslation, getTranslation, getTranslation, getUI, hasListener, isAttached, isTemplateMapped, isVisible, onDetach, onEnabledStateChanged, scrollIntoView, set, setElement, setId, setVisible
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.vaadin.flow.component.Focusable
addFocusShortcut, blur, focus, getTabIndex, setTabIndex
-
Methods inherited from interface com.vaadin.flow.component.HasHelper
getHelperComponent, getHelperText, setHelperComponent, setHelperText
-
Methods inherited from interface org.vaadin.miki.markers.HasHelperPositionable
isHelperAbove, setHelperAbove, setHelperAbove, setHelperBelow
-
Methods inherited from interface org.vaadin.miki.markers.HasLabelPositionable
getLabelPosition, setLabelPosition
-
Methods inherited from interface com.vaadin.flow.component.HasSize
getHeight, getHeightUnit, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getWidth, getWidthUnit, setHeight, setHeight, setHeightFull, setMaxHeight, setMaxHeight, setMaxWidth, setMaxWidth, setMinHeight, setMinHeight, setMinWidth, setMinWidth, setSizeFull, setSizeUndefined, setWidth, setWidth, setWidthFull
-
Methods inherited from interface com.vaadin.flow.component.HasStyle
addClassName, addClassNames, getClassName, getClassNames, getStyle, hasClassName, removeClassName, removeClassNames, setClassName, setClassName
-
Methods inherited from interface com.vaadin.flow.component.HasTheme
addThemeName, addThemeNames, getThemeName, getThemeNames, hasThemeName, removeThemeName, removeThemeNames, setThemeName, setThemeName
-
Methods inherited from interface com.vaadin.flow.component.shared.HasTooltip
getTooltip, setTooltipText
-
Methods inherited from interface com.vaadin.flow.component.HasValue
addValueChangeListener, clear, getEmptyValue, getOptionalValue, getValue, isEmpty, setValue
-
Methods inherited from interface com.vaadin.flow.component.HasValueAndElement
isReadOnly, isRequiredIndicatorVisible, setRequiredIndicatorVisible
-
Methods inherited from interface org.vaadin.miki.markers.WithHelperMixin
withHelperComponent, withHelperText
-
Methods inherited from interface org.vaadin.miki.markers.WithHelperPositionableMixin
withHelperAbove, withHelperAbove, withHelperBelow
-
Methods inherited from interface org.vaadin.miki.markers.WithIdMixin
withId
-
Methods inherited from interface org.vaadin.miki.markers.WithItemsMixin
withItems, withItems, withItems
-
Methods inherited from interface org.vaadin.miki.markers.WithLabelMixin
withLabel
-
Methods inherited from interface org.vaadin.miki.markers.WithLabelPositionableMixin
withLabelPosition
-
Methods inherited from interface org.vaadin.miki.markers.WithMaximumSelectionSizeMixin
withMaximumSelectionSize
-
Methods inherited from interface org.vaadin.miki.markers.WithValueMixin
withValue
-
-
-
-
Constructor Detail
-
GridMultiSelect
@SafeVarargs public GridMultiSelect(V... items)
Creates the component. This requires a subsequent configuration of grid's columns.- Parameters:
items- Items to add to the grid.- See Also:
AbstractGridSelect.getGrid()
-
GridMultiSelect
@SafeVarargs public GridMultiSelect(Class<V> type, boolean createColumns, V... items)
Constructs the component. This is the recommended constructor.- Parameters:
type- Type of items displayed in the grid.createColumns- Whether or not to create default columns.items- Items to add to the grid.
-
GridMultiSelect
protected GridMultiSelect(com.vaadin.flow.component.grid.Grid<V> underlyingGrid)
More advanced constructor that allows using predefined grid. It is not public, as usage of this constructor implies you know what you are doing.- Parameters:
underlyingGrid- A grid to use.
-
-
Method Detail
-
onGridSelected
protected void onGridSelected(com.vaadin.flow.data.selection.SelectionEvent<com.vaadin.flow.component.grid.Grid<V>,V> event)
Description copied from class:AbstractGridSelectThis method is called when a grid cell is selected in the client. By default, it callsCustomField.updateValue().- Overrides:
onGridSelectedin classAbstractGridSelect<V,Set<V>>- Parameters:
event- Event with selection details.
-
configureGrid
protected void configureGrid(com.vaadin.flow.component.grid.Grid<V> grid)
Description copied from class:AbstractGridSelectConfigures the grid.- Overrides:
configureGridin classAbstractGridSelect<V,Set<V>>- Parameters:
grid- Grid to configure.
-
updateValue
protected void updateValue()
-
setItems
public void setItems(Collection<V> collection)
- Specified by:
setItemsin interfacecom.vaadin.flow.data.binder.HasItems<V>
-
setMaximumSelectionSize
public void setMaximumSelectionSize(int maximumSelectionSize)
Description copied from interface:HasMaximumSelectionSizeDefines the new maximum selection size. When current selection is above the new limit, the selection should change so that it fits the new limit.- Specified by:
setMaximumSelectionSizein interfaceHasMaximumSelectionSize- Parameters:
maximumSelectionSize- Maximum selection size.
-
getMaximumSelectionSize
public int getMaximumSelectionSize()
Description copied from interface:HasMaximumSelectionSizeReturns the current maximum selection size.- Specified by:
getMaximumSelectionSizein interfaceHasMaximumSelectionSize- Returns:
- Maximum allowed selection size;
HasMaximumSelectionSize.UNLIMITEDby default.
-
-