1

我正在开发一个基于 3.x 构建的 Eclipse RCP 应用程序,并已被软合并到 4.x 中。

我希望将像包资源管理器中的“相互比较”菜单项添加到我创建的目录视图中。Eclipse 的可用命令中没有用于此操作的选项。通过一些 Eclipse 代码,他们所做的方式是通过 org.eclipse.ui.popupMenus 扩展使用 objectContribution,但已被弃用。

这是否意味着我将不得不与“从头开始”进行比较?

4

2 回答 2

1

查看org.eclipse.compare.internal.CompareAction它使用的比较操作,CompareUI.openCompareEditorOnPage这是一个已定义的 API,因此可以使用。使用的比较编辑器输入org.eclipse.compare.internal.ResourceCompareInput是内部的,但似乎没有使用任何其他内部类 - 因此您可以编写自己的版本ResourceCompareInput而不会有太多麻烦。

于 2013-10-10T14:52:57.650 回答
0

现在,您不再为 popupMenu 扩展点做出贡献,而是使用指向 popupMenu 位置的位置 URI 为菜单扩展点做出贡献。

请参阅此 StackOverflow 帖子以获得对解决方案的更好解释

至于实际实现比较命令的相互比较处理程序的代码,如果您有权访问旧代码,您可能可以重用菜单事件的处理,前提是您将其连接到新菜单事件.

于 2013-10-10T13:59:25.750 回答