Class AbstractGridMultiSelectionModel<T>
- java.lang.Object
-
- com.vaadin.flow.component.grid.Grid.AbstractGridExtension<T>
-
- com.vaadin.flow.component.grid.AbstractGridMultiSelectionModel<T>
-
- Type Parameters:
T- the grid type
- All Implemented Interfaces:
GridMultiSelectionModel<T>,GridSelectionModel<T>,com.vaadin.flow.data.provider.DataGenerator<T>,com.vaadin.flow.data.selection.SelectionModel<Grid<T>,T>,com.vaadin.flow.data.selection.SelectionModel.Multi<Grid<T>,T>,Serializable
public abstract class AbstractGridMultiSelectionModel<T> extends Grid.AbstractGridExtension<T> implements GridMultiSelectionModel<T>
Abstract implementation of a GridMultiSelectionModel.- Author:
- Vaadin Ltd.
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.vaadin.flow.component.grid.GridMultiSelectionModel
GridMultiSelectionModel.SelectAllCheckboxVisibility
-
Nested classes/interfaces inherited from interface com.vaadin.flow.data.selection.SelectionModel
com.vaadin.flow.data.selection.SelectionModel.Multi<C extends com.vaadin.flow.component.Component,T extends Object>, com.vaadin.flow.data.selection.SelectionModel.Single<C extends com.vaadin.flow.component.Component,T extends Object>
-
-
Constructor Summary
Constructors Constructor Description AbstractGridMultiSelectionModel(Grid<T> grid)Constructor for passing a reference of the grid to this implementation.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description com.vaadin.flow.shared.RegistrationaddMultiSelectionListener(com.vaadin.flow.data.selection.MultiSelectionListener<Grid<T>,T> listener)Adds a selection listener that will be called when the selection is changed either by the user or programmatically.com.vaadin.flow.shared.RegistrationaddSelectionListener(com.vaadin.flow.data.selection.SelectionListener<Grid<T>,T> listener)com.vaadin.flow.data.selection.MultiSelect<Grid<T>,T>asMultiSelect()Gets a wrapper to use this multiselection model as a multiselect inBinder.voiddeselect(T item)voiddeselectAll()voiddeselectFromClient(T item)Handles the deselection of an item that originates from the client.protected abstract voidfireSelectionEvent(com.vaadin.flow.data.selection.SelectionEvent<Grid<T>,T> event)Method for handling the firing of selection events.voidgenerateData(T item, elemental.json.JsonObject jsonObject)Optional<T>getFirstSelectedItem()GridMultiSelectionModel.SelectAllCheckboxVisibilitygetSelectAllCheckboxVisibility()Gets the current mode for the select all checkbox visibility.protected Set<Object>getSelectedItemIds()Returns an unmodifiable view of the selected item ids.Set<T>getSelectedItems()booleanisSelectAllCheckboxVisible()Returns whether the select all checkbox will be visible with the current setting ofGridMultiSelectionModel.setSelectAllCheckboxVisibility(SelectAllCheckboxVisibility)and the type of data set to the Grid (in-memory or lazy).booleanisSelected(T item)booleanisSelectionColumnFrozen()Gets the the selection column's frozen state.protected voidremove()Remove this extension from its target.voidselect(T item)voidselectAll()voidselectFromClient(T item)Handles the selection of an item that originates from the client.voidsetSelectAllCheckboxVisibility(GridMultiSelectionModel.SelectAllCheckboxVisibility selectAllCheckBoxVisibility)Sets the select all checkbox visibility mode.voidsetSelectionColumnFrozen(boolean frozen)Sets the selection column's frozen state.voidupdateSelection(Set<T> addedItems, Set<T> removedItems)-
Methods inherited from class com.vaadin.flow.component.grid.Grid.AbstractGridExtension
extend, getGrid, refresh
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
-
-
Method Detail
-
remove
protected void remove()
Description copied from class:Grid.AbstractGridExtensionRemove this extension from its target.- Overrides:
removein classGrid.AbstractGridExtension<T>
-
selectFromClient
public void selectFromClient(T item)
Description copied from interface:GridSelectionModelHandles the selection of an item that originates from the client.- Specified by:
selectFromClientin interfaceGridSelectionModel<T>- Parameters:
item- the item being selected
-
deselectFromClient
public void deselectFromClient(T item)
Description copied from interface:GridSelectionModelHandles the deselection of an item that originates from the client.- Specified by:
deselectFromClientin interfaceGridSelectionModel<T>- Parameters:
item- the item being deselected
-
getSelectedItemIds
protected Set<Object> getSelectedItemIds()
Returns an unmodifiable view of the selected item ids.Exposed to be overridden within subclasses.
The returned Set may be a direct view of the internal data structures of this class. A defensive copy should be made by callers when iterating over this Set and modifying the selection during iteration to avoid ConcurrentModificationExceptions.
- Returns:
- An unmodifiable view of the selected item ids. Updates in the selection may or may not be directly reflected in the Set.
-
select
public void select(T item)
-
deselect
public void deselect(T item)
-
selectAll
public void selectAll()
-
deselectAll
public void deselectAll()
-
isSelected
public boolean isSelected(T item)
-
asMultiSelect
public com.vaadin.flow.data.selection.MultiSelect<Grid<T>,T> asMultiSelect()
Description copied from interface:GridMultiSelectionModelGets a wrapper to use this multiselection model as a multiselect inBinder.- Specified by:
asMultiSelectin interfaceGridMultiSelectionModel<T>- Returns:
- the multiselect wrapper
-
addSelectionListener
public com.vaadin.flow.shared.Registration addSelectionListener(com.vaadin.flow.data.selection.SelectionListener<Grid<T>,T> listener)
-
addMultiSelectionListener
public com.vaadin.flow.shared.Registration addMultiSelectionListener(com.vaadin.flow.data.selection.MultiSelectionListener<Grid<T>,T> listener)
Description copied from interface:GridMultiSelectionModelAdds a selection listener that will be called when the selection is changed either by the user or programmatically.- Specified by:
addMultiSelectionListenerin interfaceGridMultiSelectionModel<T>- Parameters:
listener- the multi selection listener, notnull- Returns:
- a registration for the listener
-
setSelectAllCheckboxVisibility
public void setSelectAllCheckboxVisibility(GridMultiSelectionModel.SelectAllCheckboxVisibility selectAllCheckBoxVisibility)
Description copied from interface:GridMultiSelectionModelSets the select all checkbox visibility mode.The default value is
GridMultiSelectionModel.SelectAllCheckboxVisibility.DEFAULT, which means that the checkbox is only visible if the grid's data provider is in-memory.The select all checkbox will never be shown if the Grid uses lazy loading with unknown item count, i.e. no items count query provided to it, and even setting
GridMultiSelectionModel.SelectAllCheckboxVisibility.VISIBLEwon't make it visible.- Specified by:
setSelectAllCheckboxVisibilityin interfaceGridMultiSelectionModel<T>- Parameters:
selectAllCheckBoxVisibility- the visiblity mode to use- See Also:
GridMultiSelectionModel.SelectAllCheckboxVisibility
-
getSelectAllCheckboxVisibility
public GridMultiSelectionModel.SelectAllCheckboxVisibility getSelectAllCheckboxVisibility()
Description copied from interface:GridMultiSelectionModelGets the current mode for the select all checkbox visibility.- Specified by:
getSelectAllCheckboxVisibilityin interfaceGridMultiSelectionModel<T>- Returns:
- the select all checkbox visibility mode
- See Also:
GridMultiSelectionModel.SelectAllCheckboxVisibility,GridMultiSelectionModel.isSelectAllCheckboxVisible()
-
isSelectAllCheckboxVisible
public boolean isSelectAllCheckboxVisible()
Description copied from interface:GridMultiSelectionModelReturns whether the select all checkbox will be visible with the current setting ofGridMultiSelectionModel.setSelectAllCheckboxVisibility(SelectAllCheckboxVisibility)and the type of data set to the Grid (in-memory or lazy).The select all checkbox will never be shown if the Grid uses lazy loading with unknown item count, meaning that no count callback has been provided.
- Specified by:
isSelectAllCheckboxVisiblein interfaceGridMultiSelectionModel<T>- Returns:
trueif the checkbox will be visible with the current settings- See Also:
GridMultiSelectionModel.SelectAllCheckboxVisibility,GridMultiSelectionModel.setSelectAllCheckboxVisibility(SelectAllCheckboxVisibility)
-
generateData
public void generateData(T item, elemental.json.JsonObject jsonObject)
- Specified by:
generateDatain interfacecom.vaadin.flow.data.provider.DataGenerator<T>
-
setSelectionColumnFrozen
public void setSelectionColumnFrozen(boolean frozen)
Description copied from interface:GridMultiSelectionModelSets the selection column's frozen state.- Specified by:
setSelectionColumnFrozenin interfaceGridMultiSelectionModel<T>- Parameters:
frozen- whether to freeze or unfreeze the selection column
-
isSelectionColumnFrozen
public boolean isSelectionColumnFrozen()
Description copied from interface:GridMultiSelectionModelGets the the selection column's frozen state.- Specified by:
isSelectionColumnFrozenin interfaceGridMultiSelectionModel<T>- Returns:
- whether the selection column is frozen
-
-