如何将自己的菜单附加到Eclipse Workbench默认菜单栏?

时间:2014-05-06 07:26:55

标签: java eclipse eclipse-plugin eclipse-rcp

如何以编程方式将我自己创建的菜单附加到eclipse workbench默认菜单栏,以便我将所需的RCP应用程序作为插件导出视图,并且我的声明菜单也显示在Workbench菜单栏中?

请提供任何代码,如果有人需要更好的理解。

提前致谢。

1 个答案:

答案 0 :(得分:0)

如果不触及plugin.xml

,您可以执行以下操作

我在插件Activator类的start(BundleContext context)方法中添加了代码,它运行正常。 Eclipse wiki在Menu API上有更多文档。

final IMenuService menuService = (IMenuService) PlatformUI.getWorkbench().getService(IMenuService.class);

AbstractContributionFactory contributionFactory = new AbstractContributionFactory(
        "menu:org.eclipse.ui.main.menu", null) {

    @Override
    public void createContributionItems(IServiceLocator serviceLocator, IContributionRoot additions) {
        MenuManager myMenu = new MenuManager("MyMenu", "my.menu.id");

        // Add your own contribution items here.
        myMenu.add(new Action("Test Menu Item") {
        });

        additions.addContributionItem(myMenu, null);
    }
};

menuService.addContributionFactory(contributionFactory);