- 浏览: 2445269 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (574)
- Book (62)
- Architecture (6)
- Java (39)
- Taobao (41)
- Distributed (4)
- Life (72)
- Database (7)
- Spring (16)
- Photography (15)
- Bicycle (41)
- Test (20)
- jBPM (8)
- Business (12)
- Movie (3)
- Ajax (15)
- Code (7)
- Eclipse (96)
- VIM (2)
- Music (6)
- Groovy (10)
- AutoHotKey (3)
- Dorado (10)
- Maven (7)
- Scrum (5)
- English (20)
- Financial (12)
- OSGi (3)
- Other (4)
- Tool (6)
- Browser (1)
- PPT (1)
- Project Management (4)
- Agile (6)
- Nosql (1)
- Search engine (6)
- Shell (2)
- Open Source (4)
- Storm (10)
- Guava (3)
- Baby (1)
- netty (1)
- Algorithm (1)
- Linux (1)
- Python (2)
最新评论
-
roy2011a:
https://github.com/ebottabi/sto ...
storm的序列化问题及与spring的结合方式 -
roy2011a:
能抗能打 写道哥们儿,你好!能共享下那个storm与sprin ...
storm的序列化问题及与spring的结合方式 -
Alick1:
兄弟,你之前是不是在深圳的正阳公司呆过啊?
storm的ack和fail -
liuleixwd:
先点个赞,写的非常好!有个问题请教下,如果我再bolt里不用e ...
storm的ack和fail -
yao-dd:
solr的facet查询
Object Action
这种Action是跟弹出的上下文菜单相关的, 因此它主要用在org.eclipse.ui.popupMenus扩展点下的objectContribution 节点中, 这里有几个属性需要做一下说明:
adaptable:true表示能将选中对象适配为objectClass中指定的类型
nameFilter:这个是用来指定哪种文件类型为当前contribution可用, 比如设置为*.java表示当前action只针对java文件
objectClass:指定contribution只用于那种对象类型
contribution的其他属性跟前面介绍的大同小异
对contribition过滤和可用性的控制
只有当前选中的文件类型是nameFilter指定的类型, 或者选中的对象是objectClass指定的类型,contribution才会在右键菜单中出现,而是否可用则要通过判断选中的对象是否和enablesFor属性中表达式规定的数量, 表达式的定义包括:!表示选中0个, ?表示0个或1个, +表示1个或多个, multiple, 2+两个或多个, n表示具体个数, *表示任意个
objectContribution还提供visibility节点来控制contribution可见性, 它比通过nameFilter 和objectClass控制功能更强, 比如要达到和objectClass="org.eclipse.core.resources.IResource"同样的效果可以这样写:
- <objectContribution ...
- <visibility>
- <objectClass
- name="org.eclipse.core.resources.IResource"/>
- visibility>
- ...the other stuff here...
- objectContribution>
如果当前contribution只用于可写的对象,可以这样写:
- <objectContribution ...>
- <visibility>
- <and>
- <objectClass
- name="org.eclipse.core.resources.IResource"/>
- <objectState name="readOnly" value="false"/>
- and>
- visibility>
- ... the other stuff here ...
- objectContribution>
visibility包括了not, and和or逻辑表达式节点以及adapt等Boolean表达式节点, adapt节点会先将选中对象适配为指定类型然后给其下级节点使用,比如这里:
- <adapt type="org.eclipse.core.resources.IResource">
- <objectState name="readOnly" value="false"/>
- adapt>
首先适配成IResource,然后判断其状态,该节点通常和and操作符结合使用, 如果适配器或者引用的类型没有加载,那么将返回EvaluationResult.NOT_LOADED, 如果指定的类型不存在,将抛出ExpressionException 异常
and节点只有下级子节点表达式都返回true才为true
instanceof节点 只有选中的对象是指定的名称时才为true, 和objectClass不同之处在于,它还可以与其他的元素通过and和or元素一起使用
not节点只有在下级节点返回false才为true
objectClass看上面的例子就知道了
objectState 比较选中的对象的状态是否指定的值
or节点只要下级节点中有一个为true就返回为true
pluginState节点对指定的插件的状态进行检测, 这里的状态有两种:installed或者actived, 比如这样写:
- <pluginState id="org.eclipse.pde" value="installed"/>
表示只有org.eclipse.pde插件安装才可见
systemProperty 举个例子就知道怎么用了
- <systemProperty name="user.language" value="en"/>
systemTest 跟systemProperty大同小异,只不过它可以通过and和or与其他的节点联合使用
test节点举个例子来说吧:
- <test
- property="org.eclipse.debug.ui.projectNature"
- value="org.eclipse.jdt.core.javanature"/>
表示只有选中的是java项目下的对象当前contribution才可见, 如果进行比较的property没有加载,将返回EvaluationResult.NOT_LOADED, 这里指定的进行比较的属性能通过使用org.eclipse.core.expressions.propertyTesters进行扩展,具体的实现可参考org.eclipse.debug.internal.ui.ResourceExtender类
发表评论
-
Java程序员25个必备的Eclipse插件
2012-01-12 22:36 21870原文:http://www.fromdev.com/2012/ ... -
关于插件更新安装的错误
2007-12-21 20:12 2177在更新插件的时候出现这样的错误: Unable to comp ... -
最近做eclipse branding, features的一些经验
2007-12-16 01:24 4461知道eclipse的splash怎么做 ... -
GEF学习笔记
2007-12-07 20:20 4113GEF以前学习过, 而且还 ... -
SWT布局深入学习
2007-11-30 23:00 7897以下内容是学习"The Definitive Gui ... -
Eclipse Action 深入学习笔记(3)
2007-11-25 17:59 4037filter元素是用来指定当 ... -
Eclipse Action 深入学习笔记(1)
2007-11-25 17:07 7615以前做插件用到的ActionSet都只是依葫芦画瓢,没有真正理 ... -
JFace Text Editor完全掌握之终极指南(4)
2007-11-24 17:08 5618错误标识(Error Marking) Error Marki ... -
JFace Text Editor完全掌握之终极指南(3)
2007-11-24 16:56 5450内容大纲 之所以要给编 ... -
JFace Text Editor完全掌握之终极指南(2)
2007-11-24 16:53 6673最后一步就是实现各种功能 语法高亮 首先我们要实现的是语法高亮 ... -
JFace Text Editor完全掌握之终极指南(1)
2007-11-24 16:17 9924JFace Text Editor是JFace里面一个功能强大 ... -
最近的Eclipse plugin开发总结
2007-11-24 11:30 4889List控件没有提供addDblClickListener方法 ... -
eclipse3.3关于JavaFileEditorInput兼容性问题的解决
2007-11-24 11:22 4632在eclipse3.3中,JavaFileEditor ... -
Eclipse WTP Projects Facets实战指南(2)
2007-11-21 21:13 5196修饰工作 给facet在选择列表中添加图标 格式如下: xml ... -
Eclipse WTP Projects Facets实战指南(1)
2007-11-21 20:21 9537这个文章基本是"Building Project F ... -
也说关于WizardPage的动态生成
2007-11-05 14:26 5121在Eclipse中一个Wizard=Wiza ... -
关于多页编辑器中不同Editor之间的Redo&Undo冲突的解决
2007-09-03 15:17 4028在我们的插件工具的开 ... -
TextEditor原理分析笔记
2007-08-23 15:48 3345Editor的语法着色原理:Eclipse使用damage , ... -
最近的Eclipse开发总结
2007-08-23 15:46 2025java.lang.IllegalAccessError: t ... -
如何判断一个eclipse的版本的代码
2007-08-23 15:41 2898java 代码 String version = ...
相关推荐
EclipseAction深入学习笔记.pdf
Eclipse插件开发学习笔记.pdf Eclipse插件开发学习笔记.pdf Eclipse插件开发学习笔记.pdf
《Eclipse插件开发学习笔记》PDF 高清版
Eclipse插件开发学习笔记全书分为4篇共24章+配套全部源码。
Eclipse插件开发 学习笔记 第一篇 开发基础(01-05).rar Eclipse插件开发 学习笔记 第一篇 开发基础(06-10).rar Eclipse插件开发 学习笔记 第二篇 核心技术(11-16).rar Eclipse插件开发 学习笔记 第二篇 核心技术(17-...
Eclipse开发学习笔记。感觉挺好的,就传上来给大家共享
学习笔记\开发学习笔记\插件\Eclipse插件开发学习笔记
Eclipse 插件开发学习笔记.rar
Eclipse插件开发学习笔记.part2 插件学习笔记的代码部分内容
eclipse插件开发学习笔记--经典,很超值。
Eclipse插件开发 学习笔记 第一篇 开发基础(01-05).rar Eclipse插件开发 学习笔记 第一篇 开发基础(06-10).rar Eclipse插件开发 学习笔记 第二篇 核心技术(11-16).rar Eclipse插件开发 学习笔记 第二篇 核心技术(17-...
Eclipse插件开发学习笔记 源代码,适合初学者
eclipse插件开发学习笔记(扫描版15-28章),非常好的学习资源,分享给大家
51CTO下载-Eclipse插件开发学习笔记15-18.rar
《Eclipse插件开发学习笔记》扫描版,共分三个部分
Eclipse插件开发学习笔记 源代码,适合初学者
第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)、透视图(Perspective)等10章的内容;第三篇主要讲述插件开发的高级内容,包括开发高级内容...
资源名称:Eclipse开发学习笔记内容简介:学编程,再也不难了!《Eclipse开发学习笔记》独创:1、化“抽象”为“具体”独创源代码绘图写作方式,化复杂为简单,反璞归真。形象化地拆解高深理论、揭示编程奥秘、点拨...