Class MenuBarView
java.lang.Object
org.springframework.shell.component.view.control.AbstractControl
org.springframework.shell.component.view.control.AbstractView
org.springframework.shell.component.view.control.BoxView
org.springframework.shell.component.view.control.MenuBarView
MenuBarView shows items horizontally and is
typically used in layouts which builds complete terminal UI's.
Internally MenuView is used to show the menus.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classMenuBarView.MenuBarItemrepresents an item in aMenuBarView. -
Constructor Summary
ConstructorsConstructorDescriptionMenuBarView(MenuBarView.MenuBarItem[] items) Construct menubar view with menubar items. -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddrawInternal(Screen screen) Possibly draws a box around this view and title in a box top boundary.protected StringgetItems()Gets a menubar items.Handles keys by dispatching registered command runnable into an event loop.Handles mouse events by dispatching registered consumers into an event loop.protected voidInternal init method called fromAbstractView.init().static MenuBarViewof(MenuBarView.MenuBarItem... items) Construct menubar view with menubar items.voidsetItems(List<MenuBarView.MenuBarItem> items) Sets items.voidsetSelected(int index) Sets a selected index.voidsetThemeName(String themeName) Sets a theme name to use.voidsetThemeResolver(ThemeResolver themeResolver) Sets aThemeResolver.Methods inherited from class org.springframework.shell.component.view.control.BoxView
drawBackground, getInnerRect, isShowBorder, setBackgroundColor, setBorderPadding, setFocusedTitleColor, setFocusedTitleStyle, setRect, setShowBorder, setTitle, setTitleAlign, setTitleColor, setTitleStyleMethods inherited from class org.springframework.shell.component.view.control.AbstractView
destroy, dispatch, dispatchKeyRunCommand, dispatchMouseRunCommand, dispatchRunnable, draw, focus, getDrawFunction, getEventLoop, getHotKeyBindings, getHotKeyHandler, getKeyBindings, getLayer, getMouseBindings, getViewCommands, getViewService, hasFocus, init, onDestroy, registerHotKeyBinding, registerHotKeyBinding, registerHotKeyBinding, registerKeyBinding, registerKeyBinding, registerKeyBinding, registerMouseBinding, registerMouseBinding, registerMouseBinding, registerViewCommand, runViewCommand, setDrawFunction, setEventLoop, setLayer, setViewService, shortcutMethods inherited from class org.springframework.shell.component.view.control.AbstractControl
getRect, getThemeName, getThemeResolver, resolveThemeBackground, resolveThemeForeground, resolveThemeSpinner, resolveThemeStyle
-
Constructor Details
-
MenuBarView
Construct menubar view with menubar items.- Parameters:
items- the menubar items
-
-
Method Details
-
of
Construct menubar view with menubar items.- Parameters:
items- the menubar items
-
getBackgroundStyle
- Overrides:
getBackgroundStylein classBoxView
-
drawInternal
Description copied from class:BoxViewPossibly draws a box around this view and title in a box top boundary. Also calls adraw functionif defined.- Overrides:
drawInternalin classBoxView- Parameters:
screen- the screen
-
initInternal
protected void initInternal()Description copied from class:AbstractViewInternal init method called fromAbstractView.init(). Override to do something usefull. Typically key and mousebindings are registered from this method.- Overrides:
initInternalin classAbstractView
-
getKeyHandler
Description copied from class:AbstractViewHandles keys by dispatching registered command runnable into an event loop. Override to change default behaviour.- Specified by:
getKeyHandlerin interfaceView- Overrides:
getKeyHandlerin classAbstractView- Returns:
- a view key handler
- See Also:
-
getMouseHandler
Description copied from class:AbstractViewHandles mouse events by dispatching registered consumers into an event loop. Override to change default behaviour.- Specified by:
getMouseHandlerin interfaceView- Overrides:
getMouseHandlerin classAbstractView- Returns:
- a view mouse handler
- See Also:
-
getItems
Gets a menubar items.- Returns:
- menubar items
-
setSelected
public void setSelected(int index) Sets a selected index. If given index is not within bounds of size of items, selection is set to-1effectively un-selecting active item.- Parameters:
index- the new index
-
setThemeName
Description copied from class:AbstractControlSets a theme name to use.- Specified by:
setThemeNamein interfaceControl- Overrides:
setThemeNamein classAbstractControl- Parameters:
themeName- the theme name
-
setThemeResolver
Description copied from class:AbstractControlSets aThemeResolver.- Specified by:
setThemeResolverin interfaceControl- Overrides:
setThemeResolverin classAbstractControl- Parameters:
themeResolver- the theme resolver
-
setItems
Sets items.- Parameters:
items- status items
-