我正在开发一个基于3.x构建的Eclipse RCP应用程序,并已轻柔地合并到4.x.
我希望将Package Compare中的Compare with Each菜单项添加到我创建的目录视图中。 Eclipse的可用命令中没有针对此操作的选项。通过一些Eclipse代码,他们的方式是通过org.eclipse.ui.popupMenus扩展使用objectContribution,但已弃用。
这是否意味着我必须与“从头开始”实施比较?
答案 0 :(得分:1)
查看比较操作org.eclipse.compare.internal.CompareAction
,它使用CompareUI.openCompareEditorOnPage
,这是一个已定义的API,因此可以使用。使用的比较编辑器输入是org.eclipse.compare.internal.ResourceCompareInput
,它是内部的,但似乎不使用任何其他内部类 - 因此您可以编写自己的ResourceCompareInput
版本而不会有太多麻烦。
答案 1 :(得分:0)
现在,您可以使用指向popupMenu位置的位置URI为菜单扩展点做出贡献,而不是为popupMenu扩展点做出贡献。
See this StackOverflow post to get a better explanation of the solution
对于实际实现与彼此比较命令的每个其他处理程序的代码,如果您有权访问旧代码,您可能可以重用菜单事件的处理,前提是您将其连接到新菜单活动。