4

我有一个 Eclipse RCP 应用程序,它使用视图来允许编辑 EMF 资源。资源和 EditingDomain 包含在 Page 输入中。

我们现在正在尝试集成 Eclipse GMF。这会生成一个工作得很好的 DiagramEditor,但在 Eclipse 3 中,它不能与我的应用程序的其他视图在同一个堆栈中使用。编辑器只能放在 EditorArea 中。

任何人都可以指导我寻求解决方案吗?我看到了多个选项,每个选项都有明显的优点/缺点:

  1. 在 IEditorSite 和 IViewSite 之间实现一个转换层,这样我就可以在视图中加载我的编辑器。这部分工作,但很多 GMF 功能突然丢失。肯定有人以前这样做过;因为我什么也没找到,所以我认为这是不可能的。
  2. 将所有视图实现为 EditorPart。应用程序中只有一个 EditorArea。缺点:需要内部 Workbench API 来布局所有部分DZone 链接
  3. 生成 GMF 视图而不是 GMF 编辑器。这甚至可能在不丢失调色板的情况下实现吗?
4

1 回答 1

2

两年前我已经完成了选项#2,根据您的布局要求,这是迄今为止最简单的。

选项#1 几乎是不可能的,因为IViewPart功能的较大部分不能委托给子部分。看看多编辑器代码是多么普遍——你可以instanceof在代码深处找到测试org.eclipse.ui

选项 #3 可能可以完成,但只能通过松开调色板来完成,因为这似乎指的是深层的编辑器内容(至少这是我 2 年前的笔记中的内容 :-))

于 2013-04-16T14:16:57.887 回答