RCP的一些系统Action[仿eclipse]

1.创建文件工具条

private MenuManager createFileMenu() {
MenuManager menu = new MenuManager("&File", IWorkbenchActionConstants.M_FILE); //$NON-NLS-1$
menu.add(new GroupMarker(IWorkbenchActionConstants.FILE_START));

menu.add(new GroupMarker(IWorkbenchActionConstants.NEW_EXT));
menu.add(closeAction);
menu.add(closeAllAction);
// menu.add(closeAllSavedAction);
menu.add(new GroupMarker(IWorkbenchActionConstants.CLOSE_EXT));
menu.add(new Separator());
menu.add(saveAction);
menu.add(saveAsAction);
menu.add(saveAllAction);

menu.add(revertAction);
menu.add(ContributionItemFactory.REOPEN_EDITORS.create(getWindow()));
menu.add(new GroupMarker(IWorkbenchActionConstants.MRU));
menu.add(new Separator());
menu.add(quitAction);
menu.add(new GroupMarker(IWorkbenchActionConstants.FILE_END));
return menu;
}


2.创建Edit工具条

private MenuManager createEditMenu() {
MenuManager menu = new MenuManager("&Edit", IWorkbenchActionConstants.M_EDIT); //$NON-NLS-1$
menu.add(new GroupMarker(IWorkbenchActionConstants.EDIT_START));

//IWorkbenchAction undoAction= ActionFactory.UNDO.create(getWindow());
menu.add(undoAction);
menu.add(redoAction);
menu.add(new GroupMarker(IWorkbenchActionConstants.UNDO_EXT));

menu.add(cutAction);
menu.add(copyAction);
menu.add(pasteAction);
menu.add(new GroupMarker(IWorkbenchActionConstants.CUT_EXT));

menu.add(selectAllAction);
menu.add(new Separator());

menu.add(findAction);//〔Find/Replace...〕

//在〔Find/Replace...〕下增加了四项{Find Next,
// Find Previous,
// Incremental Find Next,
// Incremental FInd Previous}
menu.add(new GroupMarker(IWorkbenchActionConstants.FIND_EXT));

menu.add(new GroupMarker(IWorkbenchActionConstants.ADD_EXT));
menu.add(new GroupMarker(IWorkbenchActionConstants.EDIT_END));
menu.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
return menu;
}


3.action的创建方式
saveAction = ActionFactory.[b]SAVE[/b].create(getWindow());

SAVE可换为SELECT_ALL,QUIT....等。
发布了57 篇原创文章 · 获赞 0 · 访问量 2606
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章