在自定义编辑器对话框中访问EMF模型实例

时间:2011-03-08 13:24:18

标签: model eclipse-plugin eclipse-emf

我对Eclipse Modeling Framework有疑问。我指定了一个EMF模型,并使用EMF为它创建了一个相应的编辑器。现在我想以对话框和向导的形式向该编辑器添加自定义功能。为此,我根据编辑器的plugin.xml中的上下文菜单组和项目来定义,以允许用户调用这些对话框/向导。在编辑器的演示文稿包中,我为对话框/向导创建了新类。

现在我的问题是,如何在这些对话框/向导中访问用户当前正在处理的模型?例如,需要将模型的某些部分加载到对话框/向导中,然后让用户更改它。

我对此进行了研究,但找不到足够的答案。我发现编辑域是一种可以通过“编辑器”使用的机制.getEditingDomain()。getResourceSet()。getResources()。get(0).getContents()。get(0);但是在这里我不知道从哪里得到“编辑器”部分(编辑的实例我猜?)。

我很乐意得到一些关于如何继续的提示。

欢呼声,

埃里克

1 个答案:

答案 0 :(得分:0)

如果您正在使用JFace,则只要用户选择模型中的某些内容,您就可以实现ISelectionChangedListener来触发方法。这会将SelectionChangedEvent传递给selectionChanged方法。从那里,您可以使用event.getSelection();将用户的当前选择作为ISelection获取。

希望这有帮助。