[Eclipse]GEF入门系列(七、XYLayout和展开/折叠功能) - 编程入门网
onnectionAnchor getSourceConnectionAnchor(ConnectionEditPart connection) {
return new ChopBoxAnchor (getFigure());
}
public ConnectionAnchor getSourceConnectionAnchor(Request request) {
return new ChopBoxAnchor (getFigure());
}
public ConnectionAnchor getTargetConnectionAnchor(ConnectionEditPart connection) {
return new ChopBoxAnchor (getFigure());
}
public ConnectionAnchor getTargetConnectionAnchor(Request request) {
return new ChopBoxAnchor(getFigure());
}
protected List getModelSourceConnections() {
return ((Node) this.getModel()).getOutgoingConnections();
}
protected List getModelTargetConnections() {
return ((Node) this.getModel()).getIncomingConnections();
}
}
[Eclipse]GEF入门系列(七、XYLayout和展开/折叠功能)(3)时间:2011-04-19 cnblogs bjzhanghao从代码里可以看到,NodePart已经通过安装两个EditPolicy实现关于图形删除、移动和改 变尺寸的功能,所以具体的NodePart只要继承这个类就自动拥有了这些功能,当然模型得是 Node的子类才可以。在GEF应用程序里我们应该善于利用继承的方式来简化开发工作。代码后 半部分中的几个getXXXAnchor()方法是用来规定连接线锚点(Anchor)的,这里我们使用了 在Draw2D那篇帖子里介绍过的ChopBoxAnchor作为锚点,它是Draw2D自带的。而代码最后两个 方法的返回值则规定了以这个EditPart为起点和终点的连接列表,列表中每一个元素都应该 是Connection类型,这个类是模型的一部分,接下来就要说到。 在GEF里,节点间的连接线也需要有自己的模型和对应的EditPart,所以这里我们需要定 义Connection和ConnectionPart这两个类,前者和其他模型元素没有什么区别,它维护 source和target两个节点变量,代表连接的起点和终点;ConnectionPart继承于GEF的 AbstractConnectionPart类,请看下面的代码:
[Eclipse]GEF入门系列(七、XYLayout和展开/折叠功能)(4)时间:2011-04-19 cnblogs bjzhanghao在getFigure()里可以指定你想要的连接线类型,箭头的样式,以及连接线的路由(走线 )方式,例如走直线或是直角折线等等。我们为ConnectionPart安装了一个角色为 EditPolicy.CONNECTION_ENDPOINTS_ROLE的ConnectionEndpointEditPolicy,安装它的目的 是提供连接线的选择、端点改变等功能,注意这个类是GEF内置的。另外,我们并没有 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |