applicationactionbaradvisor.java

来自「一个基于eclipse插件开发的聊天程序」· Java 代码 · 共 92 行

JAVA
92
字号
package talkServer;import org.eclipse.jface.action.GroupMarker;import org.eclipse.jface.action.ICoolBarManager;import org.eclipse.jface.action.IMenuManager;import org.eclipse.jface.action.IToolBarManager;import org.eclipse.jface.action.MenuManager;import org.eclipse.jface.action.Separator;import org.eclipse.jface.action.ToolBarContributionItem;import org.eclipse.jface.action.ToolBarManager;import org.eclipse.swt.SWT;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;/** * An action bar advisor is responsible for creating, adding, and disposing of the * actions added to a workbench window. Each window will be populated with * new actions. */public class ApplicationActionBarAdvisor extends ActionBarAdvisor {    // Actions - important to allocate these only in makeActions, and then use them    // in the fill methods.  This ensures that the actions aren't recreated    // when fillActionBars is called with FILL_PROXY.    private IWorkbenchAction exitAction;    private IWorkbenchAction aboutAction;    private LoadIPPassMapAction loadIPPassMapAction;    private LoadIPStateMapAction loadIPStateMapAction;    private StartThreadAction startThreadAction;        public ApplicationActionBarAdvisor(IActionBarConfigurer configurer) {        super(configurer);    }        protected void makeActions(final IWorkbenchWindow window) {        // Creates the actions and registers them.        // Registering is needed to ensure that key bindings work.        // The corresponding commands keybindings are defined in the plugin.xml file.        // Registering also provides automatic disposal of the actions when        // the window is closed.        exitAction = ActionFactory.QUIT.create(window);        register(exitAction);                aboutAction = ActionFactory.ABOUT.create(window);        register(aboutAction);                loadIPPassMapAction = new LoadIPPassMapAction(window, "Load IP Password map", IPPasswordMapView.ID);        register(loadIPPassMapAction);                loadIPStateMapAction = new LoadIPStateMapAction(window, "Load IP State map", IPStateMapView.ID);        register(loadIPStateMapAction);                startThreadAction = new StartThreadAction(window, "Start Thread", ThreadView.ID);        register(startThreadAction);    }        protected void fillMenuBar(IMenuManager menuBar) {        MenuManager fileMenu = new MenuManager("&File", IWorkbenchActionConstants.M_FILE);        MenuManager helpMenu = new MenuManager("&Help", IWorkbenchActionConstants.M_HELP);                menuBar.add(fileMenu);        // Add a group marker indicating where action set menus will appear.        menuBar.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));        menuBar.add(helpMenu);                // File        fileMenu.add(loadIPStateMapAction);        fileMenu.add(loadIPPassMapAction);        fileMenu.add(new Separator());        fileMenu.add(startThreadAction);        fileMenu.add(new Separator());        fileMenu.add(exitAction);                // Help        helpMenu.add(aboutAction);    }        protected void fillCoolBar(ICoolBarManager coolBar) {        IToolBarManager toolbar = new ToolBarManager(SWT.FLAT | SWT.RIGHT);        coolBar.add(new ToolBarContributionItem(toolbar, "main"));           toolbar.add(loadIPPassMapAction);        toolbar.add(loadIPStateMapAction);        toolbar.add(startThreadAction);    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?