`
snoopy7713
  • 浏览: 1140241 次
  • 性别: Icon_minigender_2
  • 来自: 火星郊区
博客专栏
Group-logo
OSGi
浏览量:0
社区版块
存档分类
最新评论

Eclipse rcp/rap 开发经验总结(13) -Rap/Rcp保存按钮处理方式

    博客分类:
  • RAP
阅读更多

一、概述

在做项目的过程中,处理编辑区的保存机制的时候。发现,同样是扩展eclipse 自带的保存和全部保存按钮时              候,rcp 工程下,保存按钮可以正常的灰显和可用,但是rap 的按钮就是始终呈现灰显的状态,无论编辑区是否有变化。为了解决这个问题,经过研究在rap 上做了以下处理,问题得以解决。

二、rap 保存按钮显示的处理

在项目中保存按钮和全部保存按钮是通过扩展点的方式加载的,而且这个扩展点是eclipse 自身带有的扩展点,可以直接调用,并且调用这个保存扩展点,可以直接拥有和eclipse 编辑区类似的功能操作

扩展点的添加方式:

1 、保存的commandId 直接扩展:org.eclipse.ui.file.save

2 、全部保存的commandId 扩展:org.eclipse.ui.file.saveAll

这样保存和全部保存添加上了。

处理rap 下保存按钮可用的处理逻辑和代码如下,处理了类 ApplicationActionBarAdvisor 中的相关方法

 

处理之前的类:

 

Java代码  收藏代码
  1. public   class  ApplicationActionBarAdvisor  extends  ActionBarAdvisor {  
  2.     public  ApplicationActionBarAdvisor(IActionBarConfigurer configurer) {  
  3.         super (configurer);  
  4.     }  
  5.   
  6.     protected   void  makeActions(IWorkbenchWindow window) {  
  7.     }  
  8.   
  9.     protected   void  fillMenuBar(IMenuManager menuBar) {  
  10.     }  
  11. }  

 

ApplicationActionBarAdvisor 这个类中,在 makeActions (IWorkbenchWindow window) 方法中将按钮注册进去就可以了。

 

处理之后的类:

 

Java代码  收藏代码
  1. /**  
  2.  *   
  3.  * 工具按钮等相关功能注册  
  4.  *   
  5.  */   
  6. public   class  ApplicationActionBarAdvisor  extends  ActionBarAdvisor  
  7. {  
  8.     public  ApplicationActionBarAdvisor(IActionBarConfigurer configurer){  
  9.         super (configurer);  
  10.     }  
  11.       
  12.     /**  
  13.      * 工具栏保存、全部保存按钮注册  
  14.      */   
  15. protected   void  makeActions(IWorkbenchWindow window) {  
  16.     //保存、全部保存按钮的注册   
  17.         register(ActionFactory.SAVE.create(window));  
  18.         register(ActionFactory.SAVE_ALL.create(window));  
  19.         //历史记录回退、重做按钮的注册。   
  20.         register(ActionFactory.UNDO.create(window));  
  21.         register(ActionFactory.REDO.create(window));  
  22.     }  
  23.       
  24.     protected   void  fillMenuBar(IMenuManager menuBar) {  
  25.     }  

分享到:
评论

相关推荐

    eclipse-rcp-2022-06-R-linux-gtk-x86_64.tar.gz

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-linux-gtk-x86_64.tar.gz) 适用于Linux x86_64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    eclipse-rcp-2022-06-R-win32-x86_64.zip

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-win32-x86_64.zip) 适用于Windows x86_64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    eclipse-rcp-2022-06-R-macosx-cocoa-x86_64.dmg

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-macosx-cocoa-x86_64.dmg) 适用于macOS x86_64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    eclipse-rcp-2022-06-R-linux-gtk-aarch64.tar.gz

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-linux-gtk-aarch64.tar.gz) 适用于Linux aarch64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    eclipse-rcp-2022-06-R-macosx-cocoa-aarch64.dmg

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-macosx-cocoa-aarch64.dmg) 适用于macOS aarch64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    eclipse-rcp-2022-06-R-linux-gtk-x86_64.tar

    该压缩包 "eclipse-rcp-2022-06-R-linux-x86_64" 中包含的主要文件是 "eclipse-rcp-2022-06-R-linux-x86_64",这可能是一个可执行的Eclipse IDE实例,用于在Linux系统上支持RCP和RAP的开发。为了运行这个IDE,你需要...

    eclipse-jee-2018-09-win32-x86_64.zip

    8. **RCP和RAP框架**:Eclipse Rich Client Platform (RCP) 和 Rich Ajax Platform (RAP)允许开发人员构建自己的桌面应用程序和Web应用,2018-09版本可能包含相关更新和改进。 9. **持续集成**:Eclipse与Jenkins、...

    通过例子学习EclipseRCP开发

    1. 安装Eclipse IDE:首先,你需要下载并安装Eclipse IDE for RCP and RAP Developers版本,这个版本包含了开发RCP应用所需的所有工具。 2. 创建新项目:在Eclipse中,选择“File” -> “New” -> “Project”,然后...

    菜鸟EclipseRCP学习之路

    1. 安装Eclipse IDE for RCP and RAP Developers版本,这是一个专门为RCP开发定制的集成开发环境。 2. 创建一个新的Eclipse RCP项目,选择适当的模板,如“Basic”或“Feature-Based”。 3. 配置项目的运行时环境,...

    Eclipse RCP开发SDK_3.6.2.rar

    3. **服务(Services)**:Eclipse RCP提供了一套全面的服务,如国际化服务、首选项服务、事件服务等,这些服务帮助开发者处理常见的任务,使他们能专注于业务逻辑。 4. **工作台(Workbench)**:工作台是RCP应用的...

    eclipse 2020-06 国际化资源包

    Eclipse IDE for RCP and RAP Developers (includes Incubating components) Version: 2020-06 (4.16.0) Build id: 20200615-1200

    Eclipse RCP 初级入门教程

    要开始RCP开发,首先需要安装Eclipse IDE,然后安装Eclipse RCP和RAP开发工具(PDE)。这些工具提供了一整套用于创建、调试和部署RCP应用的工具集。 **4. 创建第一个RCP应用** 在Eclipse中,通过“新建 -> 项目 -> ...

    Instant Eclipse 4 RCP Development How-to.pdf

    《即时Eclipse 4 RCP开发指南》这本书详细介绍了如何使用Eclipse 4来创建富客户端应用程序(Rich Client Platform,简称RCP),它是一本实践操作指南,包含了超过10个实用的配方。Eclipse 4 RCP是Eclipse平台中用于...

    RCP工程转成RAP,并在浏览器中运行

    RCP和RAP都是Eclipse基金会开发的框架,前者用于构建桌面应用程序,后者则用于构建Web应用程序。 1. **RCP与RAP的区别** RCP和RAP在结构上非常相似,主要区别在于运行环境和用户交互方式。RCP是桌面应用框架,依赖...

    eclipse-rcp-galileo-SR2-win32.zip

    Eclipse For RCP and RAP Developers开发包主要针对开发Eclipse插件,Eclipse RCP(富客户端应用程序),RAP(富客户端ajax应用程序)的程序员,还包含CVS、Mylyn和xml编辑器,EGit分布式版本控制等插件。...

    Eclipse RAP Deploy - 针对Eclipse 3.5 + Tomcat

    这通常包括安装Eclipse RAP插件,如RCP和RAP Developer Tools。这些插件提供了项目模板、构建配置和调试工具,帮助我们更轻松地构建和测试RAP应用。 接下来,我们要准备Tomcat服务器。Tomcat是一个流行的开源...

    eclipse rcp 客户端MySQL连接

    1. Eclipse IDE for RCP and RAP Developers:这是开发Eclipse RCP应用程序的基础。 2. MySQL Connector/J:这是MySQL的Java驱动,用于Java应用程序通过JDBC连接到MySQL数据库。 **步骤一:添加MySQL JDBC驱动** 在...

    eclipse rap教程

    - **安装Eclipse IDE**:首先,你需要安装支持RAP开发的Eclipse版本,如Eclipse for RCP and RAP Developers。 - **安装RAP SDK**:通过Eclipse的软件更新站点添加RAP的SDK。 - **创建新项目**:使用RAP模板创建...

    RCP+Plug-in开发自学教程_RCP+Plug-in开发自学教程_源码

    1. **环境搭建**:安装Eclipse IDE for RCP and RAP Developers,获取必要的RCP开发工具集。 2. **创建新项目**:通过New -> Project -> Plug-in Project,创建一个新的Plug-in项目。 3. **编写代码**:在项目的src...

    Eclipse RCP入门

    要开始Eclipse RCP开发,你需要安装Eclipse IDE for RCP and RAP Developers。这个版本的Eclipse包含了创建、调试RCP应用所需的工具和库。通过新建“Plug-in Project”或“RCP Application”项目,可以启动一个新的...

Global site tag (gtag.js) - Google Analytics