`
liugang594
  • 浏览: 985876 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

(接上篇)关于GEF Feedback的补充

    博客分类:
  • GEF
 
阅读更多

重复上篇,我们有以下类:

1、模型相关:RouteMap、Homuncule,其中RouteMap含有一个或多个Homuncule

2、Policy相关:HomunculeLayoutPolicy;安装在RouteMapEditPart上用于移动Homuncule或重置它

   的大小

3、EditPart相关:对应于RouteMap的RouteMapEditPart;对应于Homuncule的

   HomunculeEditPart.

 

一个完整的feedback的方法调用请求如下:

 

showLayoutTargetFeedback(Request request)[HomunculeLayoutPolicy]-->showSourceFeedback(Request request)[HomunculeEditPart]-->showSourceFeedback(Request)[ResizableEditPolicy]-->createDragSourceFeedbackFigure()[ResizableEditPolicy]

查找引用关系,可以知道:ResizableEditPolicy对象只在以下处被调用:

createChildEditPolicy(EditPart child)[ConstrainedLayoutEditPolicy]

protected EditPolicy createChildEditPolicy(EditPart child) {
	return new ResizableEditPolicy();
}

 

 

 

其中ConstrainedLayoutEditPolicy类的层级关系如下图:

所以我们知道,只要重写HomunculeLayoutPolicy的createChildEditPolicy(EditPart child)方法,返回一个ResizableEditPolicy的子类,并重写它的createDragSourceFeedbackFigure()方法即可!

  • 描述: hire
  • 大小: 10.8 KB
分享到:
评论

相关推荐

    GEF连接线Node之间连接

    2. **创建节点**:在`GEF`中,节点通常是`Part`的子类,如`Figure`或`Shape`,它们定义了在画布上显示的图形形状。通过自定义这些类,可以实现各种复杂形状的节点。 3. **连接线(Edge)**:连接线是`Connection`的...

    自己下的GEF资源打包

    标题中的“GEF资源打包”指的是一个集合了关于GEF(Graph Edit Framework)的各种学习资料的压缩文件。这个资源包可能包含了对理解、学习和使用GEF非常有帮助的材料。描述进一步说明了这个包中包含的具体内容,如...

    gef 转折线的相关方法实现和 GEF的API chm 格式

    在本篇文章中,我们将深入探讨gef转折线的相关方法实现以及GEF的API。 首先,让我们理解一下什么是转折线。在图形编辑中,转折线通常指的是具有多个折点的线条,这些折点可以由用户交互式地调整,以改变线条的形状...

    GEF典型实现例子

    文件名列表中,尽管没有直接的代码文件,但“Gef.doc”可能是关于GEF的文档,可能包含了对GEF的介绍、使用方法以及例子的详细说明。MHT文件通常是网页的单个文件存档,可能保存了两篇与GEF相关的博客文章:“Draw2D...

    GEF入门学习例子

    GEF中的视图由`GraphicalViewer`类实现,它管理着画布上的所有图形元素。 3. **编辑器(Editor)**: 编辑器是Eclipse插件开发中的一个关键组件,它提供了对模型的编辑功能。GEF编辑器通常基于`...

    IBM GEF 推广资料

    【IBM GEF推广资料】 IBM GEF(Graphical Editing Framework)是Eclipse平台上的一个开源图形编辑框架,专为构建图形化用户界面和图形编辑工具而...如果你有关于GEF的计划或问题,都可以在课程中与大家分享和讨论。

    GEF Example Source Code

    标题"GEF Example Source Code"表明这是一个关于GEF框架的示例源代码集合,它可能包含各种演示如何使用GEF构建图形编辑功能的代码实例。这些示例可以帮助开发者理解和学习如何有效地利用GEF库来创建自定义的图形编辑...

    GEF-Update-3.7.1.zip

    GEF(Graphical Editing Framework)是Eclipse平台上一个强大的图形编辑框架,主要用于构建可视化的建模和图形编辑工具。更新到3.7.1版本,它提供了许多改进和新功能,以满足开发者在创建图形用户界面时的需求。在这...

    GEF理解系列三

    本篇文章将深入探讨GEF中的图形移动与缩放功能的实现。 首先,GEF的核心在于其事件处理机制。当用户在图形视图上执行操作(如点击、拖动等)时,SWT事件会被转换为请求(request),这些请求随后被发送到Controller...

    GEF锚点鼠标定位

    在图形编辑框架(GEF,Graphical Editing Framework)中,锚点(Anchor)是一个关键概念,它是连接模型元素之间的连接线在元素上的固定点。在GEF中,锚点的定位直接影响到连接线的形状和行为,特别是当用户通过鼠标...

    GEF入门必读 GEF入门系列 GEF-whole-upload

    **GEF(Graphical Editing Framework)** 是一个用于构建图形化编辑器的开源框架,它在Eclipse平台上广泛使用,特别是在开发复杂的图形用户界面和工具时。本资料集旨在为初学者提供一个全面的入门指南,帮助理解GEF...

    GEF教程和demo源码

    接下来,我们转向"test.gef.hello"源码,这是一个基础的Hello World示例,涵盖了以下核心概念: 1. **初始化编辑器**:源码会展示如何创建一个基本的编辑器实例,这是所有GEF应用程序的基础。 2. **模型创建**:...

    Eclipse的GEF学习

    总之,GEF是Eclipse平台上一个强大而灵活的图形编辑框架,它通过清晰的MVC架构分离了数据、控制和展示三个层面,为开发者提供了一个高效构建图形编辑应用的平台。无论是初学者还是经验丰富的开发者,掌握GEF都将为...

    GEF简易教程-学习GEF的入门教程

    **GEF**,全称为**Graphical Editing Framework**,是Eclipse平台上用于创建复杂图形编辑器的框架。它提供了一套完整的工具集,使开发者能够构建具有图形化用户界面的应用程序,特别适用于创建基于模型的编辑器。 ...

    GEF-SDK-3.6.2 jar

    在Android ADT中,GEF的作用主要体现在可视化布局编辑器上,它允许开发者通过拖放的方式设计XML布局文件,实时预览UI效果,以及方便地调整控件的属性和布局关系。此外,GEF还支持图元工厂(MetaFactory),可以生成...

    GEF 3.10 eclipse 插件

    **GEF 3.10 Eclipse 插件详解** ...总之,GEF 3.10是Eclipse平台上构建图形编辑器的强大框架,通过它的使用,开发者能够快速、高效地开发出符合需求的图形化应用程序,提升软件开发的效率和质量。

    将GEF应用到Web上,PPT

    标题“将GEF应用到Web上,PPT”表明这是一个关于如何在Web环境中使用GEF(图形编辑框架)技术的演示文稿。GEF,全称Graphical Editing Framework,是Eclipse基金会的一个开源项目,主要用于构建图形用户界面(GUI)...

    java gef开发实例

    GEF是Eclipse平台上用于构建图形编辑器的库,它提供了构建图形用户界面(GUI)所需的基础结构,尤其适合创建复杂的图表和流程图编辑器。在本实例中,我们将探讨如何利用GEF实现一个简单的MVC(Model-View-Controller...

    GEF教程

    然而,随着“八进制”Blog上一系列GEF教程的出现,这一状况得到了显著改善。 #### GEF框架的核心价值 GEF框架的核心价值在于它能够提供一套完整的图形编辑解决方案,包括但不限于模型管理、视图渲染、编辑操作、...

Global site tag (gtag.js) - Google Analytics