一种基于 EMF 模型的在 GEF 中判断创建连接线有效性的方法
2010-04-02 00:00:00 来源:WEB开发网 闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁炬儳缍婇弻鐔兼⒒鐎靛壊妲紒鎯у⒔閹虫捇鈥旈崘顏佸亾閿濆簼绨绘い鎺嬪灪閵囧嫰骞囬姣挎捇鏌熸笟鍨妞ゎ偅绮撳畷鍗炍旈埀顒勭嵁婵犲嫮纾介柛灞捐壘閳ь剛鎳撻~婵嬪Ω閳轰胶鐤呯紓浣割儐椤戞瑩宕ョ€n喗鐓曟い鎰靛亝缁舵氨绱撻崘鈺傜婵﹤顭峰畷鎺戔枎閹搭厽袦婵犵數濮崑鎾绘⒑椤掆偓缁夌敻骞嗛悙鍝勭婵烇綆鍓欐俊鑲╃磼閹邦収娈滈柡灞糕偓鎰佸悑閹肩补鈧尙鏁栧┑鐐村灦閹稿摜绮旈悽绋课﹂柛鏇ㄥ灠閸愨偓濡炪倖鍔﹀鈧繛宀婁邯濮婅櫣绱掑Ο璇茶敿闂佺ǹ娴烽弫璇差嚕婵犳碍鏅插璺猴工瀹撳棝姊虹紒妯哄缂佷焦鎸冲畷鎴﹀箻鐠囧弶宓嶅銈嗘尰缁嬫垶绂嶉悙顒佸弿婵☆垳鍘ф禍楣冩倵濮樼偓瀚�

核心提示: GEF工作原理GEF 采用的是 MVC 架构,其架构图如图1所示,一种基于 EMF 模型的在 GEF 中判断创建连接线有效性的方法(2),GEF一般和 EMF 结合使用,EMF 负责生成模型, 这个 XMI 文件一般作为一种中间格式来保存,当我们想要按照自己的格式来保存各个模型和它们之间的关系时
GEF工作原理
GEF 采用的是 MVC 架构,其架构图如图1所示。GEF一般和 EMF 结合使用,EMF 负责生成模型。MVC 的各个部分都是树状结构的,并且是一一对应关系。其中 EditPart 充当控制器的角色,里面可以使用各种 EditPolicy,而 EditPolicy 的具体实现有时需要调用 Command 工具集类;而通过 draw2d 绘制的图形充当视图的角色。 具体的工作流程为:
EditPartFactory 会针对每个模型创建一个对应的EditPart;
在每个 EditPart 内部会创建与模型对应的视图,即显示的图形;
当模型的属性改变后,会通知 EditPart 它的属性变化情况;
EditPart 会根据模型属性的变化更新视图的显示;
当需要在模型间建立某种关联关系时,用 Command 在两个图形间建立一条连接线。该连接线也是一个模型,所以针对该连接线的一些操作可以重复以上1)—4)步。
当图形化设计完后进行保存,后台调用的是 EMF 的保存机制,将各个模型和它们之间的关系保存成 EMF 自定义的 XMI 格式(各个模型保存时是并列的结构,它们之间的关系是通过属性来标识,具体的关系要在设计时确定)。 这个 XMI 文件一般作为一种中间格式来保存,当我们想要按照自己的格式来保存各个模型和它们之间的关系时(比如说树状结构),最好的办法就是对 EMF 保存的 XMI 文件进行二次 XML 处理。
图 1. GEF 的 MVC 架构图
查看原图(大图)
- ››基于IP地址的vsftp服务器
- ››基于MySQL 水平分区的优化示例
- ››基于CentOS5的Linux下pptp和openvpn的搭建及配置
- ››基于JavaScript的网页版塔防游戏
- ››基于Android平台 QQ大战360手机游戏爆红
- ››基于Windows Azure的云计算应用设计
- ››基于AES算法实现对数据的加密
- ››基于SoPC目标板Flash编程设计的创建及应用
- ››基于SolidWarks齿轮机构的运动分析与仿真
- ››基于Windwos Server 2008故障转移群
- ››基于JavaScript的REST客户端框架
- ››基于JavaScript和CSS的Web图表框架横向对比
更多精彩
赞助商链接