八进制

少年壮志无烟抽

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  229 随笔 :: 0 文章 :: 2902 评论 :: 10 Trackbacks

GEF

eclipse.org/gef
     摘要: 利用org.eclipse.draw2d.SWTGraphics类和org.eclipse.swt.graphics.ImageLoader类可以实现把画布导出到图片文件的功能,原理是在内存里创建一个空白的Image,然后把Diagram画到它上面,最后保存到指定文件和格式。  阅读全文
posted @ 2007-08-01 00:01 八进制 阅读(3084) | 评论 (47)  编辑

     摘要: GEF已经为我们提供了很多种类的Request,如CreateRequest、CreateConnectionRequest和SelectionRequest等等。实现一个典型的图形化应用程序,例如UML类图编辑器,这些预定义的Request基本够用了。然而很多需求不太符合约定俗成的使用习惯,因此实现起来更多依赖开发人员的编码,而不是开发框架带来的便利。在这种情况下,我们也许要借助自定义Request来实现。  阅读全文
posted @ 2007-06-21 23:35 八进制 阅读(4112) | 评论 (65)  编辑

     摘要: 要准确的计算文字在画布上占据的空间,可以利用org.eclipse.swt.graphics.GC的stringExtent()方法  阅读全文
posted @ 2007-04-14 01:03 八进制 阅读(2699) | 评论 (25)  编辑

     摘要: 就像在swt里我们使用layout来控制各个控件的摆放位置一样,在Draw2D里最好也把这个工作交给LayoutManager来做。除非是在自己实现的Layout里,一般程序里自己不要轻易使用setBounds()、setLocation()和setSize()这些方法控制图形的位置和大小,而应该在为每个图形设置了适当的LayoutManager后,通过setConstraint()和setPreferredSize()等方法告诉layoutmanager如何布局。  阅读全文
posted @ 2006-09-05 21:36 八进制 阅读(3428) | 评论 (29)  编辑

     摘要: 在GEF应用程序里打开对话框  阅读全文
posted @ 2006-07-07 23:13 八进制 阅读(3313) | 评论 (18)  编辑

     摘要: 利用DirectedGraphLayout实现自动布局  阅读全文
posted @ 2006-07-02 17:56 八进制 阅读(3614) | 评论 (27)  编辑

     摘要: 使用非矩形图形节点,并通过覆盖LayoutEditPolicy的createChildEditPolicy()方法实现相应的选择框和控制柄。  阅读全文
posted @ 2006-06-26 23:15 八进制 阅读(3095) | 评论 (45)  编辑

     摘要: 通过添加Bendpoint实现自身连接(Self Connection)  阅读全文
posted @ 2006-06-22 11:05 八进制 阅读(2587) | 评论 (11)  编辑

     摘要: 从直线连接转换到可以任意增减转折点的折线连接的过程  阅读全文
posted @ 2006-06-22 00:47 八进制 阅读(2811) | 评论 (10)  编辑

     摘要: 通过添加Layer为图形编辑器设置背景图片  阅读全文
posted @ 2006-06-21 17:04 八进制 阅读(3383) | 评论 (12)  编辑

     摘要: Draw2D里的Label不支持自动换行,虽然可以插入换行符手动换行。用TextFlow和适当的Layout可以实现文字的自动换行。  阅读全文
posted @ 2006-03-23 11:08 八进制 阅读(3187) | 评论 (30)  编辑

     摘要: 最近有朋友问使用EMF作为GEF模型时,如何在选中editpart时在属性页里显示属性的问题。这里提供一个解决方法,不过并不完美。  阅读全文
posted @ 2005-10-24 21:34 八进制 阅读(3539) | 评论 (21)  编辑

     摘要: 其实可以放在任何Composite上,当然也就可以放在视图里了。关键任务是创建GraphicalViewer、RootEditPart、EditDomain和EditPartFactory这些对象,下面的代码是我从别处拷来的,稍微修改了一下。  阅读全文
posted @ 2005-10-21 20:26 八进制 阅读(3865) | 评论 (29)  编辑

     摘要: 两天前GEF发布了3.1M7版本,但使用下来发现和M6没有什么区别,是不是主要为了和Eclipse版本相配套?希望3.1正式版早日发布,应该会新增不少内容。上一篇帖子介绍了如何实现表格功能,在开发过程中,另一个经常用到的功能就是树,虽然SWT提供了标准的树控件,但使用它完成如组织结构图这样的应用还是不够直观和方便。在目前版本(3.1M7)的GEF中虽然没有直接支持树的实现,但Draw2D提供的例子程序里却有我们可以利用的代码(org.eclipse.draw2d.examples.tree.TreeExample,运行界面见下图),通过它可以节约不少工作量。  阅读全文
posted @ 2005-05-27 00:09 八进制 阅读(7443) | 评论 (72)  编辑

     摘要: 在目前的GEF版本(3.1M6)里,可用的LayoutManager还不是很多,在新闻组里经常会看到要求增加更多布局的帖子,有人也提供了自己的实现,例如这个GridLayout,相当于SWT中GridLayout的Draw2D实现,等等。虽然可以肯定GEF的未来版本里会增加更多的布局供开发者使用(可能需要很长时间),然而目前要用GEF实现表格的操作还没有很直接的办法,这里说说我的做法,仅供参考。  阅读全文
posted @ 2005-05-20 10:14 八进制 阅读(7060) | 评论 (44)  编辑

Full GEF Archive