摘要:
在Eclipse的About对话框上添加自己的图标的步骤。 阅读全文
摘要:
在上一篇里我们为一个普通的Eclipse插件添加了Application扩展,剩下来的工作就很简单了,甚至不需要再编写一行代码。在 Eclipse 3.1里,把具有Application的插件包装成RCP并输出的过程是通过建立产品配置文件(Product Configuration)来完成的。 阅读全文
摘要:
有不少朋友问到如何把一个已有的Eclipse插件转换为RCP应用程序,其实这个过程并不复杂,因为RCP应用也是基于插件的结构,可以说RCP 就是精简后的Eclipse平台,只是我们要对这个平台做一些定制工作。将任何一个传统的Eclipse插件项目转换到RCP可以分为两个步骤,这篇先介绍第一个步骤:建立应用程序。 阅读全文
摘要:
EMF生成的应用程序里,用户的发出的每一条命令都是可以撤销(Undo)的,例如修改了产品的价格,按一下撤销按钮就能恢复原来的价格,当然还可以通过重做(Redo)再回到新的价格。为了实现这个功能,应用程序里维护了一个用于存放命令的类似栈的数据结构(CommandStack),每一条执行过的命令都被存放在那里,需要撤销时取出最近一条命令进行撤销。这个数据结构是由EditingDomain对象负责维护的, EditingDomain相当于编辑模型时的环境。 阅读全文
摘要:
Eclipse 3.1提供了新的资源文件访问方式,就是通过osgi.util.NLS类,这样可以简化程序代码。 阅读全文
摘要:
第三篇帖子介绍了定制一个EMF应用程序的基本方法,这一篇让我们来看看怎样定制应用程序的使用界面。没有任何一个界面是万能的,所以定制工作不可避免,而大多数定制都是通过修改代码来实现的。在实际应用中,同一个需求可能有多种修改方式可以实现,我认为修改涉及的地方(类,方法)越少越有利于发挥EMF的优势,因此我们应该对EMF生成的代码有一定的了解,这是发挥自己创造力的基础。 阅读全文
摘要:
在电磁干扰严重的狭小空间里,笔记本的内置声卡表现一般比较差,至少我的n600c底噪就很明显。要获得更好的效果或者需要数字输出时只能借助外置声卡了,包括pcmcia接口和usb接口两种,前者如创新的Audigy2 ZS Notebook,当然很贵了;后者如我的玲珑II,性价比还不错。 阅读全文
摘要:
我的机器上是Debian和win2000双系统,今天把原来window的e盘转换成linux的分区了,相当于给linux增加了10G容量,这下宽裕多了。 阅读全文
摘要:
在EMF里可以用XML Schema定义模型,然后转换为genmodel模型,但我这里在生成genmodel向导的第四步按Load后会产生一个NullPointerException如下,导致无法继续。 阅读全文
摘要:
Eclipse鼓励将不同的功能模块划分为独立的项目存在,这样不但结构清晰,组织起来还非常灵活,因为我们可以用feature对这些项目进行不同的组合,输出后得到具有不同功能的产品。不过这样一来Package Explorer里的项目会以更快的速度增加,当你面对几十上百个项目时,工作效率必然大打折扣。幸好Eclipse提供了工作集(Working Set)的功能,它可以用来划分这些项目。 阅读全文
摘要:
除了普通的类(接口)以外,在类图里可以定义一些特殊的元素,比较常见的是枚举类型、自定义类型,它们对于一个完整可用的模型也是必不可少的,这篇帖子主要介绍EMF里它们的使用方法。另外,由于EMF对Map的支持比较特别,所以在这里也简要介绍一下Map类型的定义方法。 阅读全文
摘要:
Debian 3.1的testing版本,gnome版本2.10.2,小企鹅输入法(fcitx)版本3.1.1-1。进行过一次debian升级(从stable 升级到testing)以后就出现了这个问题:如果在一个窗口里输入过汉字,按Alt-Tab就无法切换到其它窗口(有窗口列表出来但松开后不会让那个窗口变为当前窗口),而输入英文就不会这样。 阅读全文
摘要:
借助EMF的帮助,不用亲自编写一行代码就可以生成一个完整的应用程序,你是不是对EMF有些感兴趣了?不过生成的应用程序看起来都像是从同一个模子里出来的,即一个多页编辑器,一个大纲视图和属性页,这当然无法满足所有人的需求。不用耽心,只要了解EMF的机制,按照我们的要求修改这个应用程序并不是一件很困难的事情。 阅读全文
摘要:
还是从一个例子里看看EMF的使用方法和作用吧。假设我们的应用是一个网上商店,在系统里有这些对象:商店Shop、类别Category、商品Product,其中类别可以包含子类别。现在我们用EMF从头到尾生成一个可以管理类别和商品的应用程序。 阅读全文
摘要:
接触Eclipse一段时间的朋友应该都听说过EMF这个名字,EMF是Eclipse Modeling Framework的缩写,它是Eclipse的一个重要的子项目,如果翻译成中文就是“Eclipse建模框架”。其实只从这个名字还真是难以确定它的作用是什么,我认为要完全掌握EMF应该对模型驱动开发(MDA)有一定的了解,而EMF可以看作是Eclipse上的MDA一个实现(代码生成是MDA 的重要组成部分之一),它能够生成在Eclipse上执行的代码。可惜我对MDA没有系统研究过,对EMF的应用大多是为了减少模型修改带来的影响,所以也希望EMF能带我进入MDA的世界。 阅读全文
摘要:
以前以为Slider和Scale之间只是外观的区别,今天发现不是这样的,因为Slider有一个特点:getSelection()能得到的最大值并不是getMaximum()的值,要减去getThumb()值,后者是中间的滑块所拥有的值,缺省为10,最小为1。 阅读全文
摘要:
最近有朋友问使用EMF作为GEF模型时,如何在选中editpart时在属性页里显示属性的问题。这里提供一个解决方法,不过并不完美。 阅读全文
摘要:
其实可以放在任何Composite上,当然也就可以放在视图里了。关键任务是创建GraphicalViewer、RootEditPart、EditDomain和EditPartFactory这些对象,下面的代码是我从别处拷来的,稍微修改了一下。 阅读全文
摘要:
前面说过,输出eclipse插件的时候问题比较多(google搜索3rd party jars site:dev.eclipse.org),特别是使用了第三方jar文件的时候。有一个比较方便的办法是把这些jar文件包装为一个单独的插件,然后你的功能插件用dependencies的方式引用它们,这也是eclipse推荐的方式。 阅读全文
摘要:
Debian里编译内核和给内核打patch的步骤。 阅读全文