GEF入门教程:构建RCP编辑器

5星 · 超过95%的资源 需积分: 46 33 下载量 74 浏览量 更新于2024-07-21 收藏 1.93MB PDF 举报
"GEF学习教程,包括RCP项目建立、显示RCP中的Editor和GEF的基本结构。教程提供了一个简单的HelloWorld示例,指导如何在Eclipse RCP上构建GEF编辑器,并强调了对JDK版本的要求以及依赖项设置。" 在深入探讨GEF(Graphical Editing Framework)之前,我们先理解一下它是什么。GEF是一个用于构建图形用户界面(GUI)的开源框架,特别是用于创建图形编辑器。它与Eclipse Rich Client Platform (RCP)紧密结合,允许开发者构建复杂的桌面应用程序,其中包含了图形编辑功能。 创建RCP工程是GEF应用的基础。在Eclipse中,我们选择"Plug-in Project",然后为项目命名,例如"gef.tutorial.stepz",并在"RichClientApplication"选项中选择"Yes",这样就能创建一个支持RCP的应用。接下来,选择"HelloRCP"模板并完成项目创建。 确保正确设置项目的依赖性至关重要。在本例中,我们需要添加GEF库,即org.eclipse.gef,版本为3.1.0。在plugin.xml文件的"Dependencies"页面中,通过"Add…"按钮找到并添加这个库。 接下来,创建编辑器(Editor)部分,因为GEF通常用于构建可编辑的图形视图。编辑器基于EditorPart,提供了诸如“脏”状态处理(dirty handling)这样的特性,这意味着当图形被修改后,编辑器会提示用户保存更改。在GEF中,图形通常是在编辑器上绘制,而不是视图(View),尽管视图也可以用于显示非编辑性的图形内容。 创建编辑器涉及定义其结构、模型以及用户交互行为。模型通常是基于EMF(Enterprise Modeling Framework)创建的,EMF提供了一种方式来描述数据结构,并将其转换为Java类。GEF和Draw2D(包含在GEF中)一起用于绘制图形和处理用户输入。 教程中的"HelloWorld"示例会展示如何在RCP编辑器中使用GEF的基本元素。这可能包括创建一个简单的图形对象,如一个矩形或圆形,以及实现基本的拖放和缩放操作。通过这种方式,学习者可以逐步理解GEF的绘图机制、事件处理和模型-视图-控制器(MVC)架构。 总结来说,本教程旨在引导初学者了解如何在Eclipse RCP环境中使用GEF开发图形编辑器。从创建RCP项目,设置依赖,到构建编辑器并实现基本的图形操作,每个步骤都旨在帮助学习者建立起对GEF工作原理的理解,为进一步探索更复杂的图形应用打下坚实基础。