自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Runner_up的博客

我是一棵小树 吸收营养中.......

  • 博客(38)
  • 资源 (3)
  • 收藏
  • 关注

原创 程序员技术成长杂谈

悟道: 程序员晋升之路

2017-04-05 16:19:07 491

原创 RCP产品引入Spy

引入插件:   org.eclipse.pde.runtime用百度搜了好久没搜到,google搜索第一条   做个记录

2016-10-12 17:26:33 358

原创 技术研发方面工作经验总结

结合自己两年来的工作经验和所遇到的一些问题来记录下自己的一些思想成长.

2016-10-12 09:53:08 4350

原创 GEF中SelectionToolEntry,MarqueeToolEntry选中连线

背景:在默认的gef中,这两个鼠标工具都是不默认选中连线的. 但是多选节点,进行复制粘贴等操作时,总希望连续也是跟随节点的操作. 选中连线是基础.  其实很简单,但又涉及到一点gef机制的探索,所以就立文记录下.解决:MarqueeToolEntry进入源码看下豁然开朗.它用常量给出了自己的选中状态.并保存到marqueeBehavior中.通过ToolEntry.getT

2016-08-09 16:08:34 822

原创 通过重写PolylineConnection.outlineShape()方法优化连线显示

之前:通过修改线本身的位置的pointList  来实现.为连线增加拐角圆滑修饰.这样有很多弊端.后来发现这个方法分享给大家.outlineShape()是根据线的pointList返回需要绘制线的pointList.   所以我们可以通过重写这个方法在不改变线数据的情况线,改变线的显示样式.好处:1.不为连线增加额外的位置数据.(简化数据)        2. 不为创建线

2016-08-08 16:02:59 781

原创 为JFace(TableViewer,TreeViewer...)创建可直接编辑的DialogCellEditor

背景:1.JFace的TableViewer,TreeViewer普遍应用,TextCellEditor,ComboCellEditor,DialogCellEditor等是JFace自带的单元格编辑器. 这些编辑器确实可以满足很多需求,而且使用方便,但随着对于UI交互要求的提高,用户追求更加简单的操所时.这些Editor的编辑操作确实还有一些优化的空间.    (毕竟是背景, 说的官方高大上

2016-07-26 11:47:57 2568

原创 JCEF的编译

背景:cef:cef官网  个人理解:就是把chrome的内核提取出来给其他应用使用,.浏览器只是其的一种应用展示而已.虽然它来自浏览器cef:源码下载:cef源码下载  jcef:jcef官网  用java代码对cef进行一层封装.我不吐槽:虽然这三个官网都是直接可以访问的.jcef可以通过git下载 当然很慢.我把git的timeout设置成了3000s   但是重

2016-05-31 09:20:56 3846

原创 关于java List的强制转型的理解

背景:之前对于涉及到List的强制转型的理解是:      List personList = (List) list;  他会检测list中的每一项,如果其中包括非Person类或其子类的就会提示错误.然而这个想法并不正确.测试:两个简单无关系的类.public class Cat { private String name; public Cat(String

2016-05-18 11:01:17 6224

原创 关于Eclipse的git功能(egit插件)执行replace 依然显示差异问题的处理

背景:        正常replace 文件的二进制级别的差异将被替换, 当前文件将被完全重置为目标文件. 二进制比较差异将消失.        但是脸黑的我竟然赶上了这种情况.        但幸运的是 hard reset可以清除.问题探究和测试:1.文件确实是会被replace,  但是错误的被检测为 存在差异.2.如果把差异文件提交,  相同的

2016-04-11 10:30:47 3000

原创 国内镜像资源站点整理

没有VPN 墙的东西看不到用不了  但还是得继续前进不是?!http://mirrors.ustc.edu.cn/http://mirrors.hust.edu.cn/http://mirrors.yun-idc.com/

2016-03-18 17:29:09 808

原创 引入sleak异常,Warning: Device is not tracking resource allocation处理

引入sleak异常,Warning: Device is not tracking resource allocation处理

2016-03-10 18:13:21 843

原创 大神博客链接分享

学习大神的经验分享可比自己探索更有效率的多 蔡羽(安神):http://www.cnblogs.com/anrainie/plug-in黑夜:http://blog.csdn.net/soszou/article/details/41147833何明(win神):http://358184482-qq-com.iteye.com/刘刚:http://liugang594.i

2016-03-03 11:00:36 463

原创 关于RCP产品无法进行远程调试的说明(源码断点和高亮显示位置不对)

RCP产品在进行远程调试时,可以监听到相关线程,源码断点和高亮显示位置不对。

2016-03-03 10:22:24 731

原创 基于同一个Table或者TableViewer创建的Table,创建CheckTableViewer引起问题说明

背景:虽然这个场景很少出现,或者说这个使用是不合理的,但是之前我上传的TableViewer源码中 却同时存在出现了题目中提及的到情况。由于当时为了将分支的东西都添加进来,导致了这种场景的出现。引发问题:即使创建的CheckTableViewer没有在后面被使用,但是影响依然存在。 目前明确的影响有两个:1.操作会触发更多的逻辑   因为在创建CheckTableVie

2016-01-13 17:03:22 434

原创 关于JFace的TableViewer中引入ComboBoxCellEditor 快速双击对于Cell Combo无法展开问题的解决

背景:之前我上传过一个关于TableViewer的使用说明(也提供的了源码下载)  当通过ComboBoxCellEditor设置姓名时,需要通过三次单击:第一次:选中Cell第二次:展开Combo第三次:选中想要输入的名称问题描述:当如果你快速执行前两次单击  即:双击时,Combo便不能展开了。哪怕你频繁双击也是在选中Cell和选中文字两种状态下切换。

2016-01-11 17:35:21 1878

原创 关于插件开发扩展和扩展点的理解和思考

背景:一个大的产品是由很多的插件构成。插件间的相互协作是必不可少的。相互协作的典型方式是依赖,A依赖B,A就可以使用B中开放的包中的类了。(这种方式的优缺暂不讨论)通过扩展扩展点的方式是另一种相互协作形式。概念:扩展点:一个可以支持特定功能的结构定义。   类比为方法的定义   这里主要是方法的入参格式定义  形参扩展:自己或其他插件根据扩展点的定义格式  配置自己

2016-01-05 14:14:28 3891

原创 rcp工程使用git库时,删除被依赖插件引起的变化

git History记录:时刻2:删除插件A,B插件的相应依赖关系也被删除。只剩下插件B(较新的修改)...时刻1:插件B依赖插件A..此时进行的操作1.当前是最新版本2.Reset ->hard  从时刻2到   1到2之间的某一个版本结果:由于在最新版本时,本地的workspace里面没有插件A,只有插件B此时,rese

2015-12-24 17:41:09 449

原创 GEF 创建连线的优化

背景:GEF连线是很重要的组成部分anchor是连线的起点和终点所连接的位置为了美观可以在anchor的位置添加handle使得anchor更加直观虽然很多时候 提供了连线工具   当时频繁切换工具并不友好   解决方法:可以当用户单击handle的时候创建连线  具体实现逻辑即:在鼠标监听事件中创建连线工具(继承自ConnectionCreationTool) 并

2015-12-15 10:00:31 976

原创 java特性重温

java的三大特性:封装,继承,多态封装  (出现类的概念)1.把属性和操作(或服务)结合为一个独立的整体2.可以隐藏内部实现的细节(通过private关键字)继承  (方便类的创建)方便通过已有类 创建新类  引入新的属性和操作  并通过@override修改已有操作    PS:不可缩小访问范围多态    (基于继承  具有表现多种形态的能力的特征)

2015-12-01 11:45:36 240

原创 设计模式个人理解总结

本博客 记录笔者对于不同设计模式的理解,不一定正确,而且随着理解的深入会不断修改。欢迎各位评论交流单例:通过将构造函数私有化,并且创建好唯一一个实例后,将该实例提供其他类。多例:构造函数私有化,但可以返回指定个数的实例,通过一定标识区分返回哪个。观察者:将观察者作为监听器加载到主题的数据成员监听集合中,  当主题发生改变时,依次触发所有的监听器。工厂模式:通过区分标

2015-12-01 10:05:37 323

原创 GEF 入门教程

GEF教程.pdf+git项目源码 希望可以帮助入门学习GEF的人

2015-11-25 22:21:57 2049

转载 GEF中组合按键设置汇总以及org.eclipse.gef.KeyStroke的方法的使用

原址:GEF中组合按键设置汇总以及org.eclipse.gef.KeyStroke的方法的使用GEF开发中默认的快捷键有可能没有设置齐全,又或者开发中需要自定义设置一些快捷键及组合。我在开发中也遇到此类问题,尤其是对每个键该写什么参数值很困惑。在网上有一些零零星星的资料,找来研究了一下,现在将一些内容做个汇总:GEF中设置快捷键主要是在自己的Editor中来处理Key

2015-11-25 11:44:09 516

转载 在eclipse.ini中为eclipse指定jdk启动

博客地址:在eclipse.ini中为eclipse指定jdk启动机器上装了好几个版本的jdk,要用指定的jdk启动eclipse,只需修改eclipse.ini文件即可。参考:-vmC:/jdk1.6.0_18/bin/javaw.exe  (//-- 注:放第一行)   好像放在-vmargs之前就可以--launcher.XXMaxPermSize256m-v

2015-11-23 11:18:16 327

原创 ant脚本部署RCP产品

本帖主要记录自己学习过程中遇到的问题。主要学习的链接:浅析 Ant 脚本部署 RCP 项目1.${xxxxx}: 类似于linux命令中的环境变量。这些变量本身定义在同目录下的build.properties2.想要正常执行这个运行ant脚本。需要修改一些环境变量符合自己的本地环境  例如pdeBuildPluginVersion,equinoxLauncherPluginVers

2015-11-20 11:48:03 666

转载 linux下安装jdk

百度经验

2015-11-19 11:31:57 370

原创 linux bash shell 笔记

different type shell,different filesInteractive login      .bash_profileInteracitve              .bashrcNon-interactive      shell script别名#出现时,后面的被忽略在根目录的.bashrc中设置命令别名环境变量直接使用命令:

2015-11-18 10:52:49 349

原创 linux 简单命令笔记

cat : 重复你的输入Ctrl +d:终止很多的命令man :(manual)   很多命令的详细说明  q 返回 空格向下翻页    example:man catls /:展示根目录ls -F :展示目录区分 文件夹和文件pwd:(present working directory)显示当前工作目录cd [directory]:(change directory) 切

2015-11-16 15:34:16 299

原创 RCP 运行application,product时无法执行 Incompatible JVM提示 解决方法

无法启动RCP application,product程序完整的提示信息是:Incompatible JVMVersion 1.6.0_45 of the JVM is not suitable for this product. Version: 1.7 or greater is required.条件:项目依赖了jdk1.6  但启动的时候 提示jvm启动需要1.7对于不

2015-11-12 17:32:26 1128

转载 RCP 文件路径问题

终于找到直接可以用的了 Java代码 path = FileLocator.toFileURL(          Platform.getBundle(IAppConstants.APPLICATION_ID)                  .getEntry("")).getPath().toString();  RCP 文件

2015-11-02 10:26:11 528

转载 表格(TableViewer类)

第14章  表格(TableViewer类)TableViewer表格类是JFace组件中重要且典型的一个组件,其中涉及了JFace的众多重要概念:内容器、标签器、过滤器、排序器和修改器,这些概念对后面JFace组件特别是TreeViewer的学习非常重要。从本章也可以体会到JFace非常突出的面向对象特性。14.1  概    述JFace是SWT的扩展,它提供了一组功能强大的界面组

2015-10-30 17:43:19 2270

转载 Java中判断字符串是否为数字的三种方法

推荐使用第二个方法,速度最快。方法一:用JAVA自带的函数 public static boolean isNumeric(String str){ for (int i = str.length();--i>=0;){ if (!Character.isDigit(str.charAt(i))){ return fals

2015-10-30 17:16:13 786

转载 查看Eclispe是32位还是64位

首先进入到Eclipse的安装目录,如下图:查找到文件名为"eclipse.ini"文件,使用文本编辑工具,或记事本打开,如下图:如图中的红框所示,如果是win32.x86 ,则是32位的Eclipse ,如果是“win32.x86_64”,则是64位的Eclipse ,如下图:原文链接:怎样查看Eclipse是32位还是64位

2015-10-29 10:02:47 481

原创 GEF连线优化 支持额外检测功能的存储线路径的PointList(合并同终点线,分离重合线)

PointList  是存储线路径的集合   也是寻路算法router的最终输出结果如果额外考虑线与线之间的相互影响  则会进一步提高画面的显示效果我原创的CheckPointList可以支持一些对线间关系的相互处理    注:只是针对于水平,竖直方向的线,不支持斜线具体支持的机制如下:       1.支持同终点的连线如果在行进时如果靠的很近,则自动合并。       2

2015-10-27 10:32:26 588

原创 Git history视图 reset至旧节点 导致新节点消失

提交完新的代码到本地后, 想看下之前节点的代码 于是就  hard  reset了 然后  新提交的代码所在节点就消失了最初样子:reset 之后:(soft 也一样)  就消失了   吓到宝宝了  我的代码呢鼓起勇气继续reset:   又出来  你是在逗我吗?!下面是操作记录:处理方法:打开Eclispe git

2015-10-08 14:58:45 770

原创 基于AStar算法的RCP布线优化

之前的AStar算法学习笔记博客 提到了大神的基于AStar算法的RCP布线算法   但是大神给的开源码 还有存在可以优化的部分  这个博客主要是记录自己优化的过程大神源码链接:RCP:gef智能寻路算法(A star)我的AStar的算法学习:AStar算法学习笔记 改进与优化1. 关于终点出现斜线问题        分析:由于坐标是以起始点作为坐标原点的,所以终

2015-09-29 16:36:50 1241

原创 AStar算法学习笔记

最近在负责布线的一些功能的优化   在某位大神的启发知道下 知道了 AStar算法 如获至宝 学习的主要连接为: 极限定律 My Algorithm Space A*算法入门 以下是个人理解:核心公式:    f(最终路径长度) = g(起点到x点的长度)+ h(x点到终点的估计长度)                        开启列表:将要被遍历的点的集合

2015-09-24 16:34:14 1465

原创 swt中setToolTipText()失效问题和setToolTipText()部分测试

在RCP工程在Eclipse 4.3 Kepler版本中,swt中setToolTipText()失效   相同的源码 在Eclipse 4.4 luna中有效 原因未知万幸的是:但通过4.3导出的产品   setToolTipText() 是可以生效的。部分测试 * 1.设置      text.setEditable(false);  tooltip 生效 *

2015-08-24 17:03:02 836

原创 使用GEF ScalableFreeformRootEditPart的注意事项

如果你仅仅是将ScalableRootEditPart()改为ScalableFreeformRootEditPart,会出现primary layer主层隐藏的情况.将ContentEditPart(包含Model的ContentModel对应的EditPart)中的createFigure中生成的函数.1.返回的layer 的类型是FreeformLayer 2.layoutManager是FreeformLayout

2015-05-21 17:14:46 769

GEF学习教程

GEF学习教程 其中教程中项目的源码 在我上传的另一个文件中 可以免费下载

2015-11-25

gef入门学习项目源码

这个资源的内容是GEF教程.pdf中项目的源码 以git库的形式展示各个部分的内容 也是本人学习过程的记录 希望可以帮助想要学习GEF技术的人

2015-11-25

TableViewer学习源码

虽然文件名字起得很笼统 里面只有一个关于TableViewer的项目源码 源码的依据是我转载的一篇学习TableViewer的博客源码 http://blog.csdn.net/weiweiwei256/article/details/49514699

2015-10-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除