Search in sources :

Example 1 with MenuBuilder

use of org.uberfire.workbench.model.menu.MenuFactory.MenuBuilder in project kie-wb-common by kiegroup.

the class DefaultWorkbenchFeaturesMenusHelper method addUtilitiesMenuItems.

public void addUtilitiesMenuItems() {
    addUserMenuItems();
    TopLevelMenusBuilder<MenuBuilder> menuBuilder;
    menuBuilder = MenuFactory.newTopLevelCustomMenu(iocManager.lookupBean(AppLauncherMenuBuilder.class).getInstance()).endMenu();
    menuBuilder.newTopLevelCustomMenu(iocManager.lookupBean(CustomSplashHelp.class).getInstance()).endMenu();
    if (hasAccessToPerspective(ADMIN)) {
        menuBuilder.newTopLevelCustomMenu(iocManager.lookupBean(AdminCustomMenuBuilder.class).getInstance()).endMenu();
    }
    menuBuilder.newTopLevelCustomMenu(iocManager.lookupBean(ResetPerspectivesMenuBuilder.class).getInstance()).endMenu();
    menuBuilder.newTopLevelCustomMenu(userMenu).endMenu();
    final Menus utilityMenus = menuBuilder.build();
    menuBar.addMenus(utilityMenus);
}
Also used : ResetPerspectivesMenuBuilder(org.kie.workbench.common.widgets.client.menu.ResetPerspectivesMenuBuilder) Menus(org.uberfire.workbench.model.menu.Menus) CustomSplashHelp(org.uberfire.client.menu.CustomSplashHelp) WorkbenchViewModeSwitcherMenuBuilder(org.uberfire.client.menu.WorkbenchViewModeSwitcherMenuBuilder) AppLauncherMenuBuilder(org.kie.workbench.common.widgets.client.menu.AppLauncherMenuBuilder) MenuBuilder(org.uberfire.workbench.model.menu.MenuFactory.MenuBuilder) ResetPerspectivesMenuBuilder(org.kie.workbench.common.widgets.client.menu.ResetPerspectivesMenuBuilder) AdminCustomMenuBuilder(org.kie.workbench.common.workbench.client.menu.custom.AdminCustomMenuBuilder) AdminCustomMenuBuilder(org.kie.workbench.common.workbench.client.menu.custom.AdminCustomMenuBuilder)

Example 2 with MenuBuilder

use of org.uberfire.workbench.model.menu.MenuFactory.MenuBuilder in project kie-wb-common by kiegroup.

the class DefaultWorkbenchFeaturesMenusHelper method buildMenuItemsFromNavGroup.

public List<MenuItem> buildMenuItemsFromNavGroup(NavGroup navGroup) {
    List<MenuItem> result = new ArrayList<>();
    for (NavItem navItem : navGroup.getChildren()) {
        // Skip dividers
        if (navItem instanceof NavDivider) {
            continue;
        }
        // Append its children
        MenuBuilder<Builder> builder = MenuFactory.newSimpleItem(navItem.getName());
        if (navItem instanceof NavGroup) {
            List<MenuItem> childItems = buildMenuItemsFromNavGroup((NavGroup) navItem);
            builder.withItems(childItems);
        }
        // Append the place request
        NavWorkbenchCtx navCtx = NavWorkbenchCtx.get(navItem);
        if (navCtx.getResourceId() != null && ActivityResourceType.PERSPECTIVE.equals(navCtx.getResourceType())) {
            PlaceRequest placeRequest = resolvePlaceRequest(navCtx.getResourceId());
            builder.place(placeRequest);
        }
        // Build the menu item & continue with the next one
        MenuItem menuItem = builder.endMenu().build().getItems().get(0);
        result.add(menuItem);
    }
    return result;
}
Also used : DefaultPlaceRequest(org.uberfire.mvp.impl.DefaultPlaceRequest) PlaceRequest(org.uberfire.mvp.PlaceRequest) WorkbenchViewModeSwitcherMenuBuilder(org.uberfire.client.menu.WorkbenchViewModeSwitcherMenuBuilder) AppLauncherMenuBuilder(org.kie.workbench.common.widgets.client.menu.AppLauncherMenuBuilder) MenuBuilder(org.uberfire.workbench.model.menu.MenuFactory.MenuBuilder) ResetPerspectivesMenuBuilder(org.kie.workbench.common.widgets.client.menu.ResetPerspectivesMenuBuilder) AdminCustomMenuBuilder(org.kie.workbench.common.workbench.client.menu.custom.AdminCustomMenuBuilder) TopLevelMenusBuilder(org.uberfire.workbench.model.menu.MenuFactory.TopLevelMenusBuilder) Builder(org.uberfire.workbench.model.menu.MenuFactory.Builder) ArrayList(java.util.ArrayList) MenuItem(org.uberfire.workbench.model.menu.MenuItem) NavWorkbenchCtx(org.dashbuilder.navigation.workbench.NavWorkbenchCtx) NavItem(org.dashbuilder.navigation.NavItem) NavDivider(org.dashbuilder.navigation.NavDivider) NavGroup(org.dashbuilder.navigation.NavGroup)

Aggregations

AppLauncherMenuBuilder (org.kie.workbench.common.widgets.client.menu.AppLauncherMenuBuilder)2 ResetPerspectivesMenuBuilder (org.kie.workbench.common.widgets.client.menu.ResetPerspectivesMenuBuilder)2 AdminCustomMenuBuilder (org.kie.workbench.common.workbench.client.menu.custom.AdminCustomMenuBuilder)2 WorkbenchViewModeSwitcherMenuBuilder (org.uberfire.client.menu.WorkbenchViewModeSwitcherMenuBuilder)2 MenuBuilder (org.uberfire.workbench.model.menu.MenuFactory.MenuBuilder)2 ArrayList (java.util.ArrayList)1 NavDivider (org.dashbuilder.navigation.NavDivider)1 NavGroup (org.dashbuilder.navigation.NavGroup)1 NavItem (org.dashbuilder.navigation.NavItem)1 NavWorkbenchCtx (org.dashbuilder.navigation.workbench.NavWorkbenchCtx)1 CustomSplashHelp (org.uberfire.client.menu.CustomSplashHelp)1 PlaceRequest (org.uberfire.mvp.PlaceRequest)1 DefaultPlaceRequest (org.uberfire.mvp.impl.DefaultPlaceRequest)1 Builder (org.uberfire.workbench.model.menu.MenuFactory.Builder)1 TopLevelMenusBuilder (org.uberfire.workbench.model.menu.MenuFactory.TopLevelMenusBuilder)1 MenuItem (org.uberfire.workbench.model.menu.MenuItem)1 Menus (org.uberfire.workbench.model.menu.Menus)1