`
liugang594
  • 浏览: 987483 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
一个Eclipse的手势插件,只在Eclipse的Editor区域有效。使用方法是:按住鼠标右键拖运。 画示:     环境:   Java5.0及以上   Eclipse3.1的请使用3.1版本 Eclipse3.2及以上的,请使用3.2版本   提示:   该插件是可扩展的!其中canAccept(points)当前动作是否被接受,参数points表现当前线上的有序点。 execute方法是具体的动作实现!
Eclipse的Debugger框架设计还是很好的。不过也有一些个不足之处:   1。层级结构较死板      一般咱们在Debugger View看到的是以下几层:                            Launch                                     |_DebugTarget                                                            |_Thread                                                                   ...
Editor中嵌入Editor,最大的问题就是Action的问题。 我们知道,通过每个Editor都有自己对应的Action组,我们通过提供Editor的Contributor来提供该Editor对应的Actions。但是这在内嵌Editor中就会有问题了。例如,我有一个GEF的Editor:ZillionaireE ...

给GEF拖放功能

    博客分类:
  • GEF
我们知道SWT支持Native的拖放。GEF使用SWT的拖放来实现自己的拖放功能。不过不需要像SWT中需要定义DragSource和DropTarget。在GEF中,我们只需要继承AbstractTransferDragSourceListener来实现拖放源;继承AbstractTransferDropTargetListener来实现放置地。   这里以放置地为例!   首先,写一个继承类FileDropTargetListener,如下: public class FileDropTargetListener extends AbstractTransferDropTargetL ...
GEF中,选中一条连接线,默认的端点是两个小黑框,如下:   Figure 1   这个可用,不过终究是不太美观。这里介绍一下怎么修改这个选中的端点外观。修改后的效果如下:     Figure 2   首先有一点我们知道:通常要使得连线能够被选中,我们要在连接线对应的EditPart上安装以下Policy: installEditPolicy(EditPolicy.CONNECTION_ENDPOINTS_ROLE, new ConnectionEndpointEditPolicy());   所以,我们知道,要想修改连线端点,我们需要从ConnectionEn ...

GEF中导视图的使用

    博客分类:
  • GEF
有时增加一个导视图能给用户很大的方便性,例如在outline视图里使用导视图,可以很方便的看到整体与局部的关系。 GEF中也提供了导视图功能。这里就讨论一下它的使用。   首先我们要知道几个概念:                  1、Viewport:视口,也就是当前你能看到的部分,比如一个Editor中的可见部分。                2、Thumbnail:GEF中的导视图是通过Thumbnail的子类来的完成。   看Viewport有三个子类:FocusableViewport、RulerViewport和FreeformViewport。看它们的引用关系可以 ...
重复上篇,我们有以下类: 1、模型相关:RouteMap、Homuncule,其中RouteMap含有一个或多个Homuncule 2、Policy相关:HomunculeLayoutPolicy;安装在RouteMapEditPart上用于移动Homuncule或重置它    的大小 3、EditPart相关:对应于RouteMap的RouteMapEditPart;对应于Homuncule的    HomunculeEditPart.   一个完整的feedback的方法调用请求如下:   showLayoutTargetFeedback(Request request) ...
假如我们有两个模型:RouteMap和Homuncule,其中Homuncule是包含在RouteMap中。RouteMap上安装有用于Homuncule拖动和定大小的Policy:HomunculeLayoutPolicy.   要修改Homuncule默认的FeedBack,我们需要重写HomunculeLayoutPolicy的createChildEditPolicy(EditPart child)方法。例如: protected EditPolicy createChildEditPolicy(EditPart child) { if (child instanc ...
Editor中嵌入Editor                                                             ---Eclipse系列(刘刚) 一、背景 有时按照功能的需要,我们希望能在自己的Editor中嵌入其他已经存在的Editor,比如JavaEditor,比如XMLEditor,以方便的使用这些Editor已经有的一些方便特性。 二、思路    粗看来,好像无计可施,实际不然。如果你曾经实现过自己的MultiEditor,并且在其他的某一页中是直接引用的其他的Editor,那么你肯定记得:在MultiEditor的addPage()系列方法中,有 ...
附件是一个小小的插件。 大致功能类似于现在浏览器上的“手势”,用来在Eclipse的Editor上进行快速关闭和前后移动。 (可能有反应不正确的时候,还望大家多多指正)
构建一棵树或表,有时,如果数据量太大,那么一次性加载所有的数据将耗费大量的时间。SWT中提供了一个虚拟的样式用以推迟对数据的加载,通过这种分散加载的方式来加速树或表的构建和显示。 要实现一棵虚树或一个虚表 ...
我想知道怎么在JavaEye里真正插入一张图。难道只能用链接的方式,那我必须先把图上传到哪去,再指定到那个链接。很傻吧。! 看到这个问题的,知道的帮个忙。谢谢了!
1. 使用job的一个好处就是可以在后台运行。 但是如果不给用户于提示的话,很多时候会让用户很困惑,这就有必要增加回显。上面又说了,提供回显会增加复杂性。下面就是解决这个问题的方案!记得在第一部分,说过一个job ...
1. 资源改变资源改变可以分为两种情况:             1. 有UI参与的             2. 没有UI参与的       首先介绍没有UI参与的。没有UI参与的时候可以使用以下三种方式:       1.老的IWorkspace的run方法           使用方式如下:
 1. 一般的长时间的后台工作都应该使用Job,Job可分为三个等级:                      System级:对用户没有反馈                      Default级:在状态栏中有反馈                      User级:  有一个进度条对话框,可取消和后台运行  一般使用如下: Job job = new Job("Long Running Job") { protected IStatus run(IProgressMonitor monitor) {
Global site tag (gtag.js) - Google Analytics