Class MainLayout

java.lang.Object
com.vaadin.flow.component.Component
com.vaadin.flow.component.applayout.AppLayout
org.vaadin.firitin.appframework.VAppLayout
org.vaadin.firitin.appframework.MainLayout
All Implemented Interfaces:
com.vaadin.flow.component.AttachNotifier, com.vaadin.flow.component.DetachNotifier, com.vaadin.flow.component.HasElement, com.vaadin.flow.component.HasStyle, com.vaadin.flow.router.RouterLayout, Serializable

public abstract class MainLayout extends VAppLayout
The main view is a top-level placeholder for other views. This version is based on a one produced by start.vaadin.com service, but add a bit structure to it and populates main views automatically to it.

Suites as such for small apps that has no special needs for the main layout. Menu items can be configured (override caption, order, icon) using MenuItem annotation

Check usage example from the text package org.vaadin.firitin.appframework

See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.vaadin.flow.component.applayout.AppLayout

    com.vaadin.flow.component.applayout.AppLayout.AppLayoutI18n, com.vaadin.flow.component.applayout.AppLayout.Section
  • Field Summary

    Fields inherited from class org.vaadin.firitin.appframework.VAppLayout

    navbarHelpers
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
     
    void
    This method can be called to re-build the menu, if e.g. views has been added, removed or otherwise changed.
    protected boolean
    checkAccess(NavigationItem navigationItem)
    Application that has e.g. role based access control can limit the appearance of the navigation item in the menu by returning false here.
     
    protected void
     
    protected void
    onAttach(com.vaadin.flow.component.AttachEvent attachEvent)
     
    protected void
    sortMenuItems(List<NavigationItem> navigationItems)
     

    Methods inherited from class com.vaadin.flow.component.applayout.AppLayout

    addToDrawer, addToNavbar, addToNavbar, getContent, getI18n, getPrimarySection, isDrawerOpened, isOverlay, remove, setDrawerOpened, setI18n, setPrimarySection, showRouterLayoutContent

    Methods inherited from class com.vaadin.flow.component.Component

    addListener, findAncestor, fireEvent, from, get, getChildren, getElement, getEventBus, getId, getListeners, getLocale, getParent, getTranslation, getTranslation, getTranslation, getTranslation, getTranslation, getTranslation, getUI, hasListener, isAttached, isTemplateMapped, isVisible, onDetach, onEnabledStateChanged, removeFromParent, scrollIntoView, scrollIntoView, 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.AttachNotifier

    addAttachListener

    Methods inherited from interface com.vaadin.flow.component.DetachNotifier

    addDetachListener

    Methods inherited from interface com.vaadin.flow.component.HasElement

    getElement

    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.router.RouterLayout

    removeRouterLayoutContent
  • Constructor Details

    • MainLayout

      public MainLayout()
  • Method Details

    • onAttach

      protected void onAttach(com.vaadin.flow.component.AttachEvent attachEvent)
      Overrides:
      onAttach in class com.vaadin.flow.component.applayout.AppLayout
    • init

      protected void init()
    • sortMenuItems

      protected void sortMenuItems(List<NavigationItem> navigationItems)
    • getNavigationItems

      public List<NavigationItem> getNavigationItems()
      Returns:
      A List of BasicNavigationItem objects to be shown in the menu. After modifying these manually, call buildMenu() to update the screen.
    • buildMenu

      public void buildMenu()
      This method can be called to re-build the menu, if e.g. views has been added, removed or otherwise changed.

      If you have dynamically added/removed views from another thread, wrap the behavior in UI.access method.

    • checkAccess

      protected boolean checkAccess(NavigationItem navigationItem)
      Application that has e.g. role based access control can limit the appearance of the navigation item in the menu by returning false here.
      Parameters:
      navigationItem - the navigation item
      Returns:
      true if item should be visible or not
    • afterNavigation

      protected void afterNavigation()
      Overrides:
      afterNavigation in class VAppLayout