List of usage examples for org.eclipse.jface.action GroupMarker GroupMarker
public GroupMarker(String groupName)
From source file:org.cfeclipse.cfml.snippets.views.snips.SnipTreeView.java
License:Open Source License
private void fillContextMenu(IMenuManager mgr) { Object selectedItem = getSelection(); if (selectedItem instanceof File) { File selectedFile = (File) selectedItem; if (selectedFile.isDirectory()) { mgr.add(createFolderAction); mgr.add(createSnippetAction); String[] files = selectedFile.list(); if (files.length == 0) { mgr.add(deleteFolderAction); }/*from www . java 2 s . com*/ } else { mgr.add(insertAction); mgr.add(editSnippetAction); mgr.add(deleteSnippetAction); mgr.add(exportToSnipEx); } } else if (selectedItem instanceof Snippet) { mgr.add(insertAction); } mgr.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); //mgr.add(deleteItemAction); //mgr.add(new Separator()); //mgr.add(selectAllAction); }
From source file:org.cfeclipse.cfml.views.snips.SnipTreeView.java
License:Open Source License
private void fillContextMenu(IMenuManager mgr) { File selectedFile = getSelectedFile(); if (selectedFile.isDirectory()) { mgr.add(createFolderAction);/* ww w.j ava 2 s. c o m*/ mgr.add(createSnippetAction); String[] files = selectedFile.list(); if (files.length == 0) { mgr.add(deleteFolderAction); } } else { mgr.add(insertAction); mgr.add(editSnippetAction); mgr.add(deleteSnippetAction); mgr.add(exportToSnipEx); } mgr.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); //mgr.add(deleteItemAction); //mgr.add(new Separator()); //mgr.add(selectAllAction); }
From source file:org.cishell.reference.gui.menumanager.menu.MenuAdapter.java
License:Open Source License
private void processSubMenu(Element menuNode, MenuManager parentMenuBar) { NodeList subMenuList = menuNode.getElementsByTagName(TAG_MENU); if ((subMenuList != null) && (subMenuList.getLength() > 0)) { for (int ii = 0; ii < subMenuList.getLength(); ii++) { Element element = (Element) subMenuList.item(ii); /*/*from w w w. ja va2s .c o m*/ * Only process direct children nodes and drop all grand or grand of grand * children nodes. * TODO: Why? */ if (!element.getParentNode().equals(menuNode)) { continue; } String menuType = element.getAttribute(TYPE_ATTRIBUTE); String algorithmPID = element.getAttribute(PID_ATTRIBUTE); if (((menuType == null) || (menuType.length() == 0)) && (algorithmPID != null)) { processAMenuNode(element, parentMenuBar); } else if (menuType.equalsIgnoreCase(PRESERVED_GROUP)) { String groupName = element.getAttribute(NAME_ATTRIBUTE); MenuManager groupMenuBar = new MenuManager(groupName, groupName.toLowerCase()); parentMenuBar.add(groupMenuBar); processSubMenu(element, groupMenuBar); } else if (menuType.equalsIgnoreCase(PRESERVED_BREAK)) { /* * It seems that the framework automatically takes care of issues such as * double separators and a separator at the top or bottom. */ parentMenuBar.add(new Separator()); } else if (menuType.equalsIgnoreCase(PRESERVED)) { String menuName = element.getAttribute(NAME_ATTRIBUTE); if (menuName.equalsIgnoreCase(PRESERVED_EXIT)) { //allow to add more menu before "File/Exit" if (parentMenuBar.getId().equalsIgnoreCase(IWorkbenchActionConstants.M_FILE)) { parentMenuBar.add(new GroupMarker(START_GROUP)); parentMenuBar.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); parentMenuBar.add(new GroupMarker(END_GROUP)); } IWorkbenchAction exitAction = ActionFactory.QUIT.create(workbenchWindow); parentMenuBar.add(new Separator()); parentMenuBar.add(exitAction); } } } //allow to append new submenu(s) at the bottom under each top menu //except "File" and "Help" if (!parentMenuBar.getId().equalsIgnoreCase(IWorkbenchActionConstants.M_FILE) && !parentMenuBar.getId().equalsIgnoreCase(IWorkbenchActionConstants.M_HELP)) { parentMenuBar.add(new GroupMarker(START_GROUP)); parentMenuBar.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); parentMenuBar.add(new GroupMarker(END_GROUP)); } } }
From source file:org.cishell.reference.gui.menumanager.menu.MenuAdapter.java
License:Open Source License
private void makeMenuItem(ServiceReference serviceReference) { String path = (String) serviceReference.getProperty(MENU_PATH); String[] items = null;/*w w w. j av a2 s.co m*/ if (path != null) { items = path.split("/"); } IMenuManager menu = null; if ((items != null) && (items.length > 1)) { AlgorithmAction action = new AlgorithmAction(serviceReference, this.bundleContext, this.ciShellContext); action.setId(getItemID(serviceReference)); IMenuManager targetMenu = this.menuManager; String group = items[items.length - 1]; for (int ii = 0; ii < items.length - 1; ii++) { menu = targetMenu.findMenuUsingPath(items[ii]); if ((menu == null) && (items[ii] != null)) { menu = targetMenu.findMenuUsingPath(items[ii].toLowerCase()); } if (menu == null) { menu = createMenu(items[ii], items[ii]); targetMenu.appendToGroup(ADDITIONS_GROUP, menu); } targetMenu = menu; } group = items[items.length - 1]; IContributionItem groupItem = targetMenu.find(group); if (groupItem == null) { groupItem = new GroupMarker(group); targetMenu.appendToGroup(ADDITIONS_GROUP, groupItem); } targetMenu.appendToGroup(group, action); handleActionAccelerator(action, targetMenu, serviceReference); targetMenu.appendToGroup(group, new Separator()); algorithmsToActions.put(getItemID(serviceReference), action); actionsToMenuManagers.put(action, targetMenu); Display.getDefault().asyncExec(this.updateAction); } else { this.logger.log(LogService.LOG_DEBUG, "Bad menu path for Algorithm: " + serviceReference.getProperty(LABEL)); } }
From source file:org.cishell.reference.gui.menumanager.menu.MenuAdapter.java
License:Open Source License
private MenuManager createMenu(String name, String id) { MenuManager menu = new MenuManager(name, id); menu.add(new GroupMarker(START_GROUP)); menu.add(new GroupMarker(ADDITIONS_GROUP)); menu.add(new GroupMarker(END_GROUP)); return menu;/*from ww w.ja v a 2 s . com*/ }
From source file:org.csstudio.alarm.beast.ui.alarmtable.GUI.java
License:Open Source License
/** * Add context menu to tree//from w ww .j av a2 s. c o m * * @param table_viewer * TableViewer to which to add the menu * @param site * Workbench site or <code>null</code> */ private void connectContextMenu(final TableViewer table_viewer, final IWorkbenchPartSite site) { final Table table = table_viewer.getTable(); final boolean isRcp = UI.RCP.equals(SingleSourcePlugin.getUIHelper().getUI()); final MenuManager manager = new MenuManager(); manager.setRemoveAllWhenShown(true); manager.addMenuListener(new IMenuListener() { // Dynamically build menu based on current selection @Override @SuppressWarnings("unchecked") public void menuAboutToShow(IMenuManager manager) { final Shell shell = table.getShell(); final List<AlarmTreeItem> items = ((IStructuredSelection) table_viewer.getSelection()).toList(); new ContextMenuHelper(table_viewer, manager, shell, items, writable); manager.add(new Separator()); // Add edit items if (items.size() == 1 && writable && model != null) { final AlarmTreeItem item = items.get(0); manager.add(new ConfigureItemAction(shell, model, item)); } if (items.size() >= 1 && writable && model != null) manager.add(new DisableComponentAction(shell, model, items)); manager.add(new Separator()); if (isRcp) { manager.add(new AlarmPerspectiveAction()); manager.add(new Separator()); } // Placeholder for CSS PV contributions manager.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); } }); table.setMenu(manager.createContextMenu(table)); // Allow extensions to add to the context menu if (site != null) site.registerContextMenu(manager, table_viewer); }
From source file:org.csstudio.alarm.beast.ui.alarmtree.GUI.java
License:Open Source License
/** Invoked by the manager of the context menu when menu * is about to show.// w w w .j a v a 2s .c o m * Fills context menu with guidance and related displays * for currently selected items. * @param manager Menu manager */ @SuppressWarnings("unchecked") private void fillContextMenu(final IMenuManager manager) { final Shell shell = tree_viewer.getTree().getShell(); final List<AlarmTreeItem> items = ((IStructuredSelection) tree_viewer.getSelection()).toList(); final boolean isRcp = UI.RCP.equals(SingleSourcePlugin.getUIHelper().getUI()); new ContextMenuHelper(null, manager, shell, items, model.isWriteAllowed()); manager.add(new Separator()); if (model.isWriteAllowed()) { // Add edit items if (items.size() <= 0) { // Use the 'root' element as the parent manager.add(new AddComponentAction(shell, model, model.getConfigTree())); } else if (items.size() == 1) { final AlarmTreeItem item = items.get(0); // Allow configuration of single item manager.add(new ConfigureItemAction(shell, model, item)); manager.add(new Separator()); // Allow addition of items to all but PVs (leafs of tree) if (!(item instanceof AlarmTreePV)) manager.add(new AddComponentAction(shell, model, item)); manager.add(new RenameItemAction(shell, model, item)); if (items.get(0).getPosition() == AlarmTreePosition.PV) manager.add(new DuplicatePVAction(shell, model, (AlarmTreePV) items.get(0))); } if (items.size() >= 1) { // Allow certain actions on one or more selected items manager.add(new EnableComponentAction(shell, model, items)); manager.add(new DisableComponentAction(shell, model, items)); manager.add(new MoveItemAction(shell, model, items)); manager.add(new RemoveComponentAction(shell, model, items)); } } manager.add(new Separator()); if (isRcp) { manager.add(new AlarmPerspectiveAction()); manager.add(new Separator()); } manager.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); }
From source file:org.csstudio.alarm.beast.ui.areapanel.AlarmPanelItem.java
License:Open Source License
private void addContextMenu() { final boolean isRcp = UI.RCP.equals(SingleSourcePlugin.getUIHelper().getUI()); final List<AlarmTreeItem> item_as_list = new ArrayList<AlarmTreeItem>(1); item_as_list.add(item);// w w w .j a v a 2 s . c o m final MenuManager manager = new MenuManager(); manager.setRemoveAllWhenShown(true); manager.addMenuListener(new IMenuListener() { @Override public void menuAboutToShow(IMenuManager manager) { manager.add(new ShowInAlarmTreeAction(item)); new ContextMenuHelper(null, manager, getShell(), item_as_list, true); manager.add(new Separator()); if (isRcp) { manager.add(new AlarmPerspectiveAction()); manager.add(new Separator()); } manager.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); } }); final Menu menu = manager.createContextMenu(this); setMenu(menu); }
From source file:org.csstudio.alarm.beast.ui.areapanel.View.java
License:Open Source License
/** Create panel layout * @param parent/*from w w w. ja v a 2s .com*/ */ private void createAlarmPanelGUI(final Composite parent) { display = parent.getDisplay(); color_provider = new SeverityColorProvider(parent); parent.setLayout(new FormLayout()); error_message = new Label(parent, 0); FormData fd = new FormData(); fd.right = new FormAttachment(100); fd.top = new FormAttachment(0); error_message.setLayoutData(fd); panel_box = new Composite(parent, 0); fd = new FormData(); fd.left = new FormAttachment(0); fd.top = new FormAttachment(error_message); fd.right = new FormAttachment(100); fd.bottom = new FormAttachment(100); panel_box.setLayoutData(fd); if (model.isServerAlive()) { setErrorMessage(null); } else { setErrorMessage(Messages.WaitingForServer); } fillPanelBox(); final MenuManager manager = new MenuManager(); manager.setRemoveAllWhenShown(true); manager.addMenuListener(new IMenuListener() { @Override public void menuAboutToShow(IMenuManager manager) { manager.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); } }); panel_box.setMenu(manager.createContextMenu(panel_box)); // Allow extensions to add to the context menu getSite().registerContextMenu(manager, new ISelectionProvider() { // Null selection provider @Override public void setSelection(ISelection selection) { } @Override public void removeSelectionChangedListener(ISelectionChangedListener listener) { } @Override public ISelection getSelection() { return null; } @Override public void addSelectionChangedListener(ISelectionChangedListener listener) { } }); }
From source file:org.csstudio.alarm.beast.ui.globaltable.GlobalAlarmTableView.java
License:Open Source License
/** Add context menu * @param table_viewer// w w w . j ava2 s .c o m * @param site Workbench site or <code>null</code> */ private void addContextMenu(final TableViewer table_viewer, final IWorkbenchPartSite site) { final Table table = table_viewer.getTable(); final boolean isRcp = UI.RCP.equals(SingleSourcePlugin.getUIHelper().getUI()); final MenuManager manager = new MenuManager(); manager.setRemoveAllWhenShown(true); manager.addMenuListener(new IMenuListener() { @SuppressWarnings("unchecked") @Override public void menuAboutToShow(final IMenuManager manager) { // TODO 'Select configuration' action final List<AlarmTreeItem> items = ((IStructuredSelection) table_viewer.getSelection()).toList(); new ContextMenuHelper(null, manager, table.getShell(), items, false); manager.add(new Separator()); if (isRcp) { manager.add(new AlarmPerspectiveAction()); manager.add(new Separator()); } manager.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); } }); table.setMenu(manager.createContextMenu(table)); // Allow extensions to add to the context menu if (site != null) site.registerContextMenu(manager, table_viewer); }