Class GridContextMenu<T>
- All Implemented Interfaces:
 AttachNotifier,DetachNotifier,HasComponents,HasElement,HasEnabled,HasStyle,Serializable
<vaadin-context-menu> to be used with
 Grid.- Author:
 - Vaadin Ltd.
 - See Also:
 
- 
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classEvent that is fired when aGridMenuItemis clicked inside aGridContextMenu.static classNested classes/interfaces inherited from class com.vaadin.flow.component.contextmenu.ContextMenuBase
ContextMenuBase.OpenedChangeEvent<TComponent extends ContextMenuBase<TComponent,?, ?>>  - 
Field Summary
Fields inherited from class com.vaadin.flow.component.contextmenu.ContextMenuBase
EVENT_DETAIL - 
Constructor Summary
ConstructorsConstructorDescriptionCreates an empty context menu to be used with a Grid.GridContextMenu(Grid<T> target) Creates an empty context menu with the given target component. - 
Method Summary
Modifier and TypeMethodDescriptionaddGridContextMenuOpenedListener(ComponentEventListener<GridContextMenu.GridContextMenuOpenedEvent<T>> listener) Adds a listener for theopened-changedevents fired by the web component.addItem(Component component, ComponentEventListener<GridContextMenu.GridContextMenuItemClickEvent<T>> clickListener) addItem(String text, ComponentEventListener<GridContextMenu.GridContextMenuItemClickEvent<T>> clickListener) protected MenuManager<GridContextMenu<T>,GridMenuItem<T>, GridSubMenu<T>> createMenuManager(SerializableRunnable contentReset) Creates a menu manager instance which contains logic to control the menu content.Gets the callback function that is executed before the context menu is opened.protected booleanonBeforeOpenMenu(elemental.json.JsonObject eventDetail) Decides whether to open the menu when theContextMenuBase.beforeOpenHandler(DomEvent)is processed, sub-classes can easily override it and perform additional operations in this phase.voidsetDynamicContentHandler(SerializablePredicate<T> dynamicContentHandler) Sets a callback that is executed before the context menu is opened.voidSets the target component for this context menu.Methods inherited from class com.vaadin.flow.component.contextmenu.ContextMenuBase
add, add, add, addComponent, addComponent, addComponentAsFirst, addComponentAtIndex, addItem, addItem, addOpenedChangeListener, addSeparator, close, getChildren, getItems, getMenuManager, getTarget, isOpened, isOpenOnClick, remove, removeAll, setOpenOnClickMethods inherited from class com.vaadin.flow.component.Component
addListener, findAncestor, fireEvent, from, get, getElement, getEventBus, getId, getListeners, getLocale, getParent, getTranslation, getTranslation, getTranslation, getTranslation, getTranslation, getTranslation, getUI, hasListener, isAttached, isTemplateMapped, isVisible, onAttach, onDetach, onEnabledStateChanged, removeFromParent, scrollIntoView, scrollIntoView, set, setElement, setId, setVisibleMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.vaadin.flow.component.AttachNotifier
addAttachListenerMethods inherited from interface com.vaadin.flow.component.DetachNotifier
addDetachListenerMethods inherited from interface com.vaadin.flow.component.HasComponents
removeMethods inherited from interface com.vaadin.flow.component.HasElement
getElementMethods inherited from interface com.vaadin.flow.component.HasEnabled
isEnabled, setEnabledMethods inherited from interface com.vaadin.flow.component.HasStyle
addClassName, addClassNames, getClassName, getClassNames, getStyle, hasClassName, removeClassName, removeClassNames, setClassName, setClassName 
- 
Constructor Details
- 
GridContextMenu
public GridContextMenu()Creates an empty context menu to be used with a Grid. - 
GridContextMenu
Creates an empty context menu with the given target component.- Parameters:
 target- the target component for this context menu- See Also:
 
 
 - 
 - 
Method Details
- 
setTarget
Sets the target component for this context menu.By default, the context menu can be opened with a right click or a long touch on the target component.
- Overrides:
 setTargetin classContextMenuBase<GridContextMenu<T>,GridMenuItem<T>, GridSubMenu<T>> - Parameters:
 target- the target component for this context menu, can benullto remove the target- Throws:
 IllegalArgumentException- if the given target is not an instance ofGrid
 - 
addItem
public GridMenuItem<T> addItem(String text, ComponentEventListener<GridContextMenu.GridContextMenuItemClickEvent<T>> clickListener)  - 
addItem
public GridMenuItem<T> addItem(Component component, ComponentEventListener<GridContextMenu.GridContextMenuItemClickEvent<T>> clickListener)  - 
createMenuManager
protected MenuManager<GridContextMenu<T>,GridMenuItem<T>, createMenuManagerGridSubMenu<T>> (SerializableRunnable contentReset) Description copied from class:ContextMenuBaseCreates a menu manager instance which contains logic to control the menu content.- Specified by:
 createMenuManagerin classContextMenuBase<GridContextMenu<T>,GridMenuItem<T>, GridSubMenu<T>> - Parameters:
 contentReset- callback to reset the menu content- Returns:
 - a new menu manager instance
 
 - 
addGridContextMenuOpenedListener
public Registration addGridContextMenuOpenedListener(ComponentEventListener<GridContextMenu.GridContextMenuOpenedEvent<T>> listener) Adds a listener for theopened-changedevents fired by the web component.- Parameters:
 listener- the listener to add- Returns:
 - a Registration for removing the event listener
 
 - 
getDynamicContentHandler
Gets the callback function that is executed before the context menu is opened.The dynamic context handler allows for customizing the contents of the context menu before it is open.
- Returns:
 - the callback function that is executed before opening the context
         menu, or 
nullif not specified. 
 - 
setDynamicContentHandler
Sets a callback that is executed before the context menu is opened.This callback receives the clicked item (if any) as an input parameter and further can dynamically modify the contents of the context menu. This is useful in situations where the context menu items cannot be known in advance and depend on the specific context (i.e. clicked row) and thus can be configured dynamically. The boolean return value of this callback specifies if the context menu will be opened.
- Parameters:
 dynamicContentHandler- the callback function that will be executed before opening the context menu.
 - 
onBeforeOpenMenu
protected boolean onBeforeOpenMenu(elemental.json.JsonObject eventDetail) Decides whether to open the menu when theContextMenuBase.beforeOpenHandler(DomEvent)is processed, sub-classes can easily override it and perform additional operations in this phase.The event details are completely specified by the target component that is in charge of defining the data it sends to the server. Based on this information, this method enables for dynamically modifying the contents of the context menu. Furthermore, this method's return value specifies if the context menu will be opened.
- Overrides:
 onBeforeOpenMenuin classContextMenuBase<GridContextMenu<T>,GridMenuItem<T>, GridSubMenu<T>> - Parameters:
 eventDetail- the client side event details provided by the target component.- Returns:
 trueif the context menu should be opened,falseotherwise.
 
 -