/** * Attach a context menu to a org.eclipse.jface.StructuredViewer * * @param viewer the viewer * @param actions the actions to use */ public void createViewerContextMenu(StructuredViewer viewer, final IAction... actions) { MenuManager menuMgr = new MenuManager(); menuMgr.setRemoveAllWhenShown(true); menuMgr.addMenuListener( new IMenuListener() { public void menuAboutToShow(IMenuManager manager) { fillContextMenu(manager, actions); } }); Menu menu = menuMgr.createContextMenu(viewer.getControl()); viewer.getControl().setMenu(menu); site.registerContextMenu(menuMgr, viewer); }
/** * @see * org.eclipse.ui.IWorkbenchPartSite#registerContextMenu(org.eclipse.jface.action.MenuManager, * org.eclipse.jface.viewers.ISelectionProvider) * @param menuManager * @param selectionProvider */ public void registerContextMenu(MenuManager menuManager, ISelectionProvider selectionProvider) { parentViewSite.registerContextMenu(menuManager, selectionProvider); }