All Implemented Interfaces:
Control, View

public class MenuBarView extends BoxView
MenuBarView shows items horizontally and is typically used in layouts which builds complete terminal UI's. Internally MenuView is used to show the menus.
  • Constructor Details

    • MenuBarView

      public MenuBarView(MenuBarView.MenuBarItem[] items)
      Construct menubar view with menubar items.
      Parameters:
      items - the menubar items
  • Method Details

    • of

      public static MenuBarView of(MenuBarView.MenuBarItem... items)
      Construct menubar view with menubar items.
      Parameters:
      items - the menubar items
    • drawInternal

      protected void drawInternal(Screen screen)
      Description copied from class: BoxView
      Possibly draws a box around this view and title in a box top boundary. Also calls a draw function if defined.
      Overrides:
      drawInternal in class BoxView
      Parameters:
      screen - the screen
    • initInternal

      protected void initInternal()
      Description copied from class: AbstractView
      Internal init method called from AbstractView.init(). Override to do something usefull. Typically key and mousebindings are registered from this method.
      Overrides:
      initInternal in class AbstractView
    • getKeyHandler

      public KeyHandler getKeyHandler()
      Description copied from class: AbstractView
      Handles keys by dispatching registered command runnable into an event loop. Override to change default behaviour.
      Specified by:
      getKeyHandler in interface View
      Overrides:
      getKeyHandler in class AbstractView
      Returns:
      a view mouse handler
      See Also:
    • getMouseHandler

      public MouseHandler getMouseHandler()
      Description copied from class: AbstractView
      Handles mouse events by dispatching registered consumers into an event loop. Override to change default behaviour.
      Specified by:
      getMouseHandler in interface View
      Overrides:
      getMouseHandler in class AbstractView
      Returns:
      a view mouse handler
      See Also:
    • getItems

      public List<MenuBarView.MenuBarItem> 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 -1 effectively un-selecting active item.
      Parameters:
      index - the new index
    • setThemeName

      public void setThemeName(String themeName)
      Description copied from class: AbstractControl
      Sets a theme name to use.
      Specified by:
      setThemeName in interface Control
      Overrides:
      setThemeName in class AbstractControl
      Parameters:
      themeName - the theme name
    • setThemeResolver

      public void setThemeResolver(ThemeResolver themeResolver)
      Description copied from class: AbstractControl
      Specified by:
      setThemeResolver in interface Control
      Overrides:
      setThemeResolver in class AbstractControl
      Parameters:
      themeResolver - the theme resolver
    • setItems

      public void setItems(List<MenuBarView.MenuBarItem> items)
      Sets items.
      Parameters:
      items - status items