注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计JAVA及其相关Eclipse 插件开发方法与实战

Eclipse 插件开发方法与实战

Eclipse 插件开发方法与实战

定 价:¥49.00

作 者: 甘树满,王秀明 编著
出版社: 电子工业出版社
丛编项: Java开发专家
标 签: J2EE

ISBN: 9787121031809 出版时间: 2006-10-01 包装: 胶版纸
开本: 16 页数: 453 字数:  

内容简介

  初涉Eclipse开发的读者,就像深陷丛林的冒险者,多少会有点迷茫。如果你是一位非常优秀的探险家,凭直觉可能很快就会找到出路。但如果你在这方面缺乏经验的话,最终可能会找到出口,但一定会走很多弯路。本书并不能算“指南针”性的教材,但希望能引领读者认识Eclipse的真面目,并能快速融入到Eclipse的开发中去。本书对于Eclipse插件开发的新手和有一定Eclipse开发经验的程序员普遍适用。本书分为4个部分共24章,以插件开发为中心,围绕插件开发主要介绍SWT/J-Face的应用、插件扩展点的实现,以及GEF、EMF和RCP的相关知识。本书所有讲解的范例都能在附书光盘中找到可运行的源代码,并且已经按章节归类。本书语言深入浅出,通俗易懂,通过大量具有典型性和实用价值的实例,以及形象的比喻,把复杂的问题和难懂的概念简单化,从多个方面引导读者进入Eclipse插件开发。附书光盘内容为书中实例源代码及相关插件。本书对于Eclipse插件开发的新手和有一定Eclipse开发经验的程序员普遍适用。

作者简介

暂缺《Eclipse 插件开发方法与实战》作者简介

图书目录

第1部分 Eclipse入门篇.  
第1章 Eclipse概述 3  
1.1 Eclipse项目背景 3  
1.2 Eclipse简介    
1.2.1 开放式体系结构    
1.2.2 平台体系结构 4  
1.3 Eclipse的主要功能特性 5  
1.3.1 文件存放(Workspace) 5  
1.3.2 Eclipse开发环境(Workbench) 6  
1.3.3 编译与运行 7  
1.3.4 版本管理 7  
1.4 工作台 8  
1.4.1 资源 8  
1.4.2 资源层次结构 8  
1.4.3 构建 8  
1.5 运行时概述 9  
1.5.1 运行时插件模型 9  
1.5.2 插件 10  
1.5.3 Bundle 10  
1.6 开源的选择 11  
1.7 小结 12  
第2章 Eclipse安装及Java开发 13  
2.1 Eclipse开发环境的安装 13  
2.1.1 JDK安装 13  
2.1.2 Eclipse安装 14  
2.2 Java开发工具JDT 14  
2.2.1 视角 14  
2.2.2 视图 15  
2.2.3 编辑器 16  
2.3 在Eclipse中开发Java程序 16  
2.3.1 Java项目 16  
2.3.2 新建“Hello,32world”程序 17  
2.3.3 运行程序与调试 18  
2.3.4 类的构建路径 19  
2.3.5 项目构建 20  
2.4 其他功能 20  
2.4.1 查看源代码 20  
2.4.2 重构 21  
2.4.3 生成Javado 文档 21  
2.5 Eclipse快捷键 22  
2.5.1 编辑相关快捷键 22  
2.5.2 查看和定位快捷键 23  
2.5.3 调试快捷键 24  
2.5.4 常用编辑器快捷键 24  
2.5.5 其他快捷键 24  
2.6 小结 25  
第3章 Eclipse的使用 27  
3.1 Eclipse插件安装 27  
3.1.1 拷贝安装 27  
3.1.2 links安装 28  
3.1.3 update安装 29  
3.1.4 查看插件 30  
3.2 开发简单的Web应用 31  
3.2.1 安装配置MyEclipse 31  
3.2.2 创建Web应用 32  
3.2.3 部署并运行Web应用 35  
3.3 小结 36  
第2部分 SWTJFace开发篇  
第4章 SWT/JFace 入门 39  
4.1 SWT/JFace简介 39  
4.1.1 SWT/JFace概述 39  
4.2.2 SWT/JFace基本特性 40  
4.2 SWT“Hello world”程序 41  
4.2.1 加入SWT依赖的包 41  
4.2.2 “Hello world”程序 43  
4.2.3 运行“Hello world”程序 43  
4.3 JFace“Hello world”程序 44  
4.3.1 “Hello world”程序 44  
4.3.2 运行“Hello world”程序 45  
4.4 在SWT中使用Swing组件 46  
4.4.1 在SWT的组件上加入Swing的组件 46  
4.4.2 程序运行效果 48  
4.5 小结 48  
第5章 SWT常用组件 49  
5.1 Control类 49  
5.1.1 Control类的继承关系 49  
5.1.2 Control类的常用方法 49  
5.2 Button组件 50  
5.2.1 Button组件实例 50  
5.2.2 Button组件的风格 52  
5.2.3 Button组件的对齐方式 52  
5.2.4 加入图片及按钮组合属性 52  
5.3 Label组件 53  
5.3.1 Label组件实例 53  
5.3.2 Label组件的风格和对齐方式 54  
5.3.3 加入图片及组合属性 55  
5.4 Text组件 55  
5.4.1 Text组件实例 55  
5.4.2 Text组件的风格 56  
5.5 Combo组件 57  
5.5.1 Combo组件实例 57  
5.5.2 Combo组件的风格 59  
5.6 List组件 59  
5.6.1 List组件实例 59  
5.6.2 List组件的风格 61  
5.7 小结 61  
第6章 SWT事件 63  
6.1 鼠标事件 63  
6.1.1 MouseListener接口 63  
6.1.2 MouseMoveListener接口 64  
6.1.3 MouseTra kListener接口 64  
6.1.4 鼠标事件实例 65  
6.2 键盘事件 67  
6.2.1 KeyListener接口 67  
6.2.2 键盘事件实例 67  
6.3 焦点事件 69  
6.3.1 FocusListener接口 69  
6.3.2 焦点事件实例 69  
6.4 窗口控制事件 71  
6.4.1 ControlListener接口 71  
6.4.2 窗口控制事件实例 71  
6.5 选择组件事件 72  
6.5.1 SelectionListener接口 73  
6.5.2 选择组件事件实例 73  
6.6 其他常用事件 74  
6.6.1 HelpListener. VerifyListener和ModifyListener监听器的功能 74  
6.6.2 HelpListener. VerifyListener和ModifyListener监听器实例 75  
6.7 小结 77  
第7章 SWT布局管理 79  
7.1 概述 79  
7.2 FillLayout布局 80  
7.2.1 FillLayout的风格 80  
7.2.2 FillLayout布局实例 80  
7.3 RowLayout布局 82  
7.3.1 RowLayout的风格 82  
7.3.2 RowLayout布局实例 83  
7.4 GridLayout布局 84  
7.4.1 GridLayout的风格 85  
7.4.2 GridData的相关属性 85  
7.4.3 GridLayout 布局实例 87  
7.5 FormLayout布局 91  
7.5.1 FormLayout布局信息 91  
7.5.2 FormLayout布局实例 92  
7.6 创建自己的布局 96  
7.6.1 Layout类 96  
7.6.2 创建自己的布局类 97  
7.7 小结 100  
第8章 SWT容器及其他组件 101  
8.1 SWT容器 101  
8.1.1 Composite组件 101  
8.1.2 Group组件 102  
8.1.3 TabFolder和TabItem组件 104  
8.1.4 SashForm组件 105  
8.2 菜单和工具栏 108  
8.2.1 Menu和MenuItem组件 108  
8.2.2 ToolBar和ToolItem组件 111  
8.2.3 CoolBar和CoolItem组件 113  
8.3 其他组件 115  
8.3.1 Slider组件 115  
8.3.2 Scale组件 116  
8.3.3 ProgressBar组件 118  
8.4 小结 120  
第9章 Viewer组件 121  
9.1 TreeViewer 121  
9.1.1 TreeViewer构建步骤 121  
9.1.2 内容提供器(ITreeContentProvider) 121  
9.1.3 标签提供器(ILabelProvider) 123  
9.1.4 TreeViewer实例 123  
9.2 TableViewer 127  
9.2.1 TableViewer构建步骤 127  
9.2.2 内容提供器(IStructured ContentProvider) 128  
9.2.3 标签提供器(ITableLabelProvider) 128  
9.2.4 TableViewer实例 129  
9.3 ListViewer 138  
9.3.1 ListViewer功能 138  
9.3.2 ListViewer实例 138  
9.4 小结 142  
第10章 对话框 143  
10.1 消息对话框 143  
10.1.1 消息对话框的功能 143  
10.1.2 消息对话框实例 144  
10.2 输入对话框 147  
10.2.1 输入对话框的功能 147  
10.2.2 输入对话框实例 147  
10.3 进度监视对话框 149  
10.3.1 进度监视对话框的功能 149  
10.3.2 进度监视对话框实例 150  
10.4 自定义对话框 153  
10.4.1 带标题区域对话框 153  
10.4.2 自定义对话框实例 153  
10.5 常用系统对话框 156  
10.5.1 打印对话框(PrintDialog) 157  
10.5.2 颜色对话框(ColorDialog) 157  
10.5.3 字体对话框(FontDialog) 158  
10.5.4 文件对话框(FileDialog) 159  
10.5.5 目录对话框(DirectoryDialog) 159  
10.6 小结 160  
第11章 SWT的其他应用 161  
11.1 拖放 161  
11.1.1 拖放的功能 161  
11.1.2 拖放的实现 162  
11.2 线程 164  
11.2.1 线程同步和异步 164  
11.2.2 线程同步和异步的实现 164  
11.3 剪贴板 166  
11.3.1 剪贴板的功能 166  
11.3.2 剪贴板的实现 166  
11.4 图形上下文 168  
11.4.1 图形上下文的实现 168  
11.4.2 自定义组件 170  
11.5 鼠标形状(Cursor) 172  
11.6 小结 174  
第3部分 Eclipse插件开发篇  
第12章 插件入门 177  
12.1 什么是插件 177  
12.2 一个简单的插件 178  
12.2.1 创建“Hello,207world”插件 178  
12.2.2 调试“Hello,208world”插件 179  
12.2.3 插件打包 180  
12.3 插件清单文件介绍 181  
12.3.1 OverView:描述了插件的基本信息 182  
12.3.2 Dependen ies:描述了插件的依赖关系 182  
12.3.3 Runtime:指明了运行时的ClassPath 183  
12.3.4 Extensions:指明插件实现的扩展点 183  
12.3.5 Extension Points:指明了用户插件提供的扩展点 184  
12.4 常用扩展点的描述 185  
12.4.1 org.e lipse.ui.editors:代表一个编辑器窗口 185  
12.4.2 org.e lipse.ui.views:代表一个视图窗口 185  
12.4.3 org.e lipse.ui.perspe tives:代表一个扩展视角 187  
12.5 小结 187  
第13章 视图扩展点的实现 189  
13.1 Views扩展点的介绍 189  
13.1.1 视图分类 189  
13.1.2 常用视图可实现的功能 190  
13.2 “Hello,225world”视图 190  
13.2.1 创建“Hello,226world”视图插件 190  
13.2.2 “Hello,227world”插件扩展点 191  
13.2.3 “org.e lipse.ui.views”扩展点的实现类“HelloWorldView” 193  
13.2.4 运行“Hello,229world”视图 194  
13.3 “Tree viewer”视图 195  
13.3.1 创建“Tree viewer”视图插件 195  
13.3.2 “Tree viewer”插件扩展点 196  
13.3.3 “org.e lipse.ui.views”扩展点的实现类“TreeViewTest” 196  
13.3.4 运行“Tree viewer”视图 202  
13.4 “Image viewer”视图 202  
13.4.1 创建“Image viewer”视图插件 202  
13.4.2 “org.e lipse.ui.viewA tions”扩展点的实现类“PushA tionDelegate” 205  
13.4.3 “org.e lipse.ui.views”扩展点的实现类“ImageView” 206  
13.4.4 运行“Image viewer”视图 207  
13.5 Debug视图的实现.. 208  
13.5.1 查找Debug插件 208  
13.5.2 导入Debug插件 208  
13.5.3 Debug插件中视图的扩展点 209  
13.6 小结 211  
第14章 编辑器扩展点的实现 213  
14.1 Editors扩展点的介绍 213  
14.1.1 编辑器分类 213  
14.1.2 常用编辑器可实现的功能 213  
14.1.3 编辑器和视图的区别 214  
14.2 “Hello,250world”编辑器 214  
14.2.1 “Hello,251world”编辑器插件 214  
14.2.2 “Hello,252world”插件扩展点 215  
14.2.3 “org.e lipse.ui.editors”扩展点的实现类“HelloWorldEditor” 216  
14.2.4 运行“Hello,254world”编辑器 218  
14.3 多页签编辑器的实现 219  
14.3.1 创建多页签编辑器插件 219  
14.3.2 多页签编辑器插件扩展点 220  
14.3.3 “org.e lipse.ui.editors”扩展点的实现类“MultiPageEditor” 220  
14.3.4 “org.e lipse.ui.editors”扩展点的辅助类“MultiPageEditor Contributor” 225  
14.3.5 运行多页签编辑器 227  
14.4 简单的文本编辑器 227  
14.4.1 创建文本编辑器插件 227  
14.4.2 “org.e lipse.ui.editors”扩展点的实现类“FileEditor” 228  
14.4.3 运行文本编辑器 231  
14.5 小结 231  
第15章 项目相关扩展点的实现 233  
15.1 项目中常用的扩展 233  
15.2 视角 233  
15.2.1 简介 234  
15.2.2 “org.e lipse.ui.perspe tive Extensions”扩展点 234  
15.2.3 “org.e lipse.ui.perspe tives”扩展点 237  
15.3 菜单工具栏 239  
15.3.1 “org.e lipse.ui.a tionSets”扩展点信息 239  
15.3.2 “org.e lipse.ui.a tionSets”扩展点的实现类“SampleA tion” 240  
15.4 项目相关特性 241  
15.4.1 项目扩展点 241  
15.4.2 “org.e lipse. ore.resour es. natures”扩展点及实现类 241  
15.4.3 “org.e lipse. ore.resour es. builders”扩展点及实现类 243  
15.4.4 “org.e lipse.ui.newWizards”扩展点及实现类 246  
15.4.5 “org.e lipse.ui.preferen ePages”扩展点及实现类 249  
15.5 小结 252  
第16章 帮助相关扩展点的实现 253  
16.1 联机帮助 253  
16.1.1 联机帮助扩展点的实现 253  
16.1.2 联机帮助文档的结构 254  
16.1.3 在联机帮助中在线调用Java类 256  
16.2 欢迎界面帮助 257  
16.2.1 产品扩展点 258  
16.2.2 欢迎界面扩展点 258  
16.2.3 插件清单文件 259  
16.2.4 扩展点实现类 259  
16.2.5 调试欢迎界面插件 261  
16.3 上下文帮助 261  
16.3.1 定义上下文帮助 261  
16.3.2 定义弹出菜单和相应对话框 262  
16.3.3 运行上下文帮助插件 264  
16.4 小结 266  
第17章 其他扩展点的实现 267  
17.1 startup扩展点的实现 267  
17.1.1 “org.e lipse.ui.startup”扩展点的实现 267  
17.1.2 “org.e lipse.ui.startup”对应的实现类 267  
17.1.3 “org.e lipse.ui.startup”对应插件运行效果 268  
17.2 “propertyPages”扩展点的实现 268  
17.2.1 “org.e lipse.ui.propertyPages”扩展点的实现 268  
17.2.2 “org.e lipse.ui.propertyPages”对应的实现类 269  
17.2.3 “org.e lipse.ui.propertyPages”对应插件运行效果 272  
17.3 小结 273  
第18章 插件开发辅助功能 275  
18.1 属性视图 275  
18.1.1 IPropertySour e接口 276  
18.1.2 属性视图的实现 277  
18.2 大纲视图 279  
18.2.1 IContentOutlinePage接口 279  
18.2.2 大纲视图的实现 281  
18.3 构造EditorInput 282  
18.3.1 IEditorInput接口 282  
18.3.2 IEditorInput的实现 283  
18.4 操纵编辑器 285  
18.4.1 查找编辑器 285  
18.4.2 打开和关闭编辑器 286  
18.5 插件国际化 286  
18.5.1 国际化插件的创建 287  
18.5.2 类的国际化 287  
18.5.3 plugin.xml文件格式化 289  
18.5.4 调试国际化插件 289  
18.6 小结 290  
第4部分 E lipse提高篇  
第19章 Draw2d简介及实现 293  
19.1 Draw2d简介 293  
19.1.1 Draw2d简介 293  
19.1.2 “Hello World”实现 294  
19.2 图形 295  
19.2.1 图形(Figure)的功能 295  
19.2.2 图形的实现 295  
19.3 连线 296  
19.3.1 连线(Conne tion)的功能 297  
19.3.2 连线的实现 297  
19.4 UML关系图实现 299  
19.4.1 UML关系图实现的要求 299  
19.4.2 CompartmentFigure实现 300  
19.4.3 UMLClassFigure实现 301  
19.4.4 连线及测试类 302  
19.5 小结 304  
第20章 GEF原理及实现 305  
20.1 GEF概述 305  
20.1.1 GEF简介 305  
20.1.2 GEF工作原理 305  
20.2 模型 306  
20.2.1 模型的功能 306  
20.2.2 模型的实现 306  
20.3 视图 311  
20.3.1 视图的功能 311  
20.3.2 视图的实现 311  
20.4 控制器 312  
20.4.1 控制器的功能 312  
20.4.2 控制器的实现 313  
20.5 请求和编辑策略 316  
20.5.1 请求和编辑策略(Request and EditPolicies) 316  
20.5.2 编辑策略的实现 317  
20.6 命令 318  
20.6.1 命令(Commands)的功能 318  
20.6.2 命令的实现 318  
20.7 模型同步 320  
20.7.1 模型同步的功能 320  
20.7.2 模型同步的实现 320  
20.8 选项板 321  
20.8.1 选项板(PaletteRoot)的功能 321  
20.8.2 选项板的实现 322  
20.9 小结 323  
第21章 GEF表模型编辑器的实现 325  
21.1 程序的软件结构 325  
21.1.1 实现功能 325  
21.1.2 程序的界面要求 326  
21.2 编辑器的实现 326  
21.2.1 编辑器的功能 326  
21.2.2 编辑器的实现 327  
21.3 模型的实现 334  
21.3.1 PropertyAwareObject类 334  
21.3.2 Table类 335  
21.3.3 Column类 339  
21.3.4 Schema类 341  
21.3.5 Relationship类 343  
21.4 视图的实现 344  
21.4.1 TableFigure类 344  
21.4.2 SchemaFigure类 346  
21.4.3 ColumnsFigure类 346  
21.5 控制器的实现 347  
21.5.1 TablePart的实现 348  
21.5.2 RelationshipPart的实现 357  
21.6 EditPartFactory和Palette的实现 359  
21.6.1 SchemaEditPartFactory 359  
21.6.2 PaletteRoot 360  
21.7 EditPolicy的实现 362  
21.7.1 TableNodeEditPolicy(模型连线的编辑策略) 362  
21.7.2 TableLayoutEditPolicy(子模型布局的编辑策略) 364  
21.7.3 TableContainerEditPolicy(处理模型创建请求的编辑策略) 366  
21.7.4 TableEditPolicy(模型编辑的编辑策略) 367  
21.7.5 TableDirectEditPolicy(处理直接编辑的编辑策略) 368  
21.8 Command的实现 369  
21.8.1 模型连线命令 369  
21.8.2 模型拖动命令 372  
21.8.3 模型创建命令 373  
21.8.4 模型删除命令 374  
21.8.5 模型直接编辑命令 377  
21.9 大纲的实现 378  
21.10 小结 380  
第22章 EMF的使用 381  
22.1 EMF的简介 381  
22.2 使用EMF生成模型 382  
22.2.1 定制类关系图 382  
22.2.2 生成模型代码 383  
22.3 在GEF框架中使用EMF模型 384  
22.3.1 模型 384  
22.3.2 EditPart的修改 384  
22.3.3 ElementFactory的修改 385  
22.3.4 处理自定义数据类型 386  
22.3.5 保存和载入模型 387  
22.4 小结 388  
第23章 RCP技术 389  
23.1 RCP的简介 389  
23.2 建立一个RCP的应用 389  
23.2.1 创建RCP应用 390  
23.2.2 运行RCP应用 390  
23.2.3 导出RCP应用 391  
23.3 RCP的组成部分 393  
23.3.1 Plugin.xml 393  
23.3.2 应用的入口Application 395  
23.3.3 工作台Appli ationWorkbench Advisor 395  
23.3.4 工作台窗口Application WorkbenchWindowAdvisor 397  
23.3.5 工作台“Action Bar”ApplicationActionBarAdvisor 397  
23.3.6 应用的视角(perspective) 399  
23.4 小结 400  
第24章 Eclipse进阶 401  
24.1 选择与监听 401  
24.1.1 选择事件提供者(Selection Provider) 402  
24.1.2 选择服务(Selection Service) 403  
24.1.3 选择事件监听器(Selection Listener) 404  
24.1.4 实例 405  
24.2 命令堆栈 408  
24.2.1 命令堆栈(CommandSta k) 408  
24.2.2 监听器 410  
24.3 适配器 410  
24.3.1 适配器接口(IAdaptable) 411  
24.3.2 适配器的实现 412  
24.4 UI持久化 413  
24.4.1 持久化机制 413  
24.4.2 UI持久化与恢复的实现 414  
24.5 深入Workben h 418  
24.5.1 Workben h中实现类的关系 418  
24.5.2 Part的生命周期 419  
24.6 资源监听与访问 421  
24.6.1 资源监听器 421  
24.6.2 资源访问器 422  
24.6.3 资源监听的实现 423  
24.7 小结 425  
附录A 插件资源列表 427  
附录B 插件开发法则 431  
B.1 扩展者法则 431  
B.2 促成者法则 431  
B.3 发布者法则 432

本目录推荐