public Menus getMenus() { PrimaryActionMenuBuilder viewTableAction = new PrimaryActionMenuBuilder(i18n.viewTable(), "fa-table", i18n.viewTable(), () -> showTable(), true); PrimaryActionMenuBuilder viewDashboardAction = new PrimaryActionMenuBuilder(i18n.viewDashboard(), "fa-th", i18n.viewDashboard(), () -> { showDashboard(); }, true); viewTableAction.addChangeListener(enabled -> { viewTableAction.setVisible(false); viewDashboardAction.setVisible(true); }); viewDashboardAction.addChangeListener(enabled -> { viewTableAction.setVisible(true); viewDashboardAction.setVisible(false); }); viewTableAction.setVisible(true); viewDashboardAction.setVisible(false); return MenuFactory .newTopLevelCustomMenu(viewTableAction) .endMenu() .newTopLevelCustomMenu(viewDashboardAction) .endMenu() .build(); }