2011-06-02 56 views
1

我已经在我的Eclipse RCP应用程序中创建了菜单贡献作为扩展名(org.eclipse.ui.menus)。这个菜单贡献的项目是作为处理程序的命令。我希望这些处理程序不仅用于项目(命令),而且还用于包含其项目的菜单(例如“文件”,“编辑”...)。菜单处理程序

菜单可以有一个字段“commandID”plugin.xml。我试图用Handler扩展AbstractHandler来创建带有这个ID的命令,但它不起作用。

回答

1

菜单可以使用commandIds,以便它们可以显示快捷键。这部分只是一个显示便利。幕后还有很多工作要做,让菜单自动弹出。

看看命令org.eclipse.ui.navigate.showInQuickMenu是如何在org.eclipse.ui.ide插件中使用的。

它也有在org.eclipse.ui.internal.ide.WorkbenchActionBuilder一些辅助代码:

String showInQuickMenuId = IWorkbenchCommandConstants.NAVIGATE_SHOW_IN_QUICK_MENU; 
    showInQuickMenu = new QuickMenuAction(showInQuickMenuId) { 
     protected void fillMenu(IMenuManager menu) { 
      menu.add(ContributionItemFactory.VIEWS_SHOW_IN 
        .create(window)); 
     } 
    }; 
    register(showInQuickMenu); 
+0

感谢您的回答! – 2011-06-07 08:47:49