Class MenuManager<C extends Component,I extends MenuItemBase<?,I,S>,S extends SubMenuBase<?,I,S>>
java.lang.Object
com.vaadin.flow.component.contextmenu.MenuManager<C,I,S>
- Type Parameters:
C- the context menu typeI- the menu item typeS- the sub menu type
- All Implemented Interfaces:
Serializable
public class MenuManager<C extends Component,I extends MenuItemBase<?,I,S>,S extends SubMenuBase<?,I,S>>
extends Object
implements Serializable
Common management logic for context menus and sub menus. Maintains the list
of components to stamp into one overlay.
- Author:
- Vaadin Ltd.
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionMenuManager(C menu, SerializableRunnable contentReset, SerializableBiFunction<C, SerializableRunnable, I> itemGenerator, Class<I> itemType, I parentMenuItem) Creates a new manager instance. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddComponent(Component... components) Adds components to the (sub)menu.voidaddComponentAtIndex(int index, Component component) Inserts component to the (sub)menu using theindex.Adds a component as a menu item.addItem(Component component, ComponentEventListener<ClickEvent<I>> clickListener) Adds a component as a menu item with a click listener.Adds a text as a menu item.addItem(String text, ComponentEventListener<ClickEvent<I>> clickListener) Adds a text as a menu item with a click listener.voidAdds a separator between items.Gets all (sub)menu children.getItems()Gets all children items.voidRemoves components to the (sub)menu.voidRemove all components and items from (sub)menu.
-
Constructor Details
-
MenuManager
public MenuManager(C menu, SerializableRunnable contentReset, SerializableBiFunction<C, SerializableRunnable, I> itemGenerator, Class<I> itemType, I parentMenuItem) Creates a new manager instance.- Parameters:
menu- the context menucontentReset- callback to reset the context menuitemGenerator- the item generator/factoryitemType- the item typeparentMenuItem- the parent menu item of the submenu
-
-
Method Details
-
addItem
Adds a text as a menu item.- Parameters:
text- the text for the menu item- Returns:
- a new menu item
-
addItem
Adds a component as a menu item.- Parameters:
component- the component for the menu item- Returns:
- a new menu item
-
addItem
Adds a text as a menu item with a click listener.- Parameters:
text- the text for the menu itemclickListener- a click listener- Returns:
- a new menu item
-
addItem
Adds a component as a menu item with a click listener.- Parameters:
component- the component for the menu itemclickListener- a click listener- Returns:
- a new menu item
-
addComponent
Adds components to the (sub)menu.The components are added into the content as is, they are not wrapped as menu items.
- Parameters:
components- components to add- See Also:
-
remove
Removes components to the (sub)menu.- Parameters:
components- components to remove- See Also:
-
removeAll
public void removeAll()Remove all components and items from (sub)menu.- See Also:
-
addComponentAtIndex
Inserts component to the (sub)menu using theindex.The component is inserted into the content as is, it is not wrapped as a menu item.
- Parameters:
index- index to insert, not negativecomponent- component to insert- See Also:
-
getChildren
Gets all (sub)menu children.Children consist of components and items.
- Returns:
- the children components
- See Also:
-
getItems
Gets all children items.The items are filtered using the provided item type in the constructor.
- Returns:
- all children items
- See Also:
-
addSeparator
public void addSeparator()Adds a separator between items.
-