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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章