com.vaadin.flow.component.menubar.
Class MenuBar
- java.lang.Object
-
- com.vaadin.flow.component.Component
-
- com.vaadin.flow.component.menubar.MenuBar
-
All Implemented Interfaces:
AttachNotifier, HasMenuItems, DetachNotifier, HasElement, HasSize, HasStyle, HasTheme, Serializable
@Tag(value="vaadin-menu-bar") @JavaScript(value="frontend://menubarConnector.js") @JsModule(value="./menubarConnector.js") @JsModule(value="@vaadin/vaadin-menu-bar/src/vaadin-menu-bar.js") @NpmPackage(value="@vaadin/vaadin-menu-bar", version="1.3.2") public class MenuBar extends Component implements HasMenuItems, HasSize, HasStyle, HasTheme
Server-side component for the
vaadin-menu-bar
element.Author:
Vaadin Ltd
See Also:
-
-
Constructor Summary
Constructors Constructor and Description MenuBar()
Creates an empty menu bar component.
-
Method Summary
All Methods Modifier and Type Method and Description MenuItem
addItem(Component component)
Creates a new
MenuItem
component and adds it to the root level of this menu bar.MenuItem
addItem(Component component, ComponentEventListener<ClickEvent<MenuItem>> clickListener)
Creates a new
MenuItem
component with the provided click listener and adds it to the root level of this menu bar.MenuItem
addItem(String text)
Creates a new
MenuItem
component with the provided text content and adds it to the root level of this menu bar.MenuItem
addItem(String text, ComponentEventListener<ClickEvent<MenuItem>> clickListener)
Creates a new
MenuItem
component with the provided text content and click listener and adds it to the root level of this menu bar.void
addThemeVariants(MenuBarVariant... variants)
Adds theme variants to the component.
Stream<Component>
getChildren()
Gets the child components of this menu bar.
List<MenuItem>
getItems()
Gets the
MenuItem
components added to the root level of the menu bar.boolean
isOpenOnHover()
Gets whether the sub menus open by clicking or hovering on the root level buttons.
void
remove(MenuItem... items)
Removes the given item components from this menu bar.
void
removeAll()
Removes all item components from this menu bar.
void
removeThemeVariants(MenuBarVariant... variants)
Removes theme variants from the component.
void
setOpenOnHover(boolean openOnHover)
Sets the event which opens the sub menus of the root level buttons.
-
Methods inherited from class com.vaadin.flow.component.Component
addListener, fireEvent, from, get, getElement, getEventBus, getId, getLocale, getParent, getTranslation, getTranslation, getTranslation, getTranslation, getUI, hasListener, isAttached, isTemplateMapped, isVisible, onAttach, onDetach, onEnabledStateChanged, 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.HasSize
getCssSize, 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.HasElement
getElement
-
Methods inherited from interface com.vaadin.flow.component.AttachNotifier
addAttachListener
-
Methods inherited from interface com.vaadin.flow.component.DetachNotifier
addDetachListener
-
-
-
-
Constructor Detail
-
MenuBar
public MenuBar()
Creates an empty menu bar component.
Use
addItem(String)
to add content to the menu bar.
-
-
Method Detail
-
addItem
public MenuItem addItem(String text)
Creates a new
MenuItem
component with the provided text content and adds it to the root level of this menu bar.The added
MenuItem
component is placed inside a button in the menu bar. If this button overflows the menu bar horizontally, theMenuItem
is moved out of the button, into a context menu openable via an overflow button at the end of the button row.To add content to the sub menu opened by clicking the root level item, use
MenuItemBase.getSubMenu()
.Parameters:
text
- the text content for the new itemReturns:
the added
MenuItem
component
-
addItem
public MenuItem addItem(Component component)
Creates a new
MenuItem
component and adds it to the root level of this menu bar. The provided component is added into the createdMenuItem
.The added
MenuItem
component is placed inside a button in the menu bar. If this button overflows the menu bar horizontally, theMenuItem
is moved out of the button, into a context menu openable via an overflow button at the end of the button row.To add content to the sub menu opened by clicking the root level item, use
MenuItemBase.getSubMenu()
.Parameters:
component
- the component to add inside new itemReturns:
the added
MenuItem
component
-
addItem
public MenuItem addItem(String text, ComponentEventListener<ClickEvent<MenuItem>> clickListener)
Creates a new
MenuItem
component with the provided text content and click listener and adds it to the root level of this menu bar.The added
MenuItem
component is placed inside a button in the menu bar. If this button overflows the menu bar horizontally, theMenuItem
is moved out of the button, into a context menu openable via an overflow button at the end of the button row.To add content to the sub menu opened by clicking the root level item, use
MenuItemBase.getSubMenu()
.Specified by:
addItem
in interfaceHasMenuItems
Parameters:
text
- the text content for the new itemclickListener
- the handler for clicking the new item, can benull
to not add listenerReturns:
the added
MenuItem
componentSee Also:
HasMenuItems.addItem(Component, ComponentEventListener)
,ContextMenuBase.add(Component...)
,SubMenuBase.add(Component...)
-
addItem
public MenuItem addItem(Component component, ComponentEventListener<ClickEvent<MenuItem>> clickListener)
Creates a new
MenuItem
component with the provided click listener and adds it to the root level of this menu bar. The provided component is added into the createdMenuItem
.The added
MenuItem
component is placed inside a button in the menu bar. If this button overflows the menu bar horizontally, theMenuItem
is moved out of the button, into a context menu openable via an overflow button at the end of the button row.To add content to the sub menu opened by clicking the root level item, use
MenuItemBase.getSubMenu()
.Specified by:
addItem
in interfaceHasMenuItems
Parameters:
component
- the component to add inside the added menu itemclickListener
- the handler for clicking the new item, can benull
to not add listenerReturns:
the added
MenuItem
componentSee Also:
HasMenuItems.addItem(String, ComponentEventListener)
,ContextMenuBase.add(Component...)
,SubMenuBase.add(Component...)
-
getItems
public List<MenuItem> getItems()
Gets the
MenuItem
components added to the root level of the menu bar.To manage the contents inside the sub menus, use the
MenuItemBase.getSubMenu()
.Returns:
the root level
MenuItem
components added to this menu bar
-
remove
public void remove(MenuItem... items)
Removes the given item components from this menu bar.
Parameters:
items
- the item components to remove, notnull
Throws:
IllegalArgumentException
- if any of the item components to remove is not a child of this menu bar
-
removeAll
public void removeAll()
Removes all item components from this menu bar.
-
getChildren
public Stream<Component> getChildren()
Gets the child components of this menu bar.
The returned components are the same as the ones returned by
getItems()
.Overrides:
getChildren
in classComponent
Returns:
the child components of this menu bar
See Also:
-
setOpenOnHover
public void setOpenOnHover(boolean openOnHover)
Sets the event which opens the sub menus of the root level buttons.
Parameters:
openOnHover
-true
to make the sub menus open on hover (mouseover),false
to make them openable by clicking
-
isOpenOnHover
public boolean isOpenOnHover()
Gets whether the sub menus open by clicking or hovering on the root level buttons.
Returns:
true
if the sub menus open by hovering on the root level buttons,false
if they open by clicking
-
addThemeVariants
public void addThemeVariants(MenuBarVariant... variants)
Adds theme variants to the component.
Parameters:
variants
- theme variants to add
-
removeThemeVariants
public void removeThemeVariants(MenuBarVariant... variants)
Removes theme variants from the component.
Parameters:
variants
- theme variants to remove
-
-