Example usage for org.eclipse.jface.action ToolBarManager getItems

List of usage examples for org.eclipse.jface.action ToolBarManager getItems

Introduction

In this page you can find the example usage for org.eclipse.jface.action ToolBarManager getItems.

Prototype

@Override
    public IContributionItem[] getItems() 

Source Link

Usage

From source file:de.loskutov.anyedit.actions.internal.StartupHelper.java

License:Open Source License

private static int insert(IDirtyWorkaround myAction, ToolBarManager manager, int controlIdx) {
    IContributionItem item;//from w  w w . ja  va 2s  . co  m
    // get "file->save" action
    item = manager.find(myAction.getId());
    if (item != null) {
        // copy references to opened editor/part
        myAction.copyStateAndDispose(item);
        if (controlIdx < 0) {
            // get/remember position
            IContributionItem[] items = manager.getItems();
            for (int i = 0; i < items.length; i++) {
                if (items[i].isSeparator() || items[i] instanceof ActionContributionItem) {
                    controlIdx++;
                    if (items[i] == item) {
                        break;
                    }
                }
            }
        }
        // clean old one
        manager.remove(item);
        item = new ActionContributionItem(myAction);
        manager.insert(controlIdx, item);
        // refresh menu gui
        manager.update(true);
    } else if (controlIdx >= 0) {
        item = new ActionContributionItem(myAction);
        manager.insert(controlIdx, item);
        // refresh menu gui
        manager.update(true);
    }
    return controlIdx;
}

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

License:Open Source License

private void createModalToolToolbar(SubCoolBarManager cbmanager) {
    ToolBarManager manager = new ToolBarManager(SWT.FLAT);

    for (String id : categoryIds) {
        ModalToolCategory modalCategory = findModalCategory(id);
        if (modalCategory != null) {
            modalCategory.contribute(manager);
        }//  ww w  .j a v  a 2 s.c  o m
    }
    if (manager != null && manager.getItems().length > 0)
        cbmanager.add(manager);
}

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

License:Open Source License

private void createActionToolToolbar(SubCoolBarManager cbmanager) {
    ToolBarManager manager = new ToolBarManager(SWT.FLAT);

    manager.add(getBACKWARD_HISTORYAction());
    manager.add(getFORWARD_HISTORYAction());
    for (String id : categoryIds) {
        ActionToolCategory category = findActionCategory(id);
        if (category != null)
            category.contribute(manager);
    }/*w w  w  .j  a  v a2s.  co m*/
    if (manager != null && manager.getItems().length > 0)
        cbmanager.add(manager);
}

From source file:org.caleydo.core.gui.toolbar.RcpToolBarView.java

License:Open Source License

private void addGeneralToolBar(Composite parent) {

    Group group = new Group(parent, SWT.NULL);
    group.setLayout(new FillLayout(SWT.VERTICAL));
    group.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    // group.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_GRAY));

    ToolBarManager toolBarManager = new ToolBarManager(SWT.WRAP);
    IMenuService menuService = (IMenuService) PlatformUI.getWorkbench().getService(IMenuService.class);
    menuService.populateContributionManager(toolBarManager, "toolbar:org.caleydo.core.gui.toolbar");

    if (toolBarManager.getSize() > MAX_ITEMS_PER_LINE) { // SystemUtils.IS_OS_LINUX &&
        // Needed to simulate toolbar wrapping which is not implemented for
        // linux See bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=46025
        final IContributionItem[] items = toolBarManager.getItems();
        for (int i = 0; i < items.length;) {
            ToolBarManager m = new ToolBarManager();
            for (; i < items.length && m.getSize() < MAX_ITEMS_PER_LINE; ++i)
                if (items[i].isVisible())
                    m.add(items[i]);/*from   w  ww  . j a  v a 2 s  . c o  m*/
            m.createControl(group);
        }
    } else {
        toolBarManager.createControl(group);
    }
}

From source file:org.eclipse.bpmn2.modeler.ui.property.tasks.IoParametersDetailComposite.java

License:Open Source License

private void enableActions(AbstractListComposite table, boolean enable) {
    ToolBarManager tbm = table.getToolBarManager();
    for (IContributionItem item : tbm.getItems()) {
        if (item instanceof ActionContributionItem) {
            ActionContributionItem ai = (ActionContributionItem) item;
            IAction action = ai.getAction();
            if ("add".equals(action.getId())) { //$NON-NLS-1$
                //               ai.setVisible(enable);
                action.setEnabled(enable);
            }/*from   w ww.  jav  a 2s.  c o m*/
            if ("remove".equals(action.getId())) { //$NON-NLS-1$
                ai.setVisible(enable);
                //               action.setEnabled(enable);
            }
        }
    }
}

From source file:org.eclipse.e4.compatibility.LegacyView.java

License:Open Source License

public LegacyView(Composite parent, IEclipseContext context, MPart part) {
    // KLUDGE: the progress view assumes a grid layout, we should fix that
    // in 3.6/*from  w  w w. j a  v a2s  .co m*/
    Set kludge = new HashSet();
    kludge.add("org.eclipse.ui.views.ProgressView"); //$NON-NLS-1$
    kludge.add("org.eclipse.pde.runtime.LogView"); //$NON-NLS-1$
    if (kludge.contains(part.getId())) {
        parent.setLayout(new GridLayout());
    } else {
        parent.setLayout(new FillLayout());
    }

    // Button btn = new Button(parent, SWT.BORDER);
    // btn.setText(part.getName());
    // if (btn != null)
    // return;
    String viewId = part.getId();
    IConfigurationElement viewContribution = findViewConfig(viewId);
    try {
        impl = (IViewPart) viewContribution.createExecutableExtension("class"); //$NON-NLS-1$
    } catch (CoreException e) {
        e.printStackTrace();
    }
    if (impl == null)
        return;

    try {
        final IEclipseContext localContext = part.getContext();
        localContext.set(IContextConstants.DEBUG_STRING, "Legacy View(" //$NON-NLS-1$
                + part.getName() + ")"); //$NON-NLS-1$

        part.setObject(this);
        // Assign a 'site' for the newly instantiated part
        WorkbenchPage page = (WorkbenchPage) localContext.get(WorkbenchPage.class.getName());
        ModelViewReference ref = new ModelViewReference(part, page);
        ViewSite site = new ViewSite(ref, impl, page);
        site.setConfigurationElement(viewContribution);
        impl.init(site, null);
        // final ToolBarManager tbm = (ToolBarManager) site.getActionBars()
        // .getToolBarManager();
        // if (parent instanceof CTabFolder) {
        // final ToolBar tb = tbm.createControl(parent);
        // ((CTabFolder) parent).setTopRight(tb);
        // }

        // We need to create the actual TB (some parts call 'getControl')
        ToolBarManager tbMgr = (ToolBarManager) site.getActionBars().getToolBarManager();
        tbMgr.createControl(parent);

        impl.createPartControl(parent);

        localContext.set(MPart.class.getName(), part);

        // Populate and scrape the old-style contributions...
        IMenuService menuSvc = (IMenuService) localContext.get(IMenuService.class.getName());

        String tbURI = "toolbar:" + part.getId(); //$NON-NLS-1$
        menuSvc.populateContributionManager(tbMgr, tbURI);
        MToolBar viewTB = MApplicationFactory.eINSTANCE.createToolBar();
        MenuHelper.processToolbarManager(localContext, viewTB, tbMgr.getItems());
        part.setToolbar(viewTB);
        tbMgr.getControl().dispose();

        String menuURI = "menu:" + part.getId(); //$NON-NLS-1$
        MenuManager menuMgr = (MenuManager) site.getActionBars().getMenuManager();
        menuSvc.populateContributionManager(menuMgr, menuURI);
        MMenu viewMenu = MApplicationFactory.eINSTANCE.createMenu();
        viewMenu.setId(menuURI);
        MenuHelper.processMenuManager(localContext, viewMenu, menuMgr.getItems());
        part.getMenus().add(viewMenu);
    } catch (Exception e) {
        e.printStackTrace();
    }
}

From source file:org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.EMFCompareContentMergeViewer.java

License:Open Source License

/**
 * {@inheritDoc}//w w w .  j a v  a 2s .  c om
 * 
 * @see org.eclipse.compare.contentmergeviewer.ContentMergeViewer#createToolItems(org.eclipse.jface.action.ToolBarManager)
 */
@Override
protected void createToolItems(final ToolBarManager toolBarManager) {
    getHandlerService().setGlobalActionHandler(ActionFactory.UNDO.getId(), undoAction);
    getHandlerService().setGlobalActionHandler(ActionFactory.REDO.getId(), redoAction);

    IContributionItem[] items = toolBarManager.getItems();
    for (IContributionItem iContributionItem : items) {
        if (iContributionItem instanceof ActionContributionItem) {
            IAction action = ((ActionContributionItem) iContributionItem).getAction();
            String id = action.getActionDefinitionId();
            if ("org.eclipse.compare.copyAllLeftToRight".equals(id)) {
                toolBarManager.remove(iContributionItem);
            } else if ("org.eclipse.compare.copyAllRightToLeft".equals(id)) {
                toolBarManager.remove(iContributionItem);
            }
        }
    }

    // Add extension point contributions to the content merge viewer toolbar
    if (PlatformUI.isWorkbenchRunning()) {
        IServiceLocator workbench = PlatformUI.getWorkbench();
        final IMenuService menuService = (IMenuService) workbench.getService(IMenuService.class);
        if (menuService != null) {
            menuService.populateContributionManager(toolBarManager,
                    "toolbar:org.eclipse.emf.compare.contentmergeviewer.toolbar"); //$NON-NLS-1$
            toolBarManager.getControl().addDisposeListener(new DisposeListener() {
                public void widgetDisposed(DisposeEvent e) {
                    menuService.releaseContributions(toolBarManager);
                }
            });
        }
    }
}

From source file:org.eclipse.mylyn.internal.xplanner.ui.editor.XPlannerTaskEditor.java

License:Open Source License

@Override
protected Set<TaskEditorPartDescriptor> createPartDescriptors() {
    Set<TaskEditorPartDescriptor> descriptors = super.createPartDescriptors();

    // remove unnecessary default editor parts
    for (Iterator<TaskEditorPartDescriptor> iterator = descriptors.iterator(); iterator.hasNext();) {
        TaskEditorPartDescriptor taskEditorPartDescriptor = iterator.next();

        if (taskEditorPartDescriptor.getId().equals(ID_PART_PEOPLE)
                || taskEditorPartDescriptor.getId().equals(ID_PART_ATTRIBUTES)
                || taskEditorPartDescriptor.getId().equals(ID_PART_DESCRIPTION)
                || taskEditorPartDescriptor.getId().equals(ID_PART_ATTACHMENTS)
                || taskEditorPartDescriptor.getId().equals(ID_PART_COMMENTS)
                || taskEditorPartDescriptor.getId().equals(ID_PART_NEW_COMMENT)
                || taskEditorPartDescriptor.getId().equals(ID_PART_ACTIONS)) {

            iterator.remove();/*from   ww w. j  a v a  2s .  c om*/
        }
    }
    // Add XPlanner attributes
    descriptors.add(new TaskEditorPartDescriptor(ID_PART_ATTRIBUTES) {
        @Override
        public AbstractTaskEditorPart createPart() {
            return getExtraControls();
        }
    }.setPath(PATH_ATTRIBUTES));

    descriptors.add(new TaskEditorPartDescriptor(ID_PART_DESCRIPTION) {
        @Override
        public AbstractTaskEditorPart createPart() {
            TaskEditorDescriptionPart part = new TaskEditorDescriptionPart() {
                /**
                 * Remove replyTo action -- doesn't apply to description for XPlanner
                 */
                @Override
                protected void fillToolBar(ToolBarManager toolBar) {
                    super.fillToolBar(toolBar);
                    for (IContributionItem contributionItem : toolBar.getItems()) {
                        if (contributionItem instanceof ActionContributionItem
                                && ((ActionContributionItem) contributionItem)
                                        .getAction() instanceof AbstractReplyToCommentAction) {

                            toolBar.remove(contributionItem);
                            break;
                        }
                    }
                }
            };
            if (getModel().getTaskData().isNew()) {
                part.setExpandVertically(true);
                part.setSectionStyle(ExpandableComposite.TITLE_BAR | ExpandableComposite.EXPANDED);
            }
            return part;
        }
    }.setPath(PATH_ATTRIBUTES));

    // Add XPlanner time tracking part
    if (!newTask) {
        try {
            TaskData data = TasksUi.getTaskDataManager().getTaskData(getTask());
            if (data != null) {
                descriptors.add(new TaskEditorPartDescriptor(ID_PART_XPLANNER_TIME_TRACKING) {
                    @Override
                    public AbstractTaskEditorPart createPart() {
                        timeTrackingControls = new XPlannerTimeTrackingEditorPart(getTask(),
                                XPlannerTaskEditor.this);
                        return timeTrackingControls;
                    }
                }.setPath(PATH_ATTRIBUTES));
            }
        } catch (CoreException e) {
            // ignore
        }
    }

    // add actions with context attachment section removed
    descriptors.add(new TaskEditorPartDescriptor(ID_PART_ACTIONS) {
        @Override
        public AbstractTaskEditorPart createPart() {
            return new TaskEditorActionPart() {

                @Override
                protected void addAttachContextButton(Composite buttonComposite, FormToolkit toolkit) {
                    // do not add attachContextButton
                }

            };
        }
    }.setPath(PATH_ACTIONS));
    return descriptors;
}

From source file:org.eclipse.sirius.editor.tools.internal.presentation.CustomSiriusEditor.java

License:Open Source License

private ValidateAction getValidateAction(ToolBarManager tbm) {
    IContributionItem[] contributions = tbm.getItems();
    for (IContributionItem contribution : contributions) {
        if (contribution instanceof ActionContributionItem && contribution.getId().equals(ValidateAction.ID)) {
            IAction action = ((ActionContributionItem) contribution).getAction();
            if (action instanceof ValidateAction) {
                return (ValidateAction) action;
            }/*from  w w  w  . ja  va2 s.co m*/
        }
    }
    return null;
}

From source file:org.eclipse.ui.tests.menus.Bug231304Test.java

License:Open Source License

public void testToolTip() throws Exception {
    IWorkbenchWindow window = openTestWindow();
    IMenuService menus = (IMenuService) window.getService(IMenuService.class);
    ToolBarManager manager = new ToolBarManager();
    try {/*from  w  w w . ja v  a  2 s  .c  om*/
        // populate contribution
        menus.populateContributionManager(manager, "toolbar:org.eclipse.ui.tests.tooltipTest");
        IContributionItem[] items = manager.getItems();
        assertEquals(1, items.length);
        ToolBar toolBar = manager.createControl(window.getShell());
        manager.update(true);

        // now get the tool item and verify the tool tip
        ToolItem[] toolItems = toolBar.getItems();
        assertEquals(1, toolItems.length);
        String keys = KeySequence.getInstance("M2+M3+1").format();
        assertEquals("Testing Tooltip (" + keys + ")", toolItems[0].getToolTipText());

    } finally {
        menus.releaseContributions(manager);
    }
}