1、修改Connection的默认路由(Router)风格(默认的初始风格为oblique)。
覆盖DiagramConnectionsPreferencePage的initDefaults方法:
2、选中子图形的同时选中父图形(为了能拖动子图形时,父图形也被拖动),这种方法有一个问题,即因为同时选择中了两个对象,因此属性页中无法对子图形的属性进行编辑,需要修改属性分区(*PropertySection )的setInput代码。
父图形EditPart:
子图形EditPart:
另外变通的方法,即拖动子图形的时候拖动父图形,但这种方法无法选择中子图形:
3、修改自动布局(Arrange All、Arrange Selection)方式
默认的自动布局方式是从上到下,其Provider为TopDownProvider,如果我们需要修改为其他或自定义的布局方式,如从左到右的布局方式,可以采用定义扩展和修改代码两种方式:
(1)定义扩展(extensions),注意这里的Priority不能为Lowest
(2)代码硬编程,主要方法为在??DiagramEditPart中覆盖安装EditPolicy.CONTAINER_ROLE
,这里参考了Gmf例子taipan中的PortEditPart相关代码
4、通过设置WorkspaceViewerPreference,设定默认打印题头和显示页面分割线
5、以代码方式触发ARRANGE_ALL action