1:GEF mvc framework
2:policy 所有的POLICY应该是注册在visual....part中的
每一个POLICY来生命相应的COMMMAND,可能会对应多个COMMMAND
3:visualGraph -->rootEditpart--->
configureGraphviewer()
---super.configureGraphviewer()
---getGraphicalViewer().setRootEditPart(rootEditPart);
---getGraphicalViewer().setEditPartFactory(new GraphEdirPartFactory());
以上属于把ROOTEDITPART和EDIRPARTFACTORY()注册到当前的Graphicalviewer当中
内部已经已经封装好了监听,就跟STRUT一样,你配置好,提交的时候就会又相应的ACTION去执行他,
CONFIG--->STRUTS-CONFIG ======= 当前的REISTRY graphicalView().set()....
control核心 -->strust-actionServlet 和requestProcessor ======= 当前的editpart 的GraphEditPartFactory();
实际的action struts-action =========每个editpart --->policy -- >可能对应多格COMMAND
4:commmandstack.addCommandStackListner();
getSite().getWorkBenchWindow().getSelectionService().addSelectionListener(this)
rootEidtpart.getZoomManger();
ZoomManger也是ACTION所以就注册在了EDITPART中了
5:我的疑问:
FIGURE和VERTEX GROUP,EDGE,GRAP的关系,是最小的????
FIGURE是未来显示在EDITOR里面的最小单元???
6:EDITOR里面的CreateGraphicalViewer(Composite composite)
7:editpart initialize the editdomain,viewers,palette,
editpart bootstraps the editpartviewers as content;
8:
Model:
The model should be changed using commands
View:
View can bi several things
(1) visual part,which serves as the primary represention for model object
(2) the most flexible visual part are Figures form drar2d
Cotroler:
(1)a controller is an editpart,Editparts are the bread-and-butter of GEF
(2) the entire view is managed by Editpart
(3) editPart's responsibility is to manipulate the model with commands,complex model can lead to
complex commands
(4)to make editpart's job easier,each role is implemented by a pluggable object called editpolicy
9: Result:
(1)edit part reprents a single conceptual object with which user can use direct or indirect interact
but an editpart itself is not visible to user,but will represent itself through it's view
10:
(1)
each editpart istall one or more editpolicies,editpart foward edit request to every installed editPolicy
=================================11:Using EditPolicies,request,roles===============
(1)Editpolicy
an editpart iterates over all it's policies to handle requests,but editpolicy ignore the request
(2)role
as i understand ,role is string ,like COMPONENT_ROLE..
(3)request
are used to communicate with an editpart
(4) role and editpolicies in GEF are partitioned into two basic types:graphical and non-graphical
posted on 2006-04-13 08:55
小小程序程序员混口饭吃 阅读(212)
评论(0) 编辑 收藏 所属分类:
java