package org.argeo.security.ui.application; import org.eclipse.jface.action.GroupMarker; import org.eclipse.jface.action.IMenuManager; import org.eclipse.jface.action.MenuManager; import org.eclipse.jface.action.Separator; import org.eclipse.ui.IWorkbenchActionConstants; import org.eclipse.ui.IWorkbenchWindow; import org.eclipse.ui.actions.ActionFactory; import org.eclipse.ui.actions.ActionFactory.IWorkbenchAction; import org.eclipse.ui.application.ActionBarAdvisor; import org.eclipse.ui.application.IActionBarConfigurer; public class SecureActionBarAdvisor extends ActionBarAdvisor { private IWorkbenchAction exitAction; private IWorkbenchAction openPerspectiveDialogAction; private IWorkbenchAction showViewMenuAction; private IWorkbenchAction newWindowAction; private IWorkbenchAction preferences; private IWorkbenchAction helpContentAction; // private IWorkbenchAction aboutAction; private final Boolean isRcp; public SecureActionBarAdvisor(IActionBarConfigurer configurer, Boolean isRcp) { super(configurer); this.isRcp = isRcp; } protected void makeActions(IWorkbenchWindow window) { preferences = ActionFactory.PREFERENCES.create(window); register(preferences); openPerspectiveDialogAction = ActionFactory.OPEN_PERSPECTIVE_DIALOG .create(window); register(openPerspectiveDialogAction); showViewMenuAction = ActionFactory.SHOW_VIEW_MENU.create(window); register(showViewMenuAction); helpContentAction = ActionFactory.HELP_CONTENTS.create(window); register(helpContentAction); exitAction = ActionFactory.QUIT.create(window); register(exitAction); if (isRcp) { // aboutAction = ActionFactory.ABOUT.create(window); // register(aboutAction); newWindowAction = ActionFactory.OPEN_NEW_WINDOW.create(window); register(newWindowAction); } } protected void fillMenuBar(IMenuManager menuBar) { MenuManager fileMenu = new MenuManager("&File", IWorkbenchActionConstants.M_FILE); MenuManager editMenu = new MenuManager("&Edit", IWorkbenchActionConstants.M_EDIT); MenuManager windowMenu = new MenuManager("&Window", IWorkbenchActionConstants.M_WINDOW); MenuManager helpMenu = new MenuManager("&Help", IWorkbenchActionConstants.M_HELP); menuBar.add(fileMenu); menuBar.add(editMenu); menuBar.add(windowMenu); // Add a group marker indicating where action set menus will appear. menuBar.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); menuBar.add(helpMenu); // File if (isRcp) { fileMenu.add(newWindowAction); fileMenu.add(new Separator()); } fileMenu.add(exitAction); // Edit editMenu.add(preferences); // Window windowMenu.add(openPerspectiveDialogAction); windowMenu.add(showViewMenuAction); // Help helpMenu.add(helpContentAction); // helpMenu.add(aboutAction); } }