EditPolicy的层次和结构(翻译自GEF Help)
关键字: GEFEditPolicy的层次和结构(翻译自GEF Help)http://help.eclipse.org/help31/index.jsp?topic=/org.eclipse.gef.doc.isv/reference/api/org/eclipse/gef/EditPolicy.html
接口:org.eclipse.gef.EditPolicy。EditPolicies实现EditPart的所有的编辑行为。“编辑行为”定义为下面的一种或几种:
- 创建命令(Command Creation)。通过
getCommand(Request)返回一Command。 - 反馈管理(Feedback Management)。显示或消除源或(和)目标的反馈。
- 通告/转发(Delegation/Forwarding)。从其他的EditParts(确切的说应该是其所包含的EditPolicies)收集编辑行为。作为对给定的Request的响应,一个EditPolicy可以创建一个本源的(a derived Request)Request并将其转发到其他EditPolicies。
EditPolicies决定EditPart的编辑能力。使用EditPolicies的方式非常灵活并且面向对象。运用编辑策略,你可以为EditPart挑选编辑行为而不必被其类层次结构所束缚。代码重用性增加,并且代码管理更容易。
重要:此接口并不需要被程序员直接实现,你应该继承AbstractEditPolicy。将来会增加新的方法。
org.eclipse.gef.editpolicies.AbstractEditPolicy实现EditPolicy和org.eclipse.gef.RequestConstants 接口。

ComponentEditPolicy:基于模型的EditPolicy,适用于在容器内的组件。组件可以是任何东西,只要在一container内就行。基于模型的EditPolicy仅知道其宿主模型和它所支持的基本操作。默认的,ComponentEditPolicy理解从容器的DELETE和ORPHAN操作。其子类可加上对该模型指定的额外的行为的操作的支持。
ORPHAN 将被转发到其parent EditPart处理。
DELETE也将被转发到其parent EditPart,但子类可以通过覆载createDeleteCommand(GroupRequest) 自行处理。
ComponentEditPolicy 并非GraphicalEditPolicy,不能被用来显示反馈(Feedback),也不能和宿主的显示(visiuals)进行任何交互。也不能被用作ConnectionEditPart,Connection没有容器。
ConnectionEditPolicy:基于模型的EditPolicy,适用于Connection。ConnectionEditPolicy仅理解DELETE. 其子类可加上对该模型指定的额外的行为的操作的支持。此EditPolicy并非GraphicalEditPolicy,不能被用来显示反馈(Feedback),也不能和宿主的显示(visiuals)进行任何交互。
ContainerEditPolicy:用于容器的editpart. 此Policy用于如add、create、orphan Request的Command。
GraphicalEditPolicy:和GraphicalEditPart一起使用。所有的GraphicalEditPolicies在一定程度上包含Figure。它们使用Figure解释Request,或者使用图形化反馈(feedback)装饰Figure,如图形的选择。
此Policy提供方便的方法来处理宿主的Figure,给GraphicalViewer增加反馈。此Policy并不直接处理任何Request。
TreeContainerEditPolicy:用于在TreeEditPart中处理ADDS, MOVES, and CREATES。
发表评论
- 浏览: 16467 次
- 性别:

- 来自: 大连

- 详细资料
搜索本博客
我的相册
共 10 张
最近加入圈子
最新评论
-
近期英语学习计划
任重而道远 mmd 学外语真是场持久战
-- by metaphy -
从Spring MVC-step-by-ste ...
引用汗一个 教授派的吧啥意思...
-- by metaphy -
从Spring MVC-step-by-ste ...
汗一个 教授派的吧
-- by jianfeng008cn -
翻译:Java游戏开发
whycloud 写道 Nighthaven 写道 其实我觉得这书的中文 ...
-- by Nighthaven -
翻译:Java游戏开发
而且这本的中文版我看过的,总的来讲还不是特别的烂 不过支持lz自己翻译,翻译的过 ...
-- by whycloud






评论排行榜