在我目前的RCP项目中,我使用MultipageEditorPart
。它有各种页面,上面有简单的SWT复合材料。复合材料包含一些Text和Combo元素。当用户右键单击编辑器页面时,我想要打开一个上下文菜单。此菜单包含用于创建新编辑器页面的命令,其中包含复合页面。
该命令已经在运行,但我对如何为编辑器实现上下文菜单毫无头绪。有人可以帮忙吗?
答案 0 :(得分:2)
这应基于行动贡献:见Contributing Actions to the Eclipse Workbench
作为基于RCP的示例,您可以查看“Designing a Workflow Editor Eclipse XML”,其中EditorPart
添加了上下文菜单,包含在MultipageEditorPart
中。
protected void createContextMenuFor(StructuredViewer viewer) {
MenuManager contextMenu = new MenuManager("#PopUp");
contextMenu.add(new Separator("additions"));
contextMenu.setRemoveAllWhenShown(true);
contextMenu.addMenuListener(this);
Menu menu= contextMenu.createContextMenu(viewer.getControl());
viewer.getControl().setMenu(menu);
getSite().registerContextMenu(contextMenu, new UnwrappingSelectionProvider(viewer));
}
另请参阅Step 18以扩展该上下文菜单(“删除 - 上下文菜单,需要使用GEF”部分。