Model view controller 是否可以将表示模型模式用于带有EMF域模型的基于GEF的RCP应用程序?
我正在开发一个EclipseRCP应用程序,使用一个基于EMF的第三方域模型和一个用于编辑的GEF编辑器 如果我不必使用特定的布局在编辑器视图上绘制模型图,这就足够公平了。我使用的域模型不包含任何可视信息(这本身就是一个好主意),但我希望能够在其Model view controller 是否可以将表示模型模式用于带有EMF域模型的基于GEF的RCP应用程序?,model-view-controller,mvvm,eclipse-emf,eclipse-gef,presentation-model,Model View Controller,Mvvm,Eclipse Emf,Eclipse Gef,Presentation Model,我正在开发一个EclipseRCP应用程序,使用一个基于EMF的第三方域模型和一个用于编辑的GEF编辑器 如果我不必使用特定的布局在编辑器视图上绘制模型图,这就足够公平了。我使用的域模型不包含任何可视信息(这本身就是一个好主意),但我希望能够在其EditParts中为Figures分配坐标。这将使我更容易计算图形在布局中的位置 现在我偶然发现了马丁·福勒的作品,它似乎正是我所寻找的东西。我还发现了一个-old-ish-(仅限德语),它在eclipse RCP上下文中使用此模式 现在我想知道:既然
EditPart
s中为Figure
s分配坐标。这将使我更容易计算图形在布局中的位置
现在我偶然发现了马丁·福勒的作品,它似乎正是我所寻找的东西。我还发现了一个-old-ish-(仅限德语),它在eclipse RCP上下文中使用此模式
现在我想知道:既然GEF显式地使用MVC,那么在GEF上下文中使用PM通常是可能的吗?MVVM是一种替代方案吗
请注意,我被阻止使用转基因食品的原因有很多
非常感谢 是的,这是绝对可能的,你有两个选择 首先,实现您自己的图形符号模型。我建议您使用以下各项:
modelElement : ModelElement 1..1
x : int 1..1
y : int 1..1
然后在EditingDomain中加载两个模型(EMF将为您解析跨文档引用),创建所有缺少的图形符号元素e.t.c
另一种选择是使用转基因食品或石墨。他们有你正在寻找的开箱即用的模型,这将大大简化你的生活。以学习另一个怪物框架为代价(以转基因食品为例)。石墨很容易(相对于GEF/GMF),但IMO的灵活性较差。顺便说一句,GMF将为您提供一个“免费”TransactionalEditingDomain,它将为您处理所有命令、撤消和重做。所以,正如在给你们的评论中,我建议你们使用转基因食品
哦,对不起,我没注意到你写的转基因食品
然后,第二个选项是让图形模型从域模型继承,然后根据该模型编写GEF编辑器 是的,这是绝对可能的,你有两个选择 首先,实现您自己的图形符号模型。我建议您使用以下各项:
modelElement : ModelElement 1..1
x : int 1..1
y : int 1..1
然后在EditingDomain中加载两个模型(EMF将为您解析跨文档引用),创建所有缺少的图形符号元素e.t.c
另一种选择是使用转基因食品或石墨。他们有你正在寻找的开箱即用的模型,这将大大简化你的生活。以学习另一个怪物框架为代价(以转基因食品为例)。石墨很容易(相对于GEF/GMF),但IMO的灵活性较差。顺便说一句,GMF将为您提供一个“免费”TransactionalEditingDomain,它将为您处理所有命令、撤消和重做。所以,正如在给你们的评论中,我建议你们使用转基因食品
哦,对不起,我没注意到你写的转基因食品
然后,第二个选项是让图形模型从域模型继承,然后根据该模型编写GEF编辑器