Graphical Editing Framework: Difference between revisions

Content deleted Content added
Anyssen (talk | contribs)
Add link to Eclipse RCP.
m General fixes and Typo fixing, replaced: be build → be built using AWB
Line 1:
The '''Graphical Editing Framework''' '''(GEF)''' is an [[Eclipse (software)|Eclipse]] project that provides framework and end-user components related to graphical applications.
 
== History ==
GEF was initially developed as part of IBM's etools (com.ibm.etools.gef) and was contributed to [[Eclipse (software)|Eclipse]] in 2002 in version 2.0.0, consisting then of two components: Draw2d, a 2D visualization component based on the [[Standard Widget Toolkit|Standard Widget Toolkit (SWT)]] and GEF (MVC), a related model-view-controller framework that can be used to realized graphical editors as part of Eclipse Rich Client Platform (RCP) applications. The first release at Eclipse was GEF 2.1.0 in March 2003. The next major version, GEF 3.0.0, was released in June 2004, providing many new features like support for rules and guides. Zest was added as a third project component in 2007 in version 1.0.0 as part of the GEF 3.4.0 release. Since 2004, when GEF 3.0.0 was released, only compatible changes have been applied to the framework's application programming interface (API).
 
A new major revision of the framework has been developed in parallel to the maintenance of the GEF 3.x components by the project team since 2010. It is a complete redesign that is much more modular, uses JavaFX instead of SWT as underlying rendering framework, and can be used also independently of Eclipse RCP applications. Commonly referred to as GEF4, its components were initially released in version 0.1.0 (with still provisional API) in June 2015 as part of the GEF 3.10.0 (Mars) release. The GEF4 components are to be published in version 1.0.0 as part of the GEF 4.0.0 (Neon) release in June 2016.
Line 8:
== GEF 3.x ==
 
GEF 3.x provides framework technology to realize graphical editors and views as part of [[Eclipse (software)#Rich Client Platform| Eclipse Rich Client Platform (RCP)]] applications. It is internally decomposed into three components:
 
* Draw2d - A 2D visualization component based on the [[Standard Widget Toolkit|Standard Widget Toolkit (SWT)]]
Line 14:
* Zest - A graph-based visualization toolkit that can be used to realize views for visualization of graph-like data structures as part of Eclipse RCP applications
 
While graphical applications can be buildbuilt on top of the GEF 3.x components directly, Draw2d and GEF (MVC) are also used by the [[Graphical Modeling Framework|Graphical Modeling Framework (GMF)]], which combines them with the [[Eclipse Modeling Framework|Eclipse Modeling Framework (EMF)]] to create the code for both the data model and the graphical editor.
 
=== Architecture ===