- 浏览: 153664 次
- 性别:
- 来自: 北京
-
文章分类
最新评论
-
EclipseEye:
fair_jm 写道不错 蛮详细的 谢谢分享
SWT/JFace专题 --- SWT中Display和多线程 -
fair_jm:
不错 蛮详细的 谢谢分享
SWT/JFace专题 --- SWT中Display和多线程
比如要实现Ctrl+S的Save快捷键时,会出现插件本身的快捷键和自定义的两个快捷键,这样显然不是我们想要的效果。
方案(1)
PS.:这个能屏蔽所有的Binding 包括自定义的,这显然不合适。
方案(2)
采用默认的ContextID:org.eclipse.ui.contexts.window
在plugin.xml中实现:
PS:这就导致了标题中提到的问题,同时有两个快捷键。
方案(3)(有效解决方案)
指定自定义ContextID,只有在该ContextID下快捷键才有效,而非默认的ContextID
在plugin.xml中实现:
同时扩展:
(以Editor下Ctrl+S为例:)
在相应的Editor中
重写起init方法如下:
方案(1)
//屏蔽快捷键 ((IBindingService)PlatformUI.getWorkbench().getAdapter(IBindingService.class)).setKeyFilterEnabled(false);
PS.:这个能屏蔽所有的Binding 包括自定义的,这显然不合适。
方案(2)
采用默认的ContextID:org.eclipse.ui.contexts.window
在plugin.xml中实现:
<extension point="org.eclipse.ui.bindings"> <key commandId="org.xxx.SaveConfigHandler" contextId="org.eclipse.ui.contexts.window" schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" sequence="CTRL+S"> </key> </extension>
PS:这就导致了标题中提到的问题,同时有两个快捷键。
方案(3)(有效解决方案)
指定自定义ContextID,只有在该ContextID下快捷键才有效,而非默认的ContextID
在plugin.xml中实现:
<extension point="org.eclipse.ui.bindings"> <key commandId="org.xxxx.SaveConfigHandler" contextId="MyConfigEditor.Context" schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" sequence="CTRL+S"> </key> </extension>
同时扩展:
<extension point="org.eclipse.ui.contexts"> <context id="MyConfigEditor.Context" name="MyConfigEditor Context" parentId="org.eclipse.ui.contexts.window"> </context> </extension>
(以Editor下Ctrl+S为例:)
在相应的Editor中
重写起init方法如下:
@Override public void init(IEditorSite site, IEditorInput input) throws PartInitException { super.init(site, input); IContextService contextService =(IContextService) getSite().getService(IContextService.class); contextService.activateContext("MyConfigEditor.Context"); }
发表评论
-
再说SWT中的滚动面板ScrolledComposite实现
2013-06-19 15:43 2390记得以前写过一篇关于滚动面板的文章 SWT中 Scrolle ... -
OSGi参考资料
2013-04-18 01:11 713基于 OSGi 的面向服务的组件编程 探索 OSGi 框架的组 ... -
CDT(编辑、调试)参考资料
2013-04-17 02:15 1145CDT编辑器 --------- 构建基于 CDT 的编辑器, ... -
Workspace Resource框架专题(3)处理工作空间资源更改事件
2013-04-17 01:44 14263 处理工作空间资源更改事件 工作空间API允许工具对它 ... -
Workspace Resource框架专题(2)workspace 框架API
2013-04-17 01:27 15302 工作空间API 本� ... -
Workspace Resource框架专题(1)Resource的概念
2013-04-17 01:12 14431 Resource的概念 如 ... -
如何恢复断点及Marker
2013-03-05 00:41 0如何恢复断点及Marker -
深入Workbench框架
2013-03-01 02:10 1800深入Workbench框架(结合UIPersistent) 1 ... -
Eclipse插件开发中的Action
2013-02-24 23:10 2056插入点用来定义菜单出� ... -
Eclipse开发中编辑器(Editors)和视图(View)总结
2013-02-24 22:58 29661.视图(Views) 视图( ... -
SWT/JFace专题 --- 对话框向导(Dialogs Wizards)
2013-02-24 22:42 2307对话框向导(Dialogs Wizar ... -
SWT/JFace专题 --- JFace
2013-02-24 22:37 1729JFace JFace是基于SWT的一套图形工具包,它没有为 ... -
SWT/JFace专题 --- SWT中Display和多线程
2013-02-24 15:25 3309Display 1.Display 的创建 一个SWT程序 ... -
SWT/JFace专题 --- SWT API 结构
2013-02-23 18:31 1121SWT API 结构 1.布局类(l ... -
Eclipse启动过程(源码级剖析)
2013-02-20 03:24 3465双击eclipse安装目录下的eclipse.exe运行后,会 ... -
SWT/JFace专题 --- SWT结构浅析
2013-02-23 17:02 1061SWT技术是一套基于Java的 ... -
Eclipse平台体系结构
2013-02-21 23:56 20031.Eclipse平台体系结构 1� ... -
RCP平台架构
2013-02-23 14:11 1533RCP 富客户端通常是指具有独立用户界面的客户端程序。富客户 ... -
Ant构建脚本相关
2013-02-18 01:26 0Ant构建脚本相关 -
CDT源码架构研究
2013-02-18 01:24 0CDT源码架构研究
相关推荐
Eclipse插件开发是扩展其功能和定制工作环境的关键技术。本文将深入探讨Eclipse插件开发的相关知识点,结合提供的"全书分为4篇共24章"的学习笔记和源码,帮助你更全面地理解和实践Eclipse插件开发。 第一篇:基础篇...
Eclipse插件开发是Java开发领域中的一个重要分支,它允许开发者通过扩展Eclipse IDE的功能来创建自定义的工作环境。这份“Eclipse插件开发笔记源码”提供了丰富的学习材料,帮助开发者深入理解并实践Eclipse插件开发...
Eclipse RCP(Rich Client Platform)和插件系统是Java开发人员构建强大、自定义桌面应用的首选工具。以下是关于这个主题的详细知识点: 1. **Eclipse插件体系结构**: - 插件是Eclipse平台的核心组成部分,它们...
1. **组件模型**:Eclipse RCP基于插件(plugin)体系结构,每个功能模块都可以作为一个独立的插件实现,这使得系统具有高度的可扩展性和可维护性。 2. **工作台(Workbench)**:Eclipse RCP的核心是工作台,它...
6. **命令与快捷键**:Eclipse RCP提供了命令框架,允许自定义用户操作,如菜单项和快捷键。例子程序会展示如何定义、注册和绑定这些命令。 7. **服务(Service)**:Eclipse RCP支持服务导向的架构,通过服务,...
Eclipse插件开发是构建自定义工具、扩展编辑器、视图、透视图等核心功能的重要方式。本教程旨在逐步指导初学者进行Eclipse插件的开发,通过实例演示如何利用Eclipse平台的API和扩展点来实现各种功能。 首先,我们要...
4. **实现功能**:根据需求,我们可以创建新的Java类来实现插件的具体功能,比如自定义视图、编辑器、透视图、命令、快捷键等。 5. **运行与调试**:Eclipse提供了内置的插件运行时环境,可以在不离开IDE的情况下...
Eclipse插件开发是Java开发领域中的一个重要分支,它允许开发者扩展Eclipse集成开发环境(IDE)的功能,创建自定义工具、编辑器和视图,以满足特定的开发需求。本压缩包包含三份学习资料,分别是第19章“插件开发...
### Eclipse 3.6 RCP 开发知识点概览 #### 1. 富客户端平台 (RCP) 概述 **1.1 概述** - **定义**: Eclipse Rich Client Platform (RCP) 是一种基于Java的技术框架,用于构建可扩展的桌面应用程序。 - **特点**: ...
1. **平台概述**:Eclipse RCP是一个基于插件的框架,它提供了用户界面、事件处理、国际化和本地化、数据存储等核心功能,让开发者可以专注于业务逻辑的实现,而非底层架构的搭建。 2. **插件系统**:Eclipse RCP的...
Eclipse Rich Client Platform (RCP) 是一个用于构建桌面应用程序的框架,它基于 Eclipse IDE 平台,允许开发者利用 Eclipse 的强大功能和丰富的插件系统来创建自定义的、可扩展的应用程序。Eclipse RCP 的核心理念...
Eclipse 插件开发是Java开发者深入理解和扩展Eclipse...同时,这也是提升Eclipse定制能力和解决实际问题能力的有效途径。对于想要成为Eclipse开发专家或者希望优化Eclipse使用体验的开发者来说,这是一份宝贵的资源。
4. 测试插件:使用Eclipse的运行配置,选择“Plug-in Debugging”模式启动一个新的Eclipse实例,测试插件功能。 四、Eclipse插件关键组件 1. 视图(View):显示特定信息或提供操作界面,例如控制台视图、问题视图...
【Eclipse RCP 插件开发自学教程 (Eclipse3.6)】 Eclipse RCP (Rich Client Platform) 是一个框架,允许开发者构建高度可定制和可扩展的桌面应用程序。本教程是针对Eclipse 3.6版本的,提供了一个详细的学习路径,...
Eclipse RCP,全称Eclipse Rich Client Platform...以上内容涵盖了Eclipse RCP插件开发的基本概念和实践,通过这些章节的学习,开发者能够构建功能丰富的桌面应用程序,并具备对Eclipse RCP平台的深入理解和应用能力。
### Eclipse-4-RCP教程详解 #### 一、Eclipse RCP 应用程序简介 Eclipse RCP(Rich Client Platform)是一种利用Eclipse平台技术构建独立应用的方式。本教程将交替使用“基于Eclipse的应用”、“Eclipse应用”、...
在《Eclipse+RCP入门》资料中,你可能会学习到如何创建基本的RCP项目、定义视图和编辑器、实现命令和快捷键、使用透视图组织界面、以及如何通过插件扩展功能。此外,还会涉及Eclipse插件开发环境(PDE,Plug-in ...
Eclipse RCP(Rich Client Platform)是一个开源框架,用于构建功能丰富的桌面应用程序。它基于Java,利用了Eclipse IDE的强大功能,提供了插件化架构,允许开发者构建可扩展且模块化的应用。本压缩包包含了一个...
Eclipse 插件实例01是一个基于Eclipse RCP(Rich Client Platform)开发的应用程序,展示了如何在Eclipse环境中创建和使用自定义插件。Eclipse RCP是Eclipse IDE的核心组成部分,它允许开发者构建功能丰富的桌面应用...