惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Microsoft Security Blog
Microsoft Security Blog
J
Java Code Geeks
GbyAI
GbyAI
aimingoo的专栏
aimingoo的专栏
L
LangChain Blog
I
InfoQ
D
Docker
F
Fortinet All Blogs
Y
Y Combinator Blog
Martin Fowler
Martin Fowler
月光博客
月光博客
B
Blog
Engineering at Meta
Engineering at Meta
T
Tailwind CSS Blog
罗磊的独立博客
博客园_首页
G
Google Developers Blog
Stack Overflow Blog
Stack Overflow Blog
Recent Announcements
Recent Announcements
D
DataBreaches.Net
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
B
Blog RSS Feed
IT之家
IT之家
V
V2EX

博客园 - 刘刚

Google Map [导入]Editor中嵌入Editor [导入]GEF中修改默认的FeedBack [导入]GEF中导视图的使用 [导入]修改GEF中Connection的端点 [导入]Eclipse中Job API使用总结如下三 [导入]Eclipse中Job API使用总结如下二 [导入]Eclipse中Job API使用总结如下一 [导入]Eclipse调试框架的学习与理解二 [导入]Eclipse调试框架的学习与理解一 [导入]使用JET自动生成代码 [导入]定义自己的Common Navigator三 [导入]定义自己的Common Navigator二 [导入]定义自己的Common Navigator一 [导入]Eclipse运行(launcher)框架三 [导入]Eclipse运行(launcher)框架二 [导入]Eclipse运行(launcher)框架一 [导入]Eclipse属性页的支持 [导入]GEF理解系列九
[导入](接上篇)关于GEF Feedback的补充
刘刚 · 2008-07-14 · via 博客园 - 刘刚

作者: liugang594  链接:http://liugang594.javaeye.com/blog/213347  发表时间: 2008年07月10日

声明:本文系JavaEye网站发布的原创博客文章,未经作者书面许可,严禁任何网站转载本文,否则必将追究法律责任!

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

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()方法即可!

本文的讨论也很精彩,浏览讨论>>

JavaEye推荐

文章来源:http://liugang594.javaeye.com/blog/213347