
GEF
lggegegmail
这个作者很懒,什么都没留下…
展开
-
GEF SelectionTool& MarqueeSelectionTool使用
[color=red][b]org.eclipse.gef.tools.SelectionToolorg.eclipse.gef.tools.MarqueeSelectionTool[/b][/color][b][color=red]SelectionTool[/color][/b]选取工具[color=red][b]MarqueeSelectionTool[/b][/co...原创 2008-09-02 00:18:14 · 193 阅读 · 0 评论 -
GEF实践总结(四)SelectionTool与SelectionEditPolicy
一. 目标能够选中Column。对Column选择时,能够在首要选中、次要选中、取消选中显示不一样的颜色。二. 修改GraphicalViewer,设置EditDomain,并指定ActiveTool会发现目前的效果中,无法点选、圈选图像(Table或Column),没错,因为缺少了SelectionTool或MarqueeTool。//Ed...2009-09-08 22:34:47 · 241 阅读 · 0 评论 -
GEF实践总结(三)简易数据库编辑器
一. 目标 不基于GraphicalEditorWithPalette或GraphicalEditorWithFlyoutPalette,而是完全在ViewPart上,因为实际开发中用户很难接受GraphicalEditor呆板的界面风格。实现了一个简易的DataBase->Table->TableColumn的图像编辑器。在不停的增强功能的过程中,探索GEF。二....2009-09-07 20:20:46 · 168 阅读 · 0 评论 -
GEF实践总结(二)常见基础性问题
一. 怎么通过model创建对应的EditPart?EditPartFactory:通过model创建对应EditPart的工厂类。就和jface.TableView一样,能知道通过model得到TableItem。和jface.TreeViewer一样,能通过model知道要生成对应的TreeItem一样的功效。@Overridepublic EditPart cre...2009-09-06 22:10:14 · 138 阅读 · 0 评论 -
GEF实践总结(一)简洁的基础框架
一. 创建一个插件项目通过从RCP application with a view 模板创建一个含ViewPart的Eclipse RCP项目。二. 在MANIFEST.MF 添加对org.eclipse.gef插件的依赖。三. 创建model为了方便使用,我们了创建BaseModel和BaseContainerModel这两种基类。BaseModel:所有...2009-09-05 20:13:59 · 223 阅读 · 0 评论 -
Eclipse 绘图的新选择 Zest - 轻量级可视化工具包
偶尔去GEF网站上看看, 发现在GEF的分类下除了Draw2d外,还加了一个项目: [b][color=red]Zest[/color][/b]. (太久没关注了, 汗~```)介绍URL: [url]http://www.eclipse.org/gef/zest/[/url]Demo源码URL: [url]http://www.eclipse.org/gef/zest/snippet...2009-01-14 11:41:31 · 446 阅读 · 0 评论 -
Draw2d的GridLayout 和BorderLayout
Draw2d里面的GridLayout、BorderLayout和SWT的GridLayout、BorderLayout用法非常像,很容易上手。效果见图,源码见附件。[color=cyan][b]GridLayout[/b][/color][img]http://www.iteye.com/upload/attachment/99189/cbb793aa-56ba-3327-be81-...2009-04-29 23:42:42 · 170 阅读 · 0 评论 -
GEF 禁止控件的拖拽, 调整大小
我们最常使用的XYLayout, 控件是可以随意的在四个边框调整大小, 拖拽控件, 有时我们有需要禁止拖拽或调整大小, 具体实现看下面代码.[color=red][b]解决方法1: [/b][/color]在createChangeConstraintCommand中,根据具体情况返回UnexecutableCommand.INSTANCE即可.[color=red][b]具体...2008-11-03 10:29:27 · 224 阅读 · 0 评论 -
GEF TreeViewer使用
GEF的ContentOutlinePage就是TreeViewer使用的例子.下面直接贴代码, 有空再进行整理:[b]第一段代码[/b], 在SWT的Composite的界面上添加一个GEF的TreeViewer.[code="java"] treeViewer = new org.eclipse.gef.ui.parts.TreeViewer(); treeView...2008-10-27 12:38:44 · 183 阅读 · 0 评论 -
GEF入门资源汇总
目前网上GEF的例子和文章还是比较稀少的,将一些常见的资源汇总如下(根据个人喜好,进行了筛检):[b][color=red]Eclipse GEF官网[/color][/b][url]http://www.eclipse.org/gef/[/url]可以在上面找到GEF的下载地址,上面也可以找到Eclipse提供的例子,当然,后面的文章都是基于这几个例子上的.[b][c...2008-04-08 18:03:54 · 134 阅读 · 0 评论 -
GEF 修改默认的上下左右按键事件[GraphicalViewerKeyHandler]
在GraphicalViewerKeyHandler里面会监听 键盘的上下左右的事件, 效果就是选中下一个界面上的控件. 但, 用户要求改成 给当前选择控件 移动位置. [GEF的对于上下左右的默认处理比较怪, 和一般的编辑器不一样的效果, 用户要求修改是正常的.]下面贴主要代码:[code="java"]getGraphicalViewer().setKeyHandler(new G...2008-10-13 18:37:15 · 233 阅读 · 0 评论 -
GEF 给PropertySheetPage设置属性排序功能
在PropertySheetPage显示的属性中, 如果需要自定义属性显示的上下顺序, 就需要给PropertySheetPage添加一个PropertySheetSorter, 从而决定属性显示的上下顺序.[code="java"]protected void setSorter(PropertySheetSorter sorter) {[/code]但是, 这个方法是prote...2008-09-26 10:44:42 · 268 阅读 · 0 评论 -
GEF实践总结(六)Connection连线
一. 目标在2个不同Table的2个Column间能建立Connection二. 书写Connection模型public class ColumnConnectionModel extends BaseModel {private TableColumnModel target;private TableColumnModel source;、 public...2009-09-23 00:05:18 · 330 阅读 · 0 评论 -
GEF 添加 CTRL + A 等组合的快捷键
网上一般都任务是无法在GraphicalViewer直接setKeyHandler方法 来注册Ctrl+a的快捷键的.[code="java"]getGraphicalViewer().setKeyHandler(new GraphicalViewerKeyHandler(getGraphicalViewer()).setParent(this.sharedKeyHandler));[/c...2008-09-11 10:55:38 · 207 阅读 · 0 评论 -
GEF KeyHandler
[b]第一段代码[/b]: 注册action[code="java"] this.actionRegistry = this.getActionRegistry(); IAction action = null; action = new UndoAction(this.page.getEditor()); actionRegistry.registerAction...原创 2008-09-02 00:36:12 · 163 阅读 · 0 评论 -
GEF实践总结(五)大小调整、按键监听、撤销重做
一. 目标能够选中Table,移动Table的位置,调整Table的大小。可以支持撤销Undo和重做Redo。二. 给DataBase书写XYLayoutEditPolicy书写一个DataBaseXYLayoutEditPolicy类继承与XYLayoutEditPolicypublic class DataBaseXYLayo...2009-09-11 09:18:26 · 212 阅读 · 0 评论