本月博客排行
-
第1名
Xeden -
第2名
fantaxy025025 -
第3名
bosschen - paulwong
- johnsmith9th
年度博客排行
-
第1名
青否云后端云 -
第2名
宏天软件 -
第3名
gashero - gengyun12
- wy_19921005
- vipbooks
- e_e
- benladeng5225
- wallimn
- ranbuijj
- javashop
- jickcai
- fantaxy025025
- zw7534313
- qepwqnp
- robotmen
- 解宜然
- ssydxa219
- sam123456gz
- zysnba
- sichunli_030
- tanling8334
- arpenker
- gaojingsong
- xpenxpen
- kaizi1992
- wiseboyloves
- jh108020
- xyuma
- ganxueyun
- wangchen.ily
- xiangjie88
- Jameslyy
- luxurioust
- mengjichen
- lemonhandsome
- jbosscn
- nychen2000
- zxq_2017
- lzyfn123
- wjianwei666
- forestqqqq
- ajinn
- siemens800
- hanbaohong
- 狂盗一枝梅
- java-007
- zhanjia
- 喧嚣求静
- Xeden
最新文章列表
Draw2D使用心得
最近在开发Eclipse插件的过程中,需要展现COBOL作业的TWS调用流程,打算通过在Eclipse的视图中展现。大致的处理流程是:开发人员通过菜单选择查询TWS流程图选项,弹出对话框,输入需要查询的作业ID和环境参数,系统去主机DB2查询作业的关系数据库,将关系组装成Map表返回给Exclipse,Exclipse再通过解析Map并在视图中展现作业调用关系。
整个流程关键是展现,需要 ...
用Draw2d画一个静止的时钟
package org.autumn.draw2d.example;
import org.eclipse.draw2d.ColorConstants;
import org.eclipse.draw2d.Ellipse;
import org.eclipse.draw2d.Figure;
import org.eclipse.draw2d.FigureCanvas;
import o ...
Draw2d 实现连接 拖动 PolylineConnection Dragger
摘要:使用Draw2d ,画图,连线,可拖动图像,连线跟着移动。
1,代码:
public class Connection {
public static void main(String args[]) {
Shell shell = new Shell();
shell.setSize(350, 350);
shell.open();
shell.setTex ...
gef中几何对齐功能原理以及实现
几何对齐功能也是为了方便用户排列图形元素的,如果打开了此功能,当用户拖动的图形有某个边靠近另一图形的某个平行边延长线时,会自动吸附到这条延长线上;若两个图形的中心线(通过图形中心点的水平或垂直线)平行靠近时也会产生吸附效果。例如下图中,Subject1的左边与 Subject2的右边是吸附在一起的,Subject3原本是与Subject2水平中心线吸附的,而用户在拖动的过程中它的上边吸附到 Su ...
gef中打印功能的原理和实现
在gef中关于打印的功能,采用PrintGraphicalViewerOperation实现打印Ifile的功能。如果非特性的打印动作,可以采用gef中相关的PrintActioni类实现打印的工作。
相关的PrintAction类源代码在org.eclipse.gef.ui.actions.PrintAction;
在源代码:public class PrintFigureOperat ...
gef中采用公共的快捷键功能的原理和实现
在gef相关的编辑器类中采用快捷键处理器KeyHandler中注册相关类的Action并在
protected KeyHandler getCommonKeyHandler(){
if (sharedKeyHandler == null){
gef 上下文菜单的应用
在gef的编辑器视图中添加相关的上下文菜单,经常需要是实现org.eclipse.gef.ContextMenuProvider的类。在gef编辑器中注册。操作类似公共的快捷键设置。在编辑器视图的protected void configureGraphicalViewer()方法中添加相关的配置:
ContextMenuProvider provider = new LogicCo ...
网上流传的一个RCP Table Grid打印实现原理和局限性
package com.easyway.tbs.commons.ext.views.printer;import org.ceclipse.reporting.IReport;import org.ceclipse.reporting.IReportPage;import org.ceclipse.reporting.Report;import org.ceclipse.reporting.Rep ...
gef中编辑图中添加背景图片原理以及实现
GEF的RootEditPart对应的Figure是一个由多个Layer组成的LayeredPane,每个Layer负责包含不同类型的图形元素,如节点、连接、网格线等等。所以要让图形编辑器显示一个图片作为背景,可以在它们其中一个层里绘制这个图片,也可以添加一个层专门放置背景图片。在gef中所有的图形元件继承自Figure类。实现背景色和背景图的更改的必须实现Figure中部分类。
由源代码: ...
gef中将流程图转换图片复制粘贴原理以及实现
设计思路如下:将一个gef图元转换为一个图片(createImage()方法是实际在内存里作画并转换为可写入为文件的二进制流),然后将图片转换为ImageData对象,通过系统的ImageTransfer转换器转换:
A.将gef图元转换为图片:
/**
* 将一个元件装换为一个图片的信息资源
* Returns the bytes of an encoded ima ...
gef编辑器中需要采用向导页
在一般的gef编辑器中需要采用向导页,生成一个格式的gef编辑文件。例如JBPM中创建流程图过程。
重点:
流程文件在编辑器中打开:
流程文件的保存:
package com.easyway.plugin.gef.diagram.dev.ui;
import java.io.InputStream;
import org.eclipse.core.resources.IFil ...
gef中拖动拽动原理以及实现(一)
gef中拖动拽动原理以及实现
方案一:
创建拖拽对象的工厂
package com.easyway.plugin.gef.diagram.dev.model;
import org.eclipse.gef.requests.CreationFactory;
/**
* 创建对象工厂
* @author longgangbai
gef中添加可折叠调色板原理以及实现(二)
gef中添加可折叠调色板原理以及实现 中主要的PaletteRoot的创建:
GEF 3.0还允许用户对调色板里的各种工具进行定制,例如隐藏某个工具,或是修改工具的描述等等,这是通过给PaletteViewer定义一个 PaletteCustomizer实例实现的,但由于时间关系,这里暂时不详细介绍了,如果需要这项功能你可以参考Logic例子中的实现方法。
package com.easywa ...