Eclipse GEF实战:从HelloWorld到图形编辑器

5星 · 超过95%的资源 需积分: 46 3 下载量 132 浏览量 更新于2024-11-03 收藏 1.93MB PDF 举报
"Eclipse GEF实战指南" 本教程详细介绍了如何使用Eclipse GEF (Graphical Editing Framework) 开发图形应用程序,从基础的“Hello World”程序开始。GEF是一个用于构建图形编辑器的开源框架,常用于构建复杂的图形用户界面。教程面向初学者,逐步教授如何在Eclipse RCP (Rich Client Platform) 上搭建和使用GEF。 首先,我们需要了解RCP项目的基础知识。RCP是一个用于构建桌面应用程序的平台,它允许开发者创建自定义的、功能丰富的用户界面。在RCP中,我们可以创建视图(Views)和编辑器(Editor),两者都是展示内容的不同方式。编辑器通常与文件关联,提供读写功能,并且在数据发生变化时会标记为“脏”(dirty)状态,提醒用户保存。 在教程中,我们首先创建了一个名为“gef.tutorial.stepz”的Plug-in Project。选择“RichClientApplication”并选择“HelloRCP”模板,这是创建RCP工程的标准步骤。为了使项目能够使用GEF,我们需要在项目的依赖性设置中添加“org.eclipse.gef”库,确保版本为3.1.0或以上。 接着,教程进入关键部分,即创建编辑器。编辑器是GEF应用的核心,因为它提供了一个画布来展示和编辑图形元素。GEF编辑器通常继承自EditorPart,它具有文件关联和“脏”状态管理功能。创建编辑器涉及定义图形模型、适配器、绘图部件和手势处理等组件。 在GEF中,图形模型通常由EMF (Eclipse Modeling Framework) 生成,EMF是一种强大的工具,用于构建基于XML的数据模型。使用EMF,开发者可以将业务逻辑与图形表示分离,使得代码更易于维护。教程中可能没有深入到EMF的部分,但理解EMF与GEF的结合使用是非常重要的。 接下来,教程会逐步介绍如何在编辑器中绘制图形,包括定义绘图模型、使用Draw2D库创建基本形状,以及添加拖放、缩放、旋转等交互功能。Draw2D是GEF的一部分,提供2D图形绘制的底层支持。 在开发过程中,遇到问题如在Windows 2000上建立RCP工程可能出现错误,解决方法通常涉及到调整环境配置,例如升级JDK到1.5以上,因为早期版本的JDK可能不支持EMF处理XML模型。 教程通过实践案例,帮助读者理解并掌握GEF的使用,从而能独立开发出自己的图形编辑器。随着学习的深入,读者将能够创建复杂的图形编辑器,支持多种图形操作和用户交互,实现定制化的图形界面应用。