基于 GMF 的流程分析工具的设计与实现
2009-12-17 00:00:00 来源:WEB开发网核心提示: 其次,和Node的布局类似,基于 GMF 的流程分析工具的设计与实现(8),把此布局管理器安装到Connection的图元上,如下所示,该方法检查当前的Provider是否提供具体的方法,检查选中的节点是否可以被布局, 清单 2. 安装Connection的布局publicclassRelati
其次,和Node的布局类似,把此布局管理器安装到Connection的图元上,如下所示。
清单 2. 安装Connection的布局public class RelationshipConnection extends PolylineConnectionEx {
public RelationshipConnection() {
setLayoutManager(new ConnectionLayout());
}
}
这样,在Connection进行布局的时候就会把原来的直线通过计算变成折线形状,照此方法,可以很容易的构造出水平或垂直方向的树形布局。
自定义Layout provider
在GMF生成的Diagram Editor里,在编辑模型的时候,可以选中一些或全部模型,在选择工具条上的按钮或右键菜单里的Format->Arrange->All,就可以对选中的模型元素进行布局。
事实上,GMF对此功能提供了一个扩展点 org.eclipse.gmf.runtime.diagram.ui.layoutProviders进行支持,由这个扩展点可以轻松实现上述功能。下面实现一个CustomerLayoutProvider类,
图 11.自定义LayoutProvider
查看原图(大图)
这里需要注意两个方法
provides()方法,该方法检查当前的Provider是否提供具体的方法,检查选中的节点是否可以被布局,并且验证被传递的布局类型是否是有效的。
[]
- ››基于JavaScript的网页版塔防游戏
- ››基于Android平台 QQ大战360手机游戏爆红
- ››基于Windows Azure的云计算应用设计
- ››基于AES算法实现对数据的加密
- ››基于SoPC目标板Flash编程设计的创建及应用
- ››基于SolidWarks齿轮机构的运动分析与仿真
- ››基于Windwos Server 2008故障转移群
- ››基于JavaScript的REST客户端框架
- ››基于JavaScript和CSS的Web图表框架横向对比
- ››基于JQuery地区三级联动列表
- ››基于GoogleMap,Mapabc,51ditu,VirtualEarth,Y...
- ››基于prototype.js验证框架(validation.js)的三个应...
更多精彩
赞助商链接