RCP开发之comand(命令)
2015-08-04 22:26
330 查看
历史
接触RCP开发的时候,对comand与action区别与相似总会感到困惑,这里做个总结。两者其实都是完成同样任务的两种不同API:声明与实现表现为菜单项和工具栏按钮的功能。
Action出现于Eclipse 3.0之前, command在eclipse3.3才刚刚成熟,3.4完成改进。
命令(command)
使用command实现菜单项与工具栏项包括:声明一个命令(UI概念,并无牵涉在哪里出现,对应的功能是什么),至少对应一个菜单的命令项(出现在哪里),以及至少一个用于该命令(触发什么事件)的处理器(handler)。使用命令
扩展org.eclipse. ui.comands 扩展点,声明一个命令如果要添加至菜单项,则扩展org.eclipse.ui.menus,通过locationURI来确定位置,比如添加到顶级菜单项为locationURI=”menu:org.eclipse.ui.main.menu?after=addtion”
添加对应的事件处理器hander,默认的handler最好继承abstractHandler(实现大部分处理器接口)
LocationURI
对于菜单项,工具栏,上下文菜单中重要的属性,确定其在用户界面中出现的位置。该属性可以被分解成三个部分:模式(schema),标识符(identifier)和参数列表(argument list) 比较常用:- menu 程序主菜单或者视图下拉菜单(如 menu:org.eclipse.ui.main.menu Eclipse主菜单的标识符)
- popup 视图或编辑器上下文菜单 (如 menu:org.eclipse.ui.popup.any) 任意上下文菜单的标识符
- toolbar 程序主工具栏或视图中的工具栏 (如menu:org.eclipse.main.toolbar Eclip主工具栏的标识符)
plugin.xml 截图
相关文章推荐
- Linux内存管理--伙伴系统和内存分配器
- (算法)最长递增子序列
- 数论概论 第五章 习题解答(下) (宋二娃的BLOG)
- Android权限详解
- 访问I/O内存和I/O端口设备
- MySQL解压版中文字符问题
- HDU 4357 字符交换位置无数次变成另一个字符串-YY-(神题
- 输入两个非负整数,然后每个数字颠倒顺序,如123颠倒之后就是321,反向求和输出。
- openstack中region、az、host aggregate、cell 概念
- leetcode面试准备:Contains Duplicate I && II
- git服务器的搭建及使用
- 9、C语言和设计模式(抽象工厂模式)
- UI 04 代理设计模式
- linux下各个查找命令
- Android 通过UDP广播建立Socket
- Android 高仿微信实时聊天 基于百度云推送
- Linux ipc------System V概述
- 开发openGL的一些基本配置
- linux内核内存的详细分配
- Elasticsearch使用REST API实现全文检索