当前位置: 代码迷 >> Eclipse >> eclipse GMF 制造简单工作流流程设计器(2)
  详细解决方案

eclipse GMF 制造简单工作流流程设计器(2)

热度:47   发布时间:2016-04-23 12:32:59.0
eclipse GMF 制作简单工作流流程设计器(2)


本节教程在原来基础上继续完善工作流流程设计器,本节的主要内容有:

  1. 迁移线上加入箭头
  2. 使用OCL语言给活动节点类型赋值



1.在迁移线上添加箭头其实很简单,只要在gmfgraph文件中添加箭头修饰即可。

a)在Canvas flow->Figure Gallery Default->Figure DescriptorTransitionFigure->Polyline Conneciton TransitionFigure右键点击,NewChild->Polyline Decoration, 输入名称TransitionFigure, 这样为目标设置箭头了,如下图:


?

?

b)选择在Canvas flow->Figure Gallery Default->Figure DescriptorTransitionFigure节点,将Target Decoration属性设置成Polyline DecorationTransitionFigure,如下图:


?

?

c)重新生成flow.gmfgen文件,并重新生成图形代码,右键点击flow.gmfgen文件,Generate Diagram Code, 生成完毕后,运行如下:

?

?

2.使用OCL给活动节点类型赋值, 我们只需要在gmfmap文件加入OCL约束即可。

a)选择节点Mapping->TopNode Reference<activity:StartActivity/StartActivity>->NodeMapping <StartActivity/StartActivity>, 点击右键,New Child->FeatureSeq Initializer, 然后选择该节点,右键点击New Child->Feature Value Spec,在属性Feature选择Activity.type:ActivityType,然后继续新建,New Child->Constraint,在body里面输入ActivityType::START,在Feature Seq Initializer继续新建Feature ValueSpec,在属性Feature选择Activity.name:EString, 继续新建Constraint,输入‘START’,不要忘记加引号。
如下图:


?

?

同样设置其他活动,然后重新生成gmfgen文件,生成gmfgen文件时会报错,说OCL类型不兼容,是因为OCL类型语句要求Boolean值。如下图:


?

?

?

我们将错误忽略,PS:之前版本的GMF没有这个错误的。

并生成代码,运行如下:


?

?

?

我们可以看到自动活动的类型已经将类型赋值为AUTO, 而不是之前的类型START.

?

?

源代码请见附件。



OK, 这一节讲完了,困了,要去睡觉了。

?

前面两节只是简单的熟悉GMF相关操作,没有编写任何JAVA代码,接下来会通过一些自定义JAVA类来完成更多的功能。

下一节的内容主要是如何自定义Node图标以及自定义形状。

?

?

?

?

1 楼 sharpeye 2009-11-10  
大大你好啊...
  
你的文章真是精采啊...
持續關注中...
希望有機會可以交流一下...
  
2 楼 liu_ms 2011-06-16  
英语好果然很占优势
  相关解决方案