1. Application.java
通过扩展: org.eclipse.core.runtime.applications
<extension
id="application"
point="org.eclipse.core.runtime.applications">
<application>
<run
class="org.talend.rcp.intro.Application">
</run>
</application>
</extension>
应用程序入口类,负责启动和关闭RCP
2. ApplicationWorkbenchAdvisor.java
负责workbench的初始化,管理workbench的生命周期
ApplicationWorkbenchWindowAdvisor的实例化是在
createWorkbenchWindowAdvisor(IWorkbenchWindowConfigurer configurer)
进行的
public String getInitialWindowPerspectiveId() {
return PERSPECTIVE_ID;
}
界面初始化的透视图
3. ApplicationWorkbenchWindowAdvisor.java
负责WorkbenWindow的生命周期的管理,及其其上的所有的控件。
public ActionBarAdvisor createActionBarAdvisor(IActionBarConfigurer configurer) {
return new ApplicationActionBarAdvisor(configurer);
}
实例化ApplicationActionBarAdvisor对象
RepositoryContext repositoryContext = (RepositoryContext) CorePlugin.getContext().getProperty(
Context.REPOSITORY_CONTEXT_KEY);
Project project = repositoryContext.getProject();</span>
不明白repositoryContext是如何取得的?
Object buildId = Activator.getDefault().getBundle().getHeaders().get(org.osgi.framework.Constants.BUNDLE_VERSION);
其中
org.osgi.framework.Constants
说明部分:
Defines standard names for the OSGi environment system properties, service properties, and Manifest
header attribute keys.
The values associated with these keys are of type String, unless otherwise indicated.
定义了OSGI环境系统属性,服务属性以及Manifest文件里面header相对应的关键字;这些声明的标准名称,除非特别声明,否则他们对应的值都是String类型的。
小结:
1. 负责Window上面title的显示,尺寸,CoolBar,StatusLine的显示
2. 可以创建一个ApplicationActionBarAdvisor的对象
4. ApplicationActionBarAdvisor.java
负责管理MenuBar,CoolBar以及StatusLine.具体可参考父类:ActionBarAdvisor
5. Perspective.java
通过扩展:org.eclipse.ui.perspectives
<extension
point="org.eclipse.ui.perspectives">
<perspective
class="org.talend.rcp.intro.Perspective"
id="org.talend.rcp.perspective"
name="%perspective.talend">
</perspective>
</extension>
透视图布局的具体实现。
6. Actions
1). PerspectiveMenuManager.java
继承于:MenuManager.java
在ApplicationActionBarAdvisor.java中用到,显示为Menu--> Windows--->Perspective
负责在 Talend 和 eclipse debug两种透视图之间相互切换。
2). ChangePerspectiveAction.java
继承于 Action.java,是perspective相互切换的触发按钮,当被触发时,显示对应的perspective。
在PerspectiveMenuManager使用。
3). ShowViewAction.java
继承于 Action.java,在ApplicationActionBarAdvisor.java中用到,显示为Menu--> Windows--->Show &view...
目前不可用
4). SwitchProjectAction.java
继承于 Action.java,在ApplicationActionBarAdvisor.java中用到,显示为Menu--> File --->Switch &Project...
切换talend的项目。
5). OpenStudioAction.java
继承于 Action.java, 目前没找到它被使用的地方。