First of all, thank octal for their hard work and dedication. I'm interested in GEF these days, and the Octal GEF series is a great introduction to my learning. I also have a handy record of what I learned on the weekends. Help later scholars. I will take these days to learn to write hope that everyone support. At present, is worrying about the octal example, I have added resizeeditpolicy to the Nodepart, but I do not know why the mouse drag when there is a gray area with the change, but when the mouse is released, the nodefigure size does not change, Is it because the size is solidified in the refreshvisuals, in code learning ....
Eclipse's GEF related project description.
Introduction to the objectives:
DRAW2D: A 2-D graphics Library (figure) is set up to display 2-D graphics.
GEF: (graphical Editing framework) to establish a standard MVC framework, the code uses DRAW2D as its own view section, and the main code implements the controller of the complex tree (corresponding to model respectively). The implemented framework is highly reusable, such as the ability to decompose a graphical part function into multiple editpolicy, so that users can customize it through the Installeditpolicy interface, and expand one of their features.
EMF: (Eclipse modeling Framework) first developed in a lightweight project as well as early in the project, model often uses a property-owning Java object to simply express "that Plain old Java Objects (POJOs) 】。 EMF defines a set of Ecore meta models, which makes model framwork easy to maintain, easy to expand, and easy for data exchange. Therefore, in the actual large-scale projects will often adopt a draw2d+gef+emf approach to achieve the overall MVC pattern. For example: Rose's latest version of IBM. Rational.Software.Architect is using this framework.
GMF: (Graphical modeling framework) uses GEF and EMF to establish a bridge framework between two, while implementing exemplary applications in a number of areas, such as UML diagrams, Gantt charts, brain maps, etc. (The project is in progress and these features are not yet complete.) Can be used to reference to achieve one of their own standard GEF+EMF applications).
Each project dependency relationship:
As shown above: Users can have several uses:
Emf:model Management level
draw2d: two dimensional graphic display
draw2d + GEF: A simple editing module for two-dimensional graphics
draw2d + GEF + EMF: two-dimensional graphic editing module
draw2d + GEF + EMF + GMF: Extended on top of the graphical editing capabilities provided by GMF