Example usage for org.eclipse.jface.action MenuManager appendToGroup

List of usage examples for org.eclipse.jface.action MenuManager appendToGroup

Introduction

In this page you can find the example usage for org.eclipse.jface.action MenuManager appendToGroup.

Prototype

@Override
    public void appendToGroup(String groupName, IAction action) 

Source Link

Usage

From source file:com.aptana.explorer.navigator.actions.CommandsActionProvider.java

License:Open Source License

protected void fillMenu(MenuManager menuManager) {
    IContributionItem item = menuManager.find(IContextMenuConstants.GROUP_PROPERTIES);
    if (item == null) {
        menuManager.add(new GroupMarker(IContextMenuConstants.GROUP_PROPERTIES));
    }//w w  w  . ja va 2 s  .  co  m
    // Stick Delete in Properties area
    menuManager.appendToGroup(IContextMenuConstants.GROUP_PROPERTIES, new ContributionItem() {

        @Override
        public void fill(Menu menu, int index) {
            final IProject selectedProject = getSelectedProject();
            MenuItem item = new MenuItem(menu, SWT.PUSH);
            item.setText(Messages.SingleProjectView_DeleteProjectMenuItem_LBL);
            item.addSelectionListener(new SelectionAdapter() {
                @Override
                public void widgetSelected(SelectionEvent e) {
                    DeleteResourceAction action = new DeleteResourceAction(getPartSite());
                    action.selectionChanged(new StructuredSelection(selectedProject));
                    action.run();
                }
            });
            boolean enabled = (selectedProject != null && selectedProject.exists());
            ISharedImages images = PlatformUI.getWorkbench().getSharedImages();
            item.setImage(enabled ? images.getImage(ISharedImages.IMG_TOOL_DELETE)
                    : images.getImage(ISharedImages.IMG_TOOL_DELETE_DISABLED));
            item.setEnabled(enabled);
        }

        @Override
        public boolean isDynamic() {
            return true;
        }
    });
}

From source file:com.architexa.diagrams.parts.NavAidsSpec.java

License:Open Source License

public void createMenu(IMenuManager menuManager, Set<Artifact> showableSetModel, NavAidsEditPart aep,
        DirectedRel rel, BasicRootController rc) {

    IContributionItem[] contributions = menuManager.getItems();
    if (contributions.length > 0)
        menuManager.add(new Separator("header"));
    for (IContributionItem menuItem : contributions) {
        menuManager.add(menuItem);//from  w w w.  j  av a 2s.  c o m
    }
    menuManager.add(new Separator("main"));

    List<Artifact> listOrdered = new ArrayList<Artifact>(showableSetModel);
    sortArtifactListByName(listOrdered, aep);
    boolean createMultipleMenus = showableSetModel.size() > MAX_LENGTH ? true : false;
    List<Artifact> tempList = new ArrayList<Artifact>(listOrdered);
    Iterator<Artifact> itr = tempList.iterator();
    while (!listOrdered.isEmpty()) {
        String menuStrStart = aep.getRelModelLabel(listOrdered.get(0));
        MenuManager subMenu;

        if (createMultipleMenus) {
            subMenu = new MenuManager(menuStrStart + " - ...");
            subMenu.add(new Separator("main"));
            menuManager.add(subMenu);
        } else
            subMenu = (MenuManager) menuManager;

        int i = 0;
        while (i < MAX_LENGTH && itr.hasNext()) {
            Artifact relArt = itr.next();
            listOrdered.remove(relArt);

            String relArtLbl = aep.getRelModelLabel(relArt);
            IAction action = aep.getShowRelAction(rc, rel, relArt, relArtLbl);
            if (action == null)
                continue;
            try {
                ImageDescriptor des = rc.getIconDescriptor(aep, relArt);
                if (des != null)
                    action.setImageDescriptor(des);
            } catch (Throwable t) {
                NavAidsEditPolicy.logger.error("Unexpected error while getting icon for: " + relArt, t);
            }
            subMenu.appendToGroup("main", action);
            i++;
        }
    }
}

From source file:com.architexa.diagrams.relo.agent.AgentManager.java

License:Open Source License

public static void buildAgentsContextMenu(MenuManager subMenu, String groupName, AbstractReloEditPart part,
        Object token) {/*from   ww  w  .  ja v  a 2  s .c  o  m*/
    Vector<?> agents = (Vector<?>) token;
    Iterator<?> eplIt = agents.iterator();
    while (eplIt.hasNext()) {
        ViewAgentInternal agentInternal = (ViewAgentInternal) eplIt.next();
        subMenu.appendToGroup(groupName, new AgentEnablingAction(agentInternal.agent));
    }
}

From source file:com.architexa.diagrams.relo.parts.MoreItemsEditPart.java

License:Open Source License

private void buildMoreChildrenContextMenu(IMenuManager menu) {
    Map<String, Artifact> strToCUMap = getChildToLabelMap();
    String[] strArray = strToCUMap.keySet().toArray(new String[] {});
    Arrays.sort(strArray, Collator.getInstance());

    List<String> childList = new ArrayList<String>(Arrays.asList(strArray));
    List<String> tempList = new ArrayList<String>(Arrays.asList(strArray));
    boolean createMultipleMenus = childList.size() > MAX_LENGTH ? true : false;
    Iterator<String> itr = tempList.iterator();
    final List<ArtifactFragment> allAFsAdded = new ArrayList<ArtifactFragment>();
    while (!childList.isEmpty()) {
        String menuStrStart = childList.get(0);
        MenuManager subMenu;

        if (createMultipleMenus) {
            subMenu = new MenuManager(menuStrStart + " - ...");
            subMenu.add(new Separator("main"));
            menu.add(subMenu);/* w ww .ja  v  a  2  s .  co m*/
        } else
            subMenu = (MenuManager) menu;
        int i = 0;
        while (i < MAX_LENGTH && itr.hasNext()) {
            String extraActionLbl = itr.next();
            childList.remove(extraActionLbl);
            MultiAddCommandAction action = getMultiAddCommandAction(extraActionLbl, strToCUMap, allAFsAdded);
            subMenu.appendToGroup("main", action);
            i++;
        }
    }
}

From source file:com.nokia.tools.s60.ide.ContributedActionsResolver.java

License:Open Source License

/**
 * Method adds to menu group action.//from   w w  w  . j a v a  2s  .  c o  m
 * 
 * @param manager
 *            where should be action added.
 * @param groupName
 * @param menu
 */
private void createGroup(MenuManager manager, String groupName, IContributionItem menu) {
    IContributionItem find = manager.find(groupName);
    if (find == null || !(find instanceof GroupMarker)) {
        //         manager.f
        //         menu.
        //         new MenuItem(menu,SWT.SEPARATOR);
        manager.add(new GroupMarker(groupName));
    }
    manager.appendToGroup(groupName, menu);
}

From source file:com.technophobia.substeps.junit.ui.viewhistory.RunnerViewHistory.java

License:Open Source License

@Override
public void addMenuEntries(final MenuManager manager) {
    manager.appendToGroup(IWorkbenchActionConstants.MB_ADDITIONS, new ImportTestRunSessionAction(shell));
    manager.appendToGroup(IWorkbenchActionConstants.MB_ADDITIONS, new ImportTestRunSessionFromURLAction(shell));
    manager.appendToGroup(IWorkbenchActionConstants.MB_ADDITIONS, pasteAction);
    if (substepsRunSessionSupplier.get() != null)
        manager.appendToGroup(IWorkbenchActionConstants.MB_ADDITIONS,
                new ExportTestRunSessionAction(shell, substepsRunSessionSupplier.get()));
}

From source file:eu.geclipse.jsdl.ui.internal.pages.sections.SweepOrderSection.java

License:Open Source License

private MenuManager createMenu() {
    MenuManager mManager = new MenuManager();
    mManager.setRemoveAllWhenShown(true);
    mManager.addMenuListener(new IMenuListener() {

        public void menuAboutToShow(final IMenuManager mManager) {
            boolean enable = false;
            if (!SweepOrderSection.this.viewer.getSelection().isEmpty()) {
                enable = true;// w  ww . ja  v  a 2 s  . co m
            }
            // Adds a separator
            mManager.add(new Separator("Zero")); //$NON-NLS-1$
            // Adds a GroupMarker
            GroupMarker marker = new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS);
            mManager.add(marker);
            mManager.add(createNewAction());
            Action action = createIndependentSweepAction();
            action.setEnabled(enable);
            mManager.add(new Separator("First")); //$NON-NLS-1$
            mManager.appendToGroup("First", action); //$NON-NLS-1$
            action = createChangesWithSweepAction();
            action.setEnabled(enable);
            mManager.appendToGroup("First", action); //$NON-NLS-1$
            action = createChangesForEachAction();
            action.setEnabled(enable);
            mManager.appendToGroup("First", action); //$NON-NLS-1$
            mManager.add(new Separator("Second")); //$NON-NLS-1$
            action = createDeleteAction();
            action.setEnabled(enable);
            mManager.appendToGroup("Second", action); //$NON-NLS-1$
        }
    });
    Menu contextMenu = mManager.createContextMenu(this.viewer.getTree());
    this.viewer.getTree().setMenu(mManager.getMenu());
    return mManager;
}

From source file:net.refractions.udig.project.ui.internal.tool.display.MenuToolCategory.java

License:Open Source License

/**
 * Adds items action in the correct locations in the menu.
 * /*from w ww.ja  v a2s  .co m*/
 * @param manager
 */
public void contribute(IMenuManager manager) {
    IWorkbench workbench = PlatformUI.getWorkbench();
    IContextService contextService = (IContextService) workbench.getService(IContextService.class);
    Collection<String> active = (Collection<String>) contextService.getActiveContextIds();

    MenuManager actionMenu = new MenuManager(name, id);
    final String actionExt = "action.ext";
    actionMenu.add(new GroupMarker(actionExt)); //$NON-NLS-1$
    actionMenu.add(new GroupMarker("modal.ext")); //$NON-NLS-1$
    for (ModalItem item : this) {
        ToolProxy tool = (ToolProxy) item;
        String categoryId = tool.getCategoryId();
        if (contextService.getDefinedContextIds().contains(categoryId)) {
            // we have an context for this tool category
            if (!active.contains(categoryId)) {
                continue; // skip this category please!
            }
        }
        if (tool.getType() == ToolProxy.ACTION) {
            String menuPath = tool.getMenuPath();
            IAction action = tool.getAction();

            if (menuPath != null) {
                String root = menuPath.substring(0, menuPath.lastIndexOf("/")); //$NON-NLS-1$
                String groupName = menuPath.substring(menuPath.lastIndexOf("/") + 1, menuPath.length()); //$NON-NLS-1$
                if (groupName.equals(Constants.M_TOOL)) {
                    groupName = "map";
                }
                IMenuManager targetMenu = manager.findMenuUsingPath(root);
                if (targetMenu != null) {
                    IContributionItem find = targetMenu.find(groupName);
                    if (find != null && find instanceof GroupMarker) {
                        //targetMenu.appendToGroup(groupName, action); //$NON-NLS-1$
                        targetMenu.appendToGroup(groupName, tool.getAction());
                        targetMenu.setVisible(true);
                    } else {
                        targetMenu.add(action);
                        targetMenu.setVisible(true);
                    }
                } else
                    actionMenu.appendToGroup(actionExt, tool.getAction()); //$NON-NLS-1$
            } else {
                actionMenu.appendToGroup(actionExt, tool.getAction()); //$NON-NLS-1$
            }
        }
        if (tool.getType() == ToolProxy.MODAL) {
            MenuCurrentToolItem menuItem = new MenuCurrentToolItem(tool);
            tool.addContribution(menuItem);
            actionMenu.appendToGroup("modal.ext", menuItem); //$NON-NLS-1$
        }
    }
    if (actionMenu.getItems().length > 0) {
        // Handle left over tools! Place them in the map menu?
        String menuPath = "map"; // was Constants.M_TOOL
        IMenuManager toolManager = manager.findMenuUsingPath(menuPath);
        if (toolManager == null) {
            toolManager = new MenuManager(Messages.MenuToolCategory_menu_manager_title, "tools"); //$NON-NLS-1$
            manager.add(toolManager);
            toolManager.add(new GroupMarker(actionExt)); //$NON-NLS-1$
            toolManager.add(new GroupMarker("modal.ext")); //$NON-NLS-1$
        }
        if (toolManager.find(actionExt) == null) {
            toolManager.add(new GroupMarker(actionExt)); //$NON-NLS-1$
        }
        toolManager.appendToGroup(actionExt, actionMenu); //$NON-NLS-1$
        toolManager.setVisible(true);
    }
}

From source file:org.csstudio.opibuilder.editor.OPIEditorContextMenuProvider.java

License:Open Source License

/**
 * {@inheritDoc}/* ww  w. j a v a 2 s .co  m*/
 */
@Override
public void buildContextMenu(final IMenuManager menu) {
    menu.add(new Separator(GEFActionConstants.GROUP_UNDO));
    menu.add(new Separator(GEFActionConstants.GROUP_COPY));
    menu.add(new Separator(GEFActionConstants.GROUP_PRINT));
    menu.add(new Separator(GEFActionConstants.GROUP_EDIT));
    menu.add(new Separator(GEFActionConstants.GROUP_VIEW));
    menu.add(new Separator(GEFActionConstants.GROUP_FIND));
    menu.add(new Separator(GEFActionConstants.GROUP_ADD));
    menu.add(new Separator(GEFActionConstants.GROUP_REST));
    menu.add(new Separator(GEFActionConstants.GROUP_SAVE));
    menu.add(new Separator(GROUP_GROUP)); //$NON-NLS-1$
    menu.add(new Separator(GEFActionConstants.MB_ADDITIONS));

    menu.appendToGroup(GEFActionConstants.GROUP_UNDO, getAction(ActionFactory.UNDO.getId()));
    menu.appendToGroup(GEFActionConstants.GROUP_UNDO, getAction(ActionFactory.REDO.getId()));
    menu.appendToGroup(GEFActionConstants.GROUP_COPY, getAction(ActionFactory.COPY.getId()));
    menu.appendToGroup(GEFActionConstants.GROUP_COPY, getAction(ActionFactory.CUT.getId()));
    ((WorkbenchPartAction) getAction(ActionFactory.PASTE.getId())).update();
    menu.appendToGroup(GEFActionConstants.GROUP_COPY, getAction(ActionFactory.PASTE.getId()));

    menu.appendToGroup(GEFActionConstants.GROUP_COPY, getAction(CopyPropertiesAction.ID));
    menu.appendToGroup(GEFActionConstants.GROUP_COPY, getAction(PastePropertiesAction.ID));
    menu.appendToGroup(GEFActionConstants.GROUP_COPY, getAction(ReplaceWidgetsAction.ID));
    menu.appendToGroup(GEFActionConstants.GROUP_EDIT, getAction(ActionFactory.DELETE.getId()));

    menu.appendToGroup(GEFActionConstants.GROUP_EDIT, getAction(ActionFactory.PRINT.getId()));

    String orderGroup = "Order";
    MenuManager orderMenu = new MenuManager(orderGroup, CustomMediaFactory.getInstance()
            .getImageDescriptorFromPlugin(OPIBuilderPlugin.PLUGIN_ID, "icons/shape_move_front.png"), null); //$NON-NLS-1$
    orderMenu.add(new Separator(orderGroup));
    for (OrderType orderType : OrderType.values()) {
        orderMenu.appendToGroup(orderGroup, getAction(orderType.getActionID()));
    }
    menu.appendToGroup(GEFActionConstants.GROUP_COPY, orderMenu);

    String orientationGroup = "Orientation";
    MenuManager orientationMenu = new MenuManager(orientationGroup, CustomMediaFactory.getInstance()
            .getImageDescriptorFromPlugin(OPIBuilderPlugin.PLUGIN_ID, "icons/flip_horizontal.png"), null); //$NON-NLS-1$
    orientationMenu.add(new Separator(orientationGroup));
    for (OrientationType orientationType : OrientationType.values()) {
        orientationMenu.appendToGroup(orientationGroup, getAction(orientationType.getActionID()));

    }
    menu.appendToGroup(GEFActionConstants.GROUP_COPY, orientationMenu);

    //        MenuManager cssMenu = new MenuManager("CSS", "css");//$NON-NLS-1$ //$NON-NLS-2$
    //        cssMenu.add(new Separator("additions"));//$NON-NLS-1$
    //        menu.add(cssMenu);
}

From source file:org.csstudio.sds.ui.internal.editor.DisplayContextMenuProvider.java

License:Open Source License

/**
 * {@inheritDoc}/*from  ww w.  jav a2  s. co m*/
 */
@Override
public void buildContextMenu(final IMenuManager menu) {
    GEFActionConstants.addStandardActionGroups(menu);

    // add Grouping Actions
    menu.appendToGroup(GEFActionConstants.GROUP_ADD, _actionRegistry.getAction(RemoveGroupAction.ID));
    menu.appendToGroup(GEFActionConstants.GROUP_ADD, _actionRegistry.getAction(CreateGroupAction.ID));

    menu.appendToGroup(GEFActionConstants.GROUP_EDIT, _actionRegistry.getAction(CutWidgetsAction.ID));
    menu.appendToGroup(GEFActionConstants.GROUP_EDIT, _actionRegistry.getAction(CopyWidgetsAction.ID));

    PasteWidgetsAction action = (PasteWidgetsAction) _actionRegistry.getAction(PasteWidgetsAction.ID);
    // remember the current mouse pointer location, so that widgets will
    // be pasted where the user right-clicked
    action.fetchCurrentCursorLocation();
    menu.appendToGroup(GEFActionConstants.GROUP_EDIT, action);

    menu.appendToGroup(GEFActionConstants.GROUP_EDIT, _actionRegistry.getAction(ActionFactory.UNDO.getId()));

    menu.appendToGroup(GEFActionConstants.GROUP_EDIT, _actionRegistry.getAction(ActionFactory.REDO.getId()));

    menu.appendToGroup(GEFActionConstants.GROUP_EDIT, _actionRegistry.getAction(ActionFactory.DELETE.getId()));
    //menu.add(new Separator("ChangeOrder"));
    MenuManager orderMenu = new MenuManager("Order");
    orderMenu.add(new Separator("order"));
    orderMenu.appendToGroup("order", _actionRegistry.getAction(MoveToFrontAction.ID));
    orderMenu.appendToGroup("order", _actionRegistry.getAction(StepFrontAction.ID));
    orderMenu.appendToGroup("order", _actionRegistry.getAction(StepBackAction.ID));
    orderMenu.appendToGroup("order", _actionRegistry.getAction(MoveToBackAction.ID));
    menu.appendToGroup(GEFActionConstants.GROUP_EDIT, orderMenu);

    MenuManager cssMenu = new MenuManager("CSS", "css");
    cssMenu.add(new Separator("additions"));
    menu.add(cssMenu);

}