GEF源码分析(一) eclipse的GEF相关项目说明
2005-11-28 17:41
381 查看
GEF学习笔记(一) eclipse的GEF相关项目说明
首先、感谢八进制的辛勤劳动和奉献。这几天开始对GEF发生兴趣,八进制的GEF系列对我学这些的帮助很大入门很快。自己也就顺手把周末学习的东西记录下来。帮助后来学人。我会把这几天所学陆续写出希望大家支持。目前、正在为八进制例子发愁,我对NodePart增加了ResizeEditPolicy,但是不知为何鼠标拖动时有个灰色的区域在随着变化,但鼠标释放时,NodeFigure的尺寸不发生变化,是否是因为在refreshVisuals中固化了Size,代码学习中….
eclipse的GEF相关项目说明。
各项目的简介:
Draw2D:建立了2维的图形库(树状图形部件Figure),负责显示2维的图形展示。
GEF: (Graphical Editing Framework)建立标准的MVC构架,代码利用Draw2D作为自己的View部分,主要代码实现复杂的树状(于Model分别对应) 的控制器。实现的框架具有很高的可复用等特性,例如:将图形部件功能分解为多个EditPolicy,这样使用者可以通过installEditPolicy接口来定制,以及扩充自己的某一功能特征。
EMF: (Eclipse Modeling Framework)首先在一个轻量级项目以及项目初期开发,Model常常采用拥有Property的Java对象来简单明了表示【即 Plain Old Java Objects (POJOs)】。EMF定义了一套Ecore元模型,使得Model具有易于维护、易于扩充、易于数据交换等特性的Model Framwork。因此、在实际中大型的项目中往往会采用Draw2D+GEF+EMF的方式来实现整体的MVC模式。例如:ROSE的最新版本 IBM.Rational.Software.Architect就是采用了这种构架。
GMF: (Graphical Modeling Framework )使用了GEF和EMF,建立了两个之间的桥梁框架,同时实现了一些领域上的典范应用,如UML图,甘特图,脑图等。(项目正在进行中这些功能还未完备。可以用来参考以实现自己的一个标准的GEF+EMF的应用)。
各项目依赖关系:
如上图:使用者可以有以下几种用法:
EMF: Model管理层
Draw2D: 二维图形展现
Draw2D + GEF: 二维图形的简单编辑模块
Draw2D + GEF + EMF: 二维图形的编辑模块
Draw2D + GEF + EMF + GMF:基于GMF提供的图形编辑功能之上扩展
首先、感谢八进制的辛勤劳动和奉献。这几天开始对GEF发生兴趣,八进制的GEF系列对我学这些的帮助很大入门很快。自己也就顺手把周末学习的东西记录下来。帮助后来学人。我会把这几天所学陆续写出希望大家支持。目前、正在为八进制例子发愁,我对NodePart增加了ResizeEditPolicy,但是不知为何鼠标拖动时有个灰色的区域在随着变化,但鼠标释放时,NodeFigure的尺寸不发生变化,是否是因为在refreshVisuals中固化了Size,代码学习中….
eclipse的GEF相关项目说明。
各项目的简介:
Draw2D:建立了2维的图形库(树状图形部件Figure),负责显示2维的图形展示。
GEF: (Graphical Editing Framework)建立标准的MVC构架,代码利用Draw2D作为自己的View部分,主要代码实现复杂的树状(于Model分别对应) 的控制器。实现的框架具有很高的可复用等特性,例如:将图形部件功能分解为多个EditPolicy,这样使用者可以通过installEditPolicy接口来定制,以及扩充自己的某一功能特征。
EMF: (Eclipse Modeling Framework)首先在一个轻量级项目以及项目初期开发,Model常常采用拥有Property的Java对象来简单明了表示【即 Plain Old Java Objects (POJOs)】。EMF定义了一套Ecore元模型,使得Model具有易于维护、易于扩充、易于数据交换等特性的Model Framwork。因此、在实际中大型的项目中往往会采用Draw2D+GEF+EMF的方式来实现整体的MVC模式。例如:ROSE的最新版本 IBM.Rational.Software.Architect就是采用了这种构架。
GMF: (Graphical Modeling Framework )使用了GEF和EMF,建立了两个之间的桥梁框架,同时实现了一些领域上的典范应用,如UML图,甘特图,脑图等。(项目正在进行中这些功能还未完备。可以用来参考以实现自己的一个标准的GEF+EMF的应用)。
各项目依赖关系:
如上图:使用者可以有以下几种用法:
EMF: Model管理层
Draw2D: 二维图形展现
Draw2D + GEF: 二维图形的简单编辑模块
Draw2D + GEF + EMF: 二维图形的编辑模块
Draw2D + GEF + EMF + GMF:基于GMF提供的图形编辑功能之上扩展
相关文章推荐
- GEF源码分析(一) eclipse的GEF相关项目说明
- 分享插件平台相关的源码分析——SharpDevelop、Composition Application Block、Eclipse OSGi、ObjectBuilder
- java项目在eclipse中相关文件说明
- Eclipse相关错误导致web项目发布异常问题原因分析及解决方案
- 如何从Eclipse导入github上的项目源码
- 如何从Eclipse导入github上的项目源码
- mysql5.5源码安装相关选项说明
- kernel 3.10内核源码分析--TLB相关--TLB概念、flush、TLB lazy模式 【转】
- Orchard源码分析(7.1):Routing(路由)相关
- Cocos2d-js项目相关配置project.json和配置说明moduleConfig.json
- 软件项目整个架构分析说明
- Eclipse.ini的相关说明
- 第二人生的源码分析(七十五)启动状态详细说明
- ARM汇编中的ldr和adr的区别及其在uboot中相关源码的分析
- Mybatis源码分析-读取非项目中的xml文件
- Spring源码分析之——导入spring-framework源代码到Eclipse
- Atitit 项目源码的架构,框架,配置与环境说明模板 规范 标准化
- maven项目在eclipse中debug时看不到源码?
- 教你如何在SpringMVC项目中单独使用Feign组件(含源码分析)
- Eclipse导入Github上的Robotium源码进行代码分析的步骤