GMF 教程 Mindmap 1

本文是跟着英文教程做了一遍,并简单翻译、截图,做了一些补充,总算是实现了原文的效果。其中关于各种模型文件的介绍就略去了,想了解更多可查看原文。

这部分的内容就是从头创建一个GMF项目,实现一些小的功能。

下面每做好修改,都要及时保存。

创建项目

1、新建一个GMF项目:

File——New——Project,找到New GMF Project:

GMF 教程 Mindmap 1_第1张图片

工程名称是org.eclipse.gmf.examples.mindmap

GMF 教程 Mindmap 1_第2张图片

点击Next,在下一步选中Show dashboard view for the created project

GMF 教程 Mindmap 1_第3张图片

PS:我的博客GMF分类第一篇文章就是用Dashboard做向导的,不过这篇英文没用到,而是每个模型文件都是用菜单创建的,掌握两种方法还是有必要的。

建好的项目,目录结构如下:

GMF 教程 Mindmap 1_第4张图片

Domain Model Definition

2、下载mindmap.ecore文件:

http://help.eclipse.org/helios/topic/org.eclipse.gmf.doc/tutorials/tooling/mindmap.ecore

将它拷贝到工程的model目录下(可以直接在Eclispe中拷贝)

可以右击mindmap.core,选择Initialize ecore_diagram diagram file,以图形化的方式查看其内容:

GMF 教程 Mindmap 1_第5张图片

3、New > Other,找到EMF generator Model:

GMF 教程 Mindmap 1_第6张图片

Next,选择路径和设置文件名:

GMF 教程 Mindmap 1_第7张图片

在下一步选择Ecore model,然后Next,加载mindmap.ecore,可能需要点一下Load才行:

GMF 教程 Mindmap 1_第8张图片

接下来默认,直到Finish。

4、修改mindmap.genmodel的mindmap包的Base Package为org.eclipse.gmf.examples:

GMF 教程 Mindmap 1_第9张图片

5、右击上图中的结点,选择Generate Model Code和Generate Edit Code:

GMF 教程 Mindmap 1_第10张图片

这样会在原来的工程产生新的文件,并生成一个新的工程:

GMF 教程 Mindmap 1_第11张图片

Graphical Definition

6、File——New——Other,找到Simple Graphical Definition Model:

GMF 教程 Mindmap 1_第12张图片

在下一步选择存储路径和名称:

GMF 教程 Mindmap 1_第13张图片

在下一步加载mindmap.ecore,并选择Map:

GMF 教程 Mindmap 1_第14张图片

下一步,为Topic类选择最小的元素、连接集合,其他的都不要选,如下图:

GMF 教程 Mindmap 1_第15张图片

点击Finish。

Tooling Definition

7、File——New——Other,找到Simple Tooling Definetion Model:

GMF 教程 Mindmap 1_第16张图片

在下一步选择路径,输入名称:

GMF 教程 Mindmap 1_第17张图片

在下一步,跟6中一样,加载mindmap.core,选择Map:

GMF 教程 Mindmap 1_第18张图片

然后下一步,只要为Topic类做少量选择,如下图:

GMF 教程 Mindmap 1_第19张图片

单击Finish。

Mapping Definition

8、File——New——Other,找到Guide Mapping Model Creation:

GMF 教程 Mindmap 1_第20张图片

在下一步设置存储路径和名称,如下图:

GMF 教程 Mindmap 1_第21张图片

在下一步,加载mindmap.ecore,并选择Map,如下图:

GMF 教程 Mindmap 1_第22张图片

在下一步加载mindmap.gmftool,并保持默认选择mindmapPalette,如下图:

GMF 教程 Mindmap 1_第23张图片

在下一步加载mindmap.gmfgraph,保持默认选择mindmap,如下图:

GMF 教程 Mindmap 1_第24张图片

最后,选择结点和连线,如下图,不要多选:

GMF 教程 Mindmap 1_第25张图片

9、需要手动操作的一件事情是为TopicNameLabel创建标签映射。如下图,为Node Mapping结点添加Child:Feature Label Mapping,属性设置如下:

GMF 教程 Mindmap 1_第26张图片

选择Node Mapping,设置如下:

GMF 教程 Mindmap 1_第27张图片

然后再选择Link Mapping结点,设置属性如下:

GMF 教程 Mindmap 1_第28张图片

Code Generation

10、如下图,右击Mapping结点,选择Create generator model:

GMF 教程 Mindmap 1_第29张图片

下一步:

GMF 教程 Mindmap 1_第30张图片

下一步:

下一步:

GMF 教程 Mindmap 1_第31张图片

下一步默认,完成。

11、右击新生成的mindmap.gmfgen,选择Generate diagram code:

GMF 教程 Mindmap 1_第32张图片

成功的话,生成一个新的工程:

Running the Diagram

12、在org.eclipse.gmf.examples.mindmap.diagram工程上右击-> Run as -> Eclipse application:

GMF 教程 Mindmap 1_第33张图片

在新的Eclispe中Create a new General Project,名称为mindmap,然后右击该工程,选择New——Example,找到Mindmap Diagram:

GMF 教程 Mindmap 1_第34张图片

下两步都保持默认,完成。

13、如下图,是运行效果:

GMF 教程 Mindmap 1_第35张图片

代码:http://www.oschina.net/code/snippet_164134_19115

双子座@开源中国:my.oschina.net/plumsoft

你可能感兴趣的:(eclipse,教程,mindmap,GMF)