如何在 Eclipse 4.2 的 RCP 应用程序中重用菜单?

我正在使用具有兼容层的Eclipse 4.2来重用我的RCP应用程序中的现有部分。

我想在我的RCP应用程序中重用“来自文件”菜单和“运行”菜单的“新建”菜单,因此我为Eclipse打开了EMF编辑器,其外观如下所示:

enter image description here

但是对于菜单,它显示如下内容:org.eclipse.e4.model.application....

我的应用程序看起来像这样(它只是Java脚本调试器,具有一些额外的功能):

enter image description here

那么,如何在我的 RCP 应用程序中重用这些菜单呢?


答案 1

我想我明白你在说什么。您在 Eclipse Juno 上打开了 E4 Live 编辑器,以获取“新建”和“运行”菜单项的命令,以便您可以在自己的代码中重用它?

如果我是正确的,那么在E4中,你不能再使用Eclipse提供的默认命令。您需要定义自己的命令。有关详细信息,请参阅此处

如果您了解Eclipse 3.x,您可能正在寻找可以重用的预定义命令。Eclipse 4平台试图尽可能地精益。

Eclipse 4 不再包含标准命令。您必须定义所有命令。

因此,如果您尝试通过 .e4xmi 文件添加这些命令,则必须使用自己的处理程序定义自己的命令。

如果您仍然希望使用Eclipse给出的命令,并且必须通过插件.xml文件来完成,那么有一种方法可以解决。既然你说你正在使用兼容层,你可能仍然有很多遗留代码,通过插件添加这些菜单项可能是可以的.xml。虽然,一旦你做了一个硬迁移,我相信Eclipse正在尝试减少插件中扩展的使用.xml在这种情况下,你将不得不定义自己的命令。

因此,如果要添加这些命令,则必须通过插件中的扩展进行操作.xml。

要添加“新建”菜单项,请在“扩展”选项卡中,添加 。创建位置URI 为 的菜单贡献。然后,您必须添加一个菜单并为其提供标签 。plugin.xmlorg.eclipse.ui.menusmenu:org.eclipse.ui.main.menuFile

这会将菜单添加到您的 RCP。然后,您必须添加该命令。为此,请将命令添加到刚创建的“文件”菜单中。添加命令后,在 commandID 中选择“浏览”并查找 。FileNeworg.eclipse.ui.file.newQuickMenu

因此,您的插件.xml将具有以下代码。

<extension
         point="org.eclipse.ui.menus">
      <menuContribution
            allPopups="false"
            locationURI="menu:org.eclipse.ui.main.menu">
         <menu
               id="fileMenu"
               label="File">
            <command
                  commandId="org.eclipse.ui.file.newQuickMenu"
                  style="push">
            </command>....

答案 2

推荐