RCP详细教程

简单RCP框架源分析

关键: RCP框架

在我新建一个RCP用程序框架eclipse生成若干个

网上也有很多“Hello RCP”的分析明,但都聚集在功能分析,没有源代的分析。下面着重分析一下其中的某些不易理解的以及其中及到的其它的源代

  1. Application: 是RCP用程序的入口点,你可以把它想象成程序的控制器,似于Model2架构中的控制器。它很短,而且在不同的目中化不大;它所做的就是建 一个工作台Workbench,同将其于一个WorkbenchAdvisor系起来。WorkbenchRCP框架的一部分,一个RCP对应 一个Workbench,但一个     Workbench可以有多个Workbench窗口。
  2. ApplicationWorkbenchAdvisor承了WorkbenchAdvisor,提供了两个方法,其中createWorkbenchWindowAdvisor方法将建窗口的工作交ApplicationWorkbenchWindowAdvisor
  3. WorkbenchAdvisor该类不是一个接口,而是一个抽象,它不包含任何的功能实现,因将来很有可能在其中添加其它方法。Eclipse设计希望RCP用都实现 它,由平台来用。WorkbenchWorkbench Window生命周期中的有一些重要事件,些事件在WorkbenchAdvisor中都 有相的方法,Platform些方法从而行你的定制代

1. WorkbenchAdvisor提供的事件理方法

方法

描述

参数

initialize

第一个被用,用来初始化,比如解析命令行,注册适配器,声明像等。

IWorkbenchConfigurer

preStartup

在初始化束,但是在第一个窗口打用。可以被用来置一些选项来影响初始打编辑器和视图

 

postStartup

在所有窗口已被打或恢后,但是在事件循环开始前用。它可以被用来启动处理器,打提示或其他窗口。

 

preShutdown

 在事件循环结束后,但在任何窗口被关闭用。

 

postShutdown

关闭Workbench程中,所有窗口被关闭用。它可以被用来存当前的用状和清理任何由initialize建的西。

 

 

2. WorkbenchAdvisor提供的事件循环钩

方法

描述

参数

eventLoopException

在事件循中如果有未检测的异常则调方法。默实现记录错误信息。

Throwable

eventLoopIdle

时间环时也不做时调

Display

 

 

3. WorkbenchAdvisor提供的信息取方法,你可以在子中覆盖

方法

描述

参数

getDefaultPageInput

返回新的Workbench面的缺省入,缺省null

 

getInitialWindowPerspectiveId

返回新建的Workbench Window的初始透视图个方法必提供。

 

getMainPreferencePageId

返回第一个示的首参数。缺省null意味着首参数按字母序排序。

 

    上面的WorkbenchAdvisor事件大多数用来是足了,但是在某些情况,RCP又提供了两个方法来控制你的用窗口和控件如何被建。它被列在表4,但是我得很多程序不需要用到些。

4. WorkbenchAdvisor提供的高方法

方法

描述

参数

openWindows

在启动时所有Workbench Window。缺省实现会恢前面存Workbench

 


其它的方法在eclipse3.1后都被覆盖了。

  1. ApplicationWorkbenchWindowAdvisor:用来控制状态栏,工具标题和窗口的大小等。但它将建工具的任ApplicationActionBarAdvisor
  2. WorkbenchWindowAdvisor查阅Javadoc文档可知,它是配置workbench窗口的公共基。当窗口被该类就会被建,用来配置窗口。户应该继该类并覆盖其中的某些方法来足特定的需求。

5. WorkbenchWindowAdvisor提供的生命事件点

方法

描述

参数

preWindowOpen

Workbench Window的构造器中用。可以使用个方法来指定窗口是否有菜单栏。然而,窗口的widget没有建,因此在个方法中不能引用它

 

postWindowRestore

当一个窗口从保存的状复时,但在打前,被用。

 

postWindowCreate

 在窗口从保存状,或从scratch建后,但在打前,被用。

 

openIntro

在窗口打前一刻被用,它用来introduction件(如果有的)。

 

postWindowOpen

接着Workbench Window被打用。它被用来装窗口的widget,例如标题或修改它的大小。

 

preWindowShellClose

Workbench Window关闭用(从技上来,是在它的shell关闭前)。是唯一能够终关闭动作的方法,所以,它可以用来你确定这样对话框。

 

postWindowClose

Workbench Window关闭用。它被用来清理任何由preWindowOpen建的源。

 

5. WorkbenchWindowAdvisor提供高方法

方法

描述

参数

createWindowContents

建窗口的内容,覆盖方法来定自己的内容和布局。

Shell

createEmptyWindowContents

用来建空面的窗口,覆盖方法来改窗口背景

Composite

  1. IWorkbenchWindowConfigurer接 口:配置workbench窗口提供了专门的方法,Window configurer和要配置的workbench是一对应的,用可以用get/set方法将任意状window configurer注意只供主用程序使用,接口不能被实现
  2. ApplicationActionBarAdvisor承了ActionBarAdvisor
  3. ActionBarAdvisor:是配置工作台窗口action bars的公用基。用户应该继该类并覆盖其中的某些方法来足特定的需求。

7. ActionBarAdvisor提供的可以覆盖的方法

方法

描述

<p cla
分享到:
评论

你可能感兴趣的:(eclipse,工作,框架)