GEF概要视图



我构建了一个GEF编辑器(类似于OPM编辑器),我需要您对OutlineView的帮助,因为我的尝试不起作用。我像ShapeEditor中的GEF示例一样构建了ContentOutlinePage。

当类型为IContentOutlinePage.class时,我在getAdapter中返回我的新OutlinePage。然后我调用createControl和setContent(模型),出现错误。我无法设置addPropertyChangeListener,我的模型不是为这个Listener 设计的

ShapeEditor中的解决方案似乎非常复杂。

ContenToutlinePage没有一个简单的解决方案吗?或者有人用这个OPM编辑器找到一个解决方案?

感谢我们的帮助

请参见ShapesEditor#createControl(复合父级)第355行:getViewer().setEditPartFactory(new ShapesTreeEditPartFactory());

这可能是您缺少正确实现的原因。您必须实现自己的EditPart工厂来构建自己的树编辑部件(子类GEF的AbstractTreeEditPart)。ShapeTreeEditPart#activate()和#deactivate()方法添加/删除属性更改侦听器。这些监听器将对模型更改做出反应(例如,名称标签已经更改),因此您可以在那里注册自己的模型更改监听器,或者如果您不关心模型的更改,则将方法留空。

相关内容

  • 没有找到相关文章

最新更新