org.eclipse.ui.menus扩展点学习
Eclipse菜单:
menu:help?after=addtions
menu:navigate?after=open.ext2
menu:window?after=newEditor
menu:file?after=open.ext
org.eclipse.ui.menus属性
- locationURI ---------- 标识用户界面中与该菜单项关联的命令将要出现的位置。
locationURI="[scheme]:[identifier]?[argument-list]"
locationURI属性被分解为三个清晰的部分:模式(scheme)、标识符(identifier)和参数列表(argument list)
scheme标识添加项将要添加至的UI对象的类型。它可以是以下值的其中这一:
- menu———程序主菜单或视图下拉菜单
- popup———视图或编辑器的上下文菜单
- toolbar———程序主工具栏或视图中的工具栏
identifier定义了将要添加至的菜单、弹出项或工具栏的唯一标识符。一些常用的标识符包括:
- org.eclipse.ui.main.menu———Eclipse主菜单的标识符
- org.eclipse.ui.main.toolbar———Eclipse主工具栏的标识符
- org.eclipse.ui.popup.any———任意上下文菜单的标识符。
agrument list。参数列表由可以是"before"或"after"的布局,一个等号(“=”),以及菜单 、弹出项或工具栏的一些项的标识符组成。标识符也可以是“additions”,表示元素应当被放置于给定菜单、弹出项或工具栏的默认位置 ("="等号后面可以接着一个acitonID,这样子就布局到这个action的后面,实现分组布局)。
实例
<extension
point="org.eclipse.ui.menus">
<menuContribution
allPopups="false"
locationURI="toolbar:org.eclipse.ui.main.toolbar?after=additions">
<toolbar
id="cn.com.agree.ide.afa.navigation.saveToolbar">
<command
commandId="org.eclipse.ui.file.save"
icon="icons/save_edit.gif"
label="Save"
style="push"
tooltip="Save">
</command>
<command
commandId="org.eclipse.ui.file.saveAll"
icon="icons/saveall_edit.gif"
label="Save All"
style="push"
tooltip="Save All">
</command>
</toolbar>
</menuContribution>
<menuContribution
allPopups="false"
locationURI="toolbar:org.eclipse.ui.main.toolbar?after=cn.com.agree.ide.afa.navigation.saveToolbar">
<toolbar
id="cn.com.agree.ide.afa.workbench.searchToolbar">
<command
commandId="org.eclipse.search.ui.openSearchDialog"
icon="icons/search.gif"
label="Search"
style="pulldown"
tooltip="Search">
</command>
</toolbar>
</menuContribution>
<menuContribution
allPopups="true"
locationURI="menu:org.eclipse.search.ui.openSearchDialog">
<command
commandId="org.eclipse.search.ui.openFileSearchPage"
icon="icons/search.gif"
label="File Search"
style="push"
tooltip="File Search">
</command>
</menuContribution>
红色代码是较好的org.eclipse.ui.menus应用实例,效果图如下

快捷键
M1--------Ctrl
M2--------Shift
M3--------Alt
org.eclipse.ui.actionSets扩展点
toolbarPath指定工具栏中此操作的位置,以'/'定界路径,第一个标记表示工具栏标识(Normal表示是缺省的工具栏),第二个标记为工具栏内的命名组(也可以是工具栏上的separator,这样就能实现和org.eclipse.ui.menus整合布局),若不存在改组,则会创建。省略该选项,action将不会出现在工具栏。
org.eclipse.ui.menus扩展点学习的更多相关文章
- 百度mobile UI组件GMU demo学习1-结构和初始化
移动web现在已经是zepto的天下,但是一直找不到合适UI库,找了一段时间,终于找到了百度的ui库gum和inter 的 appframework UI库 相比之下,百度的UI库更接地气,配合百度强 ...
- rcp(插件开发)org.eclipse.ui.decorators 使用
org.eclipse.ui.decorators这个扩展点可以为对应的节点添加不同的图标显示. 使用方式都差不多,以下就转载一下使用方式: 1.添加扩展点 org.eclipse.ui.decora ...
- JFace dailog button事件中刷新透视图异常 Trying to execute the disabled command org.eclipse.ui.window.closePerspective
报错的代码为 protected void buttonPressed(int buttonId) { Display.getDefault().syncExec(new Runnable() { p ...
- Application "org.eclipse.ui.ide.workbench" could not be found in the registry.问题的解决
今天升级Eclipse,升级完Restart,碰到启动不了让看日志,日志里主要错误信息即是Application "org.eclipse.ui.ide.workbench" co ...
- How to set font and colors of Eclipse UI
The original URL of this article is https://codeyarns.com/2014/11/03/how-to-set-font-and-font-size-o ...
- FireFox 浏览器插件/扩展开发学习
2014-11-08 内容存档在evernote,笔记名"FireFox 浏览器插件/扩展开发学习"
- Siki_Unity_2-3_UGUI_Unity4.6 UI Beta版本入门学习(未学)
Unity 2-3 UGUI Unity4.6 UI Beta版本入门学习(未学)
- eclipse插件本地扩展安装
(1)在Eclipse 安装路径下新建links 路径. (2) 在links 文件夹内,建立X X X .link 文件,该文件的文件名可随意,但后缀必须是link ,通常推荐该文件的文件名与插件名 ...
- DirectX 9 UI三种设计学习笔记:文章4章Introducing DirectInput+文章5章Wrapping Direct3D
本文从哈利_创.转载请注明出处.有问题欢迎联系本人! 邮箱:2024958085@qq.com 上一期的地址: DX 9 UI设计学习笔记之二 第4章 Introducin ...
随机推荐
- Spring4学习笔记 - SpEL表达式
- 04Mybatis_搭建Mybatis的开发环境
第一步:导jia包: 1.导入Mybatis的核心jia包:
- window7安装git详解
1.Git详细介绍 一.Git的诞生 Linus虽然创建了Linux,但Linux的壮大是靠全世界热心的志愿者参与的,这么多人在世界各地为Linux编写代码,那Linux的代码是如何管理的呢? 事实是 ...
- 由Vue引发的getter和setter思考
公司的新项目决定使用Vue.js来做,当我打印出Vue实例下的data对象里的属性时,发现了一个有趣的事情: 它的每个属性都有两个相对应的get和set方法,我觉的这是多此一举的,于是去网上查了查Vu ...
- 为Sharepoint 2010 批量创建SharePoint测试用户
无意搜到下面一篇文章,http://www.cnblogs.com/lambertqin/archive/2012/04/19/2457372.html,原作者写的太"高大上",可 ...
- 解决ReSharper自动删除换行
使用Devexpress+ReSharper进行开发,似乎是C/S开发的最佳搭配. 但在ReSharper使用时,发现一个非常烦人的问题:即按F5进行调试时,自动删除换行,这样不仅把代码搞乱了,而且有 ...
- AdaBoost
一直想写Adaboost来着,但迟迟未能动笔.其算法思想虽然简单"听取多人意见,最后综合决策",但一般书上对其算法的流程描述实在是过于晦涩.昨日11月1日下午,邹博在我组织的机器学 ...
- nodejs get/request
灌水评论示例: var http = require('http'); var querystring = require('querystring'); var postData = queryst ...
- 1.5 基础知识——GP2.3 提供资源(Resources) 与 GP2.4 分配职责(Responisbility)
摘要: 没有资源和落实权责,将无法做好事情,这是很多公司很多人都懂的道理.但很多做CMMI改进的公司,号称很多核心人员负责过程改进,其实是兼职挂牌而已,有些甚至招聘应届生作为过程改进的主力…… 如此这 ...
- Java中用内存映射处理大文件
在处理大文件时,如果利用普通的FileInputStream 或者FileOutputStream 抑或RandomAccessFile 来进行频繁的读写操作,都将导致进程因频繁读写外存而降低速度.如 ...