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

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

Introduction

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

Prototype

public void setContextMenuManager(MenuManager contextMenuManager) 

Source Link

Document

Sets the context menu manager for this tool bar manager to the given menu manager.

Usage

From source file:org.eclipse.recommenders.internal.news.rcp.NewsToolbarContribution.java

License:Open Source License

@Override
protected Control createControl(Composite parent) {
    menuManager = new MenuManager();
    updatingNewsAction = new UpdatingNewsAction();
    ToolBarManager manager = new ToolBarManager(SWT.FLAT | SWT.HORIZONTAL);
    manager.add(updatingNewsAction);/* w  w w .ja  va  2 s . co  m*/
    manager.setContextMenuManager(menuManager);
    return manager.createControl(parent);
}

From source file:org.eclipse.ui.internal.ViewStackTrimToolBar.java

License:Open Source License

public void initToolBarManager(final ToolBarManager mgr) {
    // Set up the ToolBar with a restore button
    IContributionItem restoreContrib = new ContributionItem() {
        public void fill(ToolBar parent, int index) {
            ToolItem restoreItem = new ToolItem(mgr.getControl(), SWT.PUSH, index);
            Image tbImage = WorkbenchImages.getImage(IWorkbenchGraphicConstants.IMG_ETOOL_RESTORE_TRIMPART);
            restoreItem.setImage(tbImage);
            String menuTip = WorkbenchMessages.get().StandardSystemToolbar_Restore;
            restoreItem.setToolTipText(menuTip);
            restoreItem.addSelectionListener(new SelectionListener() {
                public void widgetDefaultSelected(SelectionEvent e) {
                    restoreToPresentation();
                }//from  ww  w.j  av  a 2  s .  c om

                public void widgetSelected(SelectionEvent e) {
                    restoreToPresentation();
                }
            });
        }
    };
    mgr.add(restoreContrib);

    ShowFastViewContribution sfvc = new ShowFastViewContribution(wbw, getId());
    mgr.add(sfvc);

    // Add context menu items
    mgr.setContextMenuManager(new MenuManager());
    MenuManager menuMgr = mgr.getContextMenuManager();

    final IContributionItem closeContrib = new ContributionItem() {
        public void fill(Menu parent, int index) {
            MenuItem closeItem = new MenuItem(parent, SWT.NONE, index++);
            closeItem.setText(WorkbenchMessages.get().WorkbenchWindow_close);
            closeItem.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    IViewReference selectedView = null;
                    if (contextToolItem != null) {
                        selectedView = (IViewReference) contextToolItem
                                .getData(ShowFastViewContribution.FAST_VIEW);
                    }

                    if (selectedView != null) {
                        WorkbenchPage page = wbw.getActiveWorkbenchPage();
                        if (page != null) {
                            page.hideView(selectedView);
                        }
                    }
                }
            });
        }
    };

    // We have to manage the visiblity this way...?
    menuMgr.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager manager) {
            IViewReference selectedView = null;
            if (contextToolItem != null) {
                selectedView = (IViewReference) contextToolItem.getData(ShowFastViewContribution.FAST_VIEW);
            }

            // Only show the 'close' item if we've clicked on a view
            Perspective persp = wbw.getActiveWorkbenchPage().getActivePerspective();
            closeContrib.setVisible(selectedView != null && persp.isCloseable(selectedView));
            manager.update(true);
        }
    });

    menuMgr.add(closeContrib);
}