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

推荐订阅源

aimingoo的专栏
aimingoo的专栏
Google DeepMind News
Google DeepMind News
S
SegmentFault 最新的问题
Project Zero
Project Zero
D
DataBreaches.Net
I
InfoQ
L
Lohrmann on Cybersecurity
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
酷 壳 – CoolShell
酷 壳 – CoolShell
Stack Overflow Blog
Stack Overflow Blog
The Register - Security
The Register - Security
Recorded Future
Recorded Future
Vercel News
Vercel News
博客园 - 司徒正美
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
I
Intezer
The Hacker News
The Hacker News
F
Fortinet All Blogs
Microsoft Azure Blog
Microsoft Azure Blog
P
Proofpoint News Feed
Help Net Security
Help Net Security
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Scott Helme
Scott Helme
T
Threatpost
爱范儿
爱范儿
N
Netflix TechBlog - Medium
D
Docker
云风的 BLOG
云风的 BLOG
C
Cisco Blogs
K
Kaspersky official blog
H
Help Net Security
S
Secure Thoughts
T
Threat Research - Cisco Blogs
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
S
Security @ Cisco Blogs
Cyberwarzone
Cyberwarzone
N
News and Events Feed by Topic
G
Google Developers Blog
Forbes - Security
Forbes - Security
博客园 - 三生石上(FineUI控件)
博客园 - 叶小钗
B
Blog
Google DeepMind News
Google DeepMind News
Recent Announcements
Recent Announcements
Simon Willison's Weblog
Simon Willison's Weblog
S
Securelist
P
Privacy International News Feed
Spread Privacy
Spread Privacy
The Last Watchdog
The Last Watchdog

博客园 - 刘刚

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