在gef中,如何使用emf做为模型,与一般我们自己实现模型的区别:
1:模型的代码不用自己去实现了,使用emf可以自动生成。
2:模型的通知gef part 更改视图,emf 提供了这样的功能,不过part还是需要去注册,监听,也要实行
emf 的接口:Adapter
3:支持xml的存储,序列号 更为方便。
4:属性栏中显示的属性在part 中实现。
public Object getAdapter(Class key) {
if (IPropertySource.class == key)
return new ShapePropertySource(getModel());
return super.getAdapter(key);
}
而不是在model中。
这是我对使用emf作为model 与自己写代码实现gefmodel 的几点区别。
总结:
感觉没有自己写代码直观,可能还有很多附近功能我还没有看到,emf api很复杂的,估计功能也很强大。