Skip to main content
Jump to: navigation, search

GEF/New and Noteworthy/3.11

< GEF‎ | New and Noteworthy
Revision as of 03:54, 29 October 2015 by (Talk | contribs) (GEF4 MVC 0.3.0)


The GEF 3.11.0/4.0.0 (Neon) release provides minor revisions of the production components Draw2d 3.x (3.11.0), GEF (MVC) 3.x (3.11.0), and Zest 1.x (1.7.0), as well as minor or major revisions of the new GEF4 components (0.3.0/1.0.0). As declared in the project plan, the decision about whether GEF4 is provided in version 1.0.0 or 0.3.0 (and whether the overall release is a 4.0.0 or 3.11.0) will be made up to M5.

Please note that even if GEF 3.11.1/4.0.0 may be a minor release, incompatible changes to the provisional API of GEF4 will be made. These are highlighted below as [INCOMPATIBLE CHANGE].

GEF4 FX 0.3.0

[INCOMPATIBLE CHANGE] Split FX.UI module into FX.SWT and FX.JFace modules (M2)

Renamed FX.UI module into FX.SWT module and added FXColorPicker, FXSimpleLinearGradientPicker, and FXAdvancedLinearGradientPicker, which were provided by MVC.FX.UI module before (refactored from AbstractFXColorPicker, FXColorPicker, FXSimpleGradientPicker, and FXAdvancedGradientPicker). Introduced new FX.JFace module, which provides FXPaintCellEditor and FXPaintSelectionDialog, which were provided by MVC.FX.UI module before (refactored from FXFillCellEditor and FXFillSelectionDialog).

[INCOMPATIBLE CHANGE] Moved over (and refactored) IFXCanvasFactory from MVC.UI

Moved over IFXCanvasFactory and changed signature of the create method to take an additional SWT style.

GEF4 MVC 0.3.0

[INCOMPATIBLE CHANGE] Moved cell editor, dialogs, and pickers from MVC.FX.UI to FX.SWT and FX.JFace (M2)

Refactored AbstractFXColorPicker, FXColorPicker, FXSimpleGradientPicker, and FXAdvancedGradientPicker and moved them into FX.SWT (renamed from FX.UI). Refactored FXFillCellEditor and FXFillSelectionDialog and moved them into FX.JFace.

[INCOMPATIBLE CHANGE] Refactored FXTransformPolicy (MVC.FX) and the related policies (M2)

The FXTransformPolicy now provides an API for the creation and manipulation of transformation matrices. These matrices are then concatenated, together with the initial host transformation matrix, to yield the new host transformation matrix. Therefore, complex transformations can be set up properly at one point, and the important values can be changed later on, e.g. during user interaction.

Moreover, the related policies (FXRelocateConnectionPolicy, FXRelocateOnDragPolicy, FXResizeRelocateOnHandleDragPolicy, FXResizeRelocatePolicy, FXRotatePolicy, FXRotateSelectedOnHandleDragPolicy, FXRotateSelectedOnRotatePolicy, FXScaleRelocateOnHandleDragPolicy, and FXScaleRelocatePolicy) have been renamed to express the actual transformation (e.g. "translate" instead of "relocate"). Additionally, the intermediate FXResizeRelocatePolicy, FXRotatePolicy, and FXScaleRelocatePolicy have been removed. The policies that were dependent on those intermediate policies are now directly using the FXTransformPolicy.

[INCOMPATIBLE CHANGE] Refactored ContentPolicy, CreationPolicy, and DeletionPolicy (M2)

Cleaned up ContentPolicy to only provide operations related to the content of the respective host part. It is intended to be registered at each IContentPart. Moved all "higher-level" operations into CreationPolicy and DeletionPolicy, which are to be registered at the IRootPart alone.

GEF4 Zest

[INCOMPATIBLE CHANGE] Factored out Zest.FX.JFace from Zest.FX.UI (M2)

Separeted out the Zest JFace-API into an own module, so it can be consumed without introducing dependencies on the Eclipse Workbench UI.

[INCOMPATIBLE CHANGE] Removed IEdgeDecorationProvider (M2)

Removed IEdgeDecorationProvider from Zest.FX.Jface. Respective ZestProperties.EDGE_SOURCE_DECORATION and ZestProperties.EDGE_TARGET_DECORATION attributes may be provided via IGraphNodeLabelProvider#getEdgeAttributes() instead.

Back to the top