内容简介
第Ⅰ部分 简介
第1章 作为富客户端平台的Eclipse
1.1 Eclipse
1.2 Eclipse富客户端平台
1.3 Eclipse RCP的历史
1.4 RCP的用途
1.4.1 IBM Lotus和Eclipse RCP
1.4.2 NASA和Eclipse RCP
1.5 小结
1.6 相关信息提示
第2章 Eclipse RCP的概念
2.1 插件社区
2.2 内部插件
2.3 系统集成
2.4 OSGi框架
2.5 Equinox
2.5.1 应用程序
2.5.2 产品
2.5.3 扩展注册表
2.6 标准部分工具包(SWT)
2.7 JFace
2.8 UI Workbench
2.8.1 基于共享的可扩展性
2.8.2 透视图、视图和编辑器
2.9 小结
2.10 相关信息提示
第Ⅱ部分 通过范例学习RCP
第3章 教程入门
3.1 Hyperbola是什么
3.2 Hyperbola的演变
3.3 开发环境的安装
3.4 范例代码
3.4.1 在各章之间移动
3.4.2 比较
3.5 目标平台设置
3.5.1 预定义目标
3.5.2 定义目标平台
3.6 通过范例学习
3.7 小结
3.8 相关信息提示
第4章 Hyperbola应用程序
4.1 Hyperbola的“Hello,World”
4.2 浏览源代码
4.2.1 应用程序
4.2.2 WorkbenchAdvisor
4.2.3 透视图
4.2.4 WorkbenchWindowAdvisor
4.2.5 ActionBarAdvisor
4.2.6 小结
4.3 运行和调试
4.3.1 调试
4.3.2 启动配置
4.4 小结
4.5 相关信息提示
第5章 启动Hyperbola原型
5.1 从shell继续
5.2 添加联系人视图
5.3 聊天模型
5.4 填充联系人视图
5.4.1 ContactsView
5.4.2 容提供程序概述
5.4.3 标签提供程序
5.5 添加图像
5.6 小结
5.7 相关信息提示
第6章 添加动作
6.1 添加到菜单和工具栏
6.1.1 创建一个顶级菜单
6.1.2 菜单管理器
6.1.3 Add Contact动作
6.1.4 添加Add Contact动作
6.1.5 可自定义的工具栏
6.2 添加到状态栏
6.3 系统托盘集成
6.3.1 获得Display
6.3.2 创建托盘项目
6.4 小结
6.5 相关信息提示
第7章 添加聊天编辑器
7.1 视图和编辑器
7.2 定义聊天编辑器
7.2.1 编辑器输入
7.2.2 聊天动作
7.3 检查点
7.4 小结
7.5 相关信息提示
第8章 Hyperbola品牌化
8.1 定义Hyperbola产品
8.2 窗口图像
8.3 自定义启动程序
8.4 启动画面
8.5 About信息
8.5.1 产品的About信息
8.5.2 安装详情的About信息
8.6 小结
8.7 相关信息提示
第9章 打包Hyperbola
9.1 导出Hyperbola
9.2 为其他平台导出
9.3 小结
9.4 相关信息提示
第10章 消息支持
10.1 集成第三方库
10.1.1 Smack库的绑定
10.1.2 测试绑定
10.2 重构模型
10.2.1 Smack介绍
10.2.2 设计目标
10.2.3 删除原型类
10.2.4 添加聊天
10.3 用户界面更新
10.3.1 内容提供程序
10.3.2 标签提供程序
10.4 和eliza聊天
10.5 小结
10.6 相关信息提示
第11章 添加登录对话框
11.1 添加登录对话框
11.2 记住登录设置
11.2.1 基础知识
11.2.2 使用Preferences
11.2.3 安全储存Preferences
11.3 添加自动登录Preferences
11.3.1 创建一个Preferences页面
11.3.2 添加动作
11.3.3 访问Preferences
11.3.4 Preferences默认值
11.3.5 登录对话框中的Preferences
11.4 小结
11.5 相关信息提示
第12章 添加快捷键绑定
12.1 定义命令
12.2 检查点
12.3 添加Workbench动作的键绑定
12.4 键方案
12.5 键Preferences页面
12.6 小结
12.7 相关信息提示
第13章 添加帮助
13.1 添加到目标平台
13.1.1 获得插件
13.1.2 添加插件
13.2 配置帮助插件
13.3 添加Help动作
13.4 添加帮助内容
13.5 Help内容结构
13.6 Infopops或F1帮助
13.7 导出有Help的插件
13.8 小结
13.9 相关信息提示
第14章 添加软件管理
14.1 获得P2
14.2 功能
14.2.1 功能的用途
14.2.2 什么是功能?
14.3 定义功能
14.4 品牌功能
14.5 更新Hyperbola
14.6 自定义P2用户界面
14.7 定义类别
14.8 自动更新
14.9 小结
14.10 相关信息提示
第Ⅲ部分 Workbench
第15章 Workbench顾问
15.1 Workbench顾问
15.2 WorkbenchAdvisor
15.2.1 生命周期API
15.2.2 异常和空闲API
15.2.3 配置API
15.3 WorkbenchwindowAdvisor
15.4 ActionBarAdvisor
15.5 Workbench概述
15.5.1 Workbench扩展点参考
15.5.2 动作
15.5.3 可扩展性
15.5.4 共享
15.5.5 透视图
15.5.6 启动
15.6 小结
15.7 相关信息提示
第16章 透视图、视图和编辑器
16.1 透视图
16.1.1 添加透视图
16.1.2 添加Debug透视图和Console视图
16.1.3 IPageLayout参考
16.1.4 透视图栏
16.1.5 透视图菜单
16.1.6 可编程透视图控制
16.2 视图和编辑器
16.2.1 同一视图的多个实例
16.2.2 粘性视图
16.2.3 显示共享视图
16.2.4 视图注册表
16.2.5 将各部件连接在一起
16.3 多个Workbench窗口
16.4 在编辑器中拖放
16.5 小结
16.6 相关信息提示
第17章 动作
17.1 概述
17.2 在Hyperbola中声明动作
17.2.1 声明的动作
17.2.2 允许共享
17.2.3 声明动作
17.2.4 上下文菜单
17.3 标准Workbench动作
17.4 可重定目标动作
17.5 合并声明的动作
17.6 工具栏动作技巧
17.6.1 显示图像和文字
17.6.2 给工具栏添加控件
17.7 给状态栏新增共享
17.8 报告进度
17.8.1 非模式进度
17.8.2 进度视图
17.8.3 自定义进度
17.8.4 编写ProgressProvider
17.9 小结
第18章 命令
18.1 动作的问题
18.2 Command
18.3 共享
18.3.1 菜单共享
18.3.2 标准Workbench共享
18.3.3 共享可见性
18.4 处理程序
18.5 小结
18.6 相关信息提示
第19章 自定义Workbench窗口
19.1 限制自定义
19.2 自定义Workbench窗口
19.2.1 例子:隐藏和显示
19.2.2 FormLayout
19.2.3 隐藏工具栏
19.2.4 添加Toggle动作
19.2.5 快速搜索面板
19.2.6 检查点
19.3 自定义窗口形状
19.3.1 创建形状
19.3.2 创建窗口
19.3.3 定义窗口内容
19.4 小结
19.5 相关信息提示
第20章 自定义视图和编辑器的外观
20.1 外观
20.2 外观范例
20.2.1 R21外观
20.2.2 外观范例
20.3 编写一个外观
20.3.1 部件层次
20.3.2 StackPresentation
20.4 外观示例
20.4.1 外观工厂
20.4.2 堆叠外观
20.4.3 大小和位置
20.4.4 添加、选择和删除部件
20.4.5 菜单
20.5 小结
20.6 相关信息提示
第Ⅳ部分 开发过程
第21章 p2的安装和更新
21.1 p2的作用
21.2 构架
21.2.1 可安装单元
21.2.2 工件
21.2.3 数据库
21.2.4 配置文件
21.2.5 director
21.2.6 引擎
21.3 使用p2 API
21.3.1 添加数据库
21.3.2 加载数据库
21.3.3 搜索数据库
21.3.4 执行供应计划
21.4 元数据管理
21.4.1 发布元数据
21.4.2 自定义元数据
21.4.3 接触点指令
21.5 数据库管理
21.5.1 镜像数据库
21.5.2 复合数据库
21.5.3 内容分类
21.6 安装管理
21.7 小结
21.8 相关信息提示
第22章 动态插件
22.1 使Hyperbola成为动态的
22.2 动态挑战
22.3 动态意识
22.3.1 动态扩展方案
22.3.2 对象处理
22.3.3 BundleListeners
22.4 动态启用
22.5 小结
22.6 相关信息提示
第23章 RCP无处不在
23.1 范例代码
23.2 方案
23.3 产品配置
23.3.1 重构Hyperbola
23.3.2 Hyperbola项目
23.3.3 项目命名
23.3.4 为什么会有这么多项目
23.4 Hyperbola产品配置
23.4.1 JFace配置
23.4.2 PDA配置
23.4.3 扩展配置
23.4.4 Workbench配置
23.4.5 Hyperbola Kiosk
23.5 源代码结构
23.5.1 Hyperbola层次
23.5.2 Workbench共享
23.5.3 命令和动作
23.5.4 键绑定
23.5.5 视图和编辑器
23.5.6 向导、Preferences和属性页面
23.5.7 可选相关项
23.5.8 图标和图像
23.6 设计一个平台
23.6.1 扩展点
23.6.2 扩展工厂
23.6.3 命名的和匿名的扩展
23.7 RCP友好插件
23.8 小结
23.9 相关信息提示
第24章 生成Hyperbola
24.1 什么是PDE Build
24.2 插件Build.Properties
24.2.1 控件属性
24.2.2 使用Custom Build(自定义生成)脚本
24.3 生成一个生成器
24.3.1 调整PDE Build的目标
24.3.2 Build.Properties
24.4 运行生成器
24.5 调整生成
24.5.1 自定义生成脚本
24.5.2 数据库和附加相关项
24.5.3 从SCM系统中取回
24.5.4 取回映射
24.5.5 自动替代版本号
24.5.6 合格的版本号
24.5.7 识别和放置根文件
24.6 生成附加功能
24.6.1 设置一个功能生成器
24.6.2 Build.Properties
24.6.3 运行功能生成
24.7 安装多个配置
24.7.1 SDK是什么
24.7.2 生成一个SDK功能
24.7.3 同时收集多个配置
24.8 小结
第25章 测试
25.1 使Hyperbola可测试
25.2 单元测试Hyperbola
25.2.1 测试策略
25.2.2 编写测试范例
25.2.3 运行测试范例
25.3 用户界面测试
25.3.1 SWTBot
25.3.2 测试策略
25.3.3 编写测试例子
25.3.4 运行测试例子
25.4 小结
25.5 相关信息提示
第26章 最后一英里
26.1 档案文件
26.2 本地安装程序
26.3 p2安装程序
26.4 Java Web Start(JNLP)
26.4.1 Java Web Start工作原理
26.4.2 Hyperbola和Java Web Star
26.4.3 JAR签名
26.4.4 为Java Web Star导出
26.4.5 生成JNLP清单
26.4.6 Java Web Start和p2
26.5 初始化安装
26.6 预初始化配置
26.7 多用户安装方案
26.7.1 共享安装
26.7.2 bundle池
26.8 小结
26.9 相关信息提示
第Ⅴ部分 参考
第27章 OSGi
27.1 OSGi和Eclipse Runtime
27.2 插件的形式
27.3 片段
27.4 版本编号
27.5 服务
27.6 Bundle生命周期
27.6.1 BundleActivator
27.6.2 激活程序的负面影响
27.6.3 使用激活程序
27.7 早期激活
27.7.1 早期激活扩展
27.7.2 osgi.bundles
27.7.3 启动级别
27.8 惰性激活
27.9 数据区域
27.10 小结
27.11 相关信息提示
第28章 Eclipse数据绑定
28.1 开始
28.2 为什么要进行数据绑定
28.3 架构
28.4 观察量
28.4.1 PojoObservables
28.4.2 BeansObservables
28.4.3 SWTObservables
28.4.4 ViewersObservables
28.4.5 MasterDetailObservables
28.4.6 WorkbenchObservables
28.4.7 领域
28.5 属性
28.5.1 pojoProperties
28.5.2 BeanProperties
28.5.3 WidgetProperties
28.5.4 WorkbenchProperties
28.6 绑定
28.6.1 转换
28.6.2 验证
28.6.3 支持类
28.7 小结
28.8 相关信息提示
第29章 Eclipse生态系统
29.1 到哪里寻找插件
29.2 Eclipse平台插件
29.3 产品介绍
29.4 资源插件
29.4.1 资源键功能概述
29.4.2 启动资源
29.4.3 Workbench中的资源
29.5 文本编辑
29.5.1 Text插件
29.5.2 编辑与编辑器
29.5.3 文本和文本风格
29.5.4 IDocument
29.5.5 TextViewers和TextEditor
29.5.6 遗漏了什么?
29.6 控制台
29.7 变量
29.8 大纲和属性视图插件
29.9 窗体
29.10 浏览器
29.11 公共导航框架
29.12 声明的服务插件
29.13 小结