Skip to main content
Jump to: navigation, search

Difference between revisions of "GEF/New and Noteworthy/3.10.1"

(#469478 DefaultSelectionProvider was moved (M1))
Line 12: Line 12:
 
The [https://projects.eclipse.org/projects/tools.gef/releases/3.10.1-mars-sr1 GEF 3.10.1 (Mars SR1)] release provides service releases for the production components [https://www.eclipse.org/gef/draw2d/ Draw2d 3.x] (3.10.1), [https://www.eclipse.org/gef/gef_mvc/index.php GEF (MVC) 3.x] (3.10.1), and [https://www.eclipse.org/gef/zest/index.php Zest 1.x] (1.6.1), as well as for the new [[GEF/GEF4|GEF4]] components (0.1.1).
 
The [https://projects.eclipse.org/projects/tools.gef/releases/3.10.1-mars-sr1 GEF 3.10.1 (Mars SR1)] release provides service releases for the production components [https://www.eclipse.org/gef/draw2d/ Draw2d 3.x] (3.10.1), [https://www.eclipse.org/gef/gef_mvc/index.php GEF (MVC) 3.x] (3.10.1), and [https://www.eclipse.org/gef/zest/index.php Zest 1.x] (1.6.1), as well as for the new [[GEF/GEF4|GEF4]] components (0.1.1).
  
=== Breaking changes of provisional API from 0.1.0 to 0.1.1 ===
+
While [https://projects.eclipse.org/projects/tools.gef/releases/3.10.1-mars-sr1 GEF 3.10.1 (Mars SR1)] is a bugfix release, some minor adjustments have been applied to the provisional API of GEF4. These are highlighted below.
While [https://projects.eclipse.org/projects/tools.gef/releases/3.10.1-mars-sr1 GEF 3.10.1 (Mars SR1)] is a bugfix release, some minor adjustments have been applied to the provisional API of GEF4.  
+
 
+
==== DefaultSelectionProvider was moved (M1) ====
+
<code>org.eclipse.gef4.mvc.fx.ui.DefaultSelectionProvider</code> was moved to <code>org.eclipse.gef4.mvc.ui.DefaultSelectionProvider</code> because it is independent of JavaFX ([https://bugs.eclipse.org/bugs/show_bug.cgi?id=469478 #469478]).
+
 
+
==== [https://bugs.eclipse.org/bugs/show_bug.cgi?id=469583 #469583] FXMouseDragGesture, FXPinchSpreadGesture, and FXRotateGesture were renamed (M1) ====
+
The <code>FXMouseDragGesture</code>, <code>FXPinchSpreadGesture</code>, and <code>FXRotateGesture</code> abstract base implementations located in package <code>org.eclipse.gef4.fx.gestures</code> were renamed to consistently use the 'Abstract' prefix:
+
* <code>org.eclipse.gef4.fx.gestures.FXMouseDragGesture</code> was renamed to <code>org.eclipse.gef4.fx.gestures.AbstractFXMouseDragGesture</code>
+
* <code>org.eclipse.gef4.fx.gestures.FXPinchSpreadGesture</code> was renamed to <code>org.eclipse.gef4.fx.gestures.AbstractFXPinchSpreadDragGesture</code>
+
* <code>org.eclipse.gef4.fx.gestures.FXRotateGesture</code> was renamed to <code>org.eclipse.gef4.fx.gestures.AbstractFXRotateGesture</code>
+
 
+
==== [https://bugs.eclipse.org/bugs/show_bug.cgi?id=472646 #472646] FXViewer was changed to enable that it can work with a shared JavaFX scene (M2) ====
+
* The contract of <code>org.eclipse.gef4.mvc.fx.viewer.FXViewer</code> was changed so that it is no longer responsible of constructing a JavaFX scene and hooking it into an <code>org.eclipse.gef4.mvc.fx.viewer.ISceneContainer</code>. Instead <code>FXViewer</code> is now only responsible of constructing its own visuals (lazily within <code>#getScrollPane()</code>) and hooking the root part visuals into it.
+
* The now obsolete <code>org.eclipse.gef4.mvc.fx.viewer.ISceneContainer</code> abstraction and the related <code>org.eclipse.gef4.mvc.fx.FXStageSceneContainer</code>, and <code>org.eclipse.gef4.mvc.fx.ui.FXCanvasSceneContainer</code> implementations were removed.
+
  
 
----
 
----
Line 45: Line 31:
  
 
== GEF4 FX 0.1.1 ==
 
== GEF4 FX 0.1.1 ==
 +
 +
==== [INCOMPATIBLE CHANGE] FXMouseDragGesture, FXPinchSpreadGesture, and FXRotateGesture were renamed (M1) ====
 +
* [https://bugs.eclipse.org/bugs/show_bug.cgi?id=469583 #469583]
 +
The <code>FXMouseDragGesture</code>, <code>FXPinchSpreadGesture</code>, and <code>FXRotateGesture</code> abstract base implementations located in package <code>org.eclipse.gef4.fx.gestures</code> were renamed to consistently use the 'Abstract' prefix:
 +
* <code>org.eclipse.gef4.fx.gestures.FXMouseDragGesture</code> was renamed to <code>org.eclipse.gef4.fx.gestures.AbstractFXMouseDragGesture</code>
 +
* <code>org.eclipse.gef4.fx.gestures.FXPinchSpreadGesture</code> was renamed to <code>org.eclipse.gef4.fx.gestures.AbstractFXPinchSpreadDragGesture</code>
 +
* <code>org.eclipse.gef4.fx.gestures.FXRotateGesture</code> was renamed to <code>org.eclipse.gef4.fx.gestures.AbstractFXRotateGesture</code>
  
 
==== Fixed a Java 8-related bug where chop box anchor positions were not computed (M1) ====
 
==== Fixed a Java 8-related bug where chop box anchor positions were not computed (M1) ====
Line 53: Line 46:
 
== GEF4 MVC 0.1.1 ==
 
== GEF4 MVC 0.1.1 ==
  
==== Fixed a bug where the undo history was incorrectly cleared (M1) ====
+
==== [INCOMPATIBLE CHANGE] DefaultSelectionProvider was moved (M1) ====
* [https://bugs.eclipse.org/bugs/show_bug.cgi?id=470028 #470028]
+
* [https://bugs.eclipse.org/bugs/show_bug.cgi?id=469478 #469478]
 +
<code>org.eclipse.gef4.mvc.fx.ui.DefaultSelectionProvider</code> was moved to <code>org.eclipse.gef4.mvc.ui.DefaultSelectionProvider</code> because it is independent of JavaFX.
  
==== Enhanced the default resize mechanism for better customizability (M1) ====
+
==== [INCOMPATIBLE CHANGE] Fixed that FXViewer could not share a JavaFX scene (M2) ====
You can now define the visual that is resized (only the part's "main" visual was allowed before), and also define the initial size (the visual's layout-bounds were used before).
+
* [https://bugs.eclipse.org/bugs/show_bug.cgi?id=471031 #471031]
+
 
+
==== Fixed a bug where the way points of a connection were "jumping"/changing position (M1) ====
+
* [https://bugs.eclipse.org/bugs/show_bug.cgi?id=466616 #466616]
+
 
+
==== Added checks to determine the dirty state of an FXEditor based on the undo-history (M1) ====
+
* [https://bugs.eclipse.org/bugs/show_bug.cgi?id=470612 #470612]
+
 
+
==== Added a widget for creating/manipulating multi-stop linear gradients (M1) ====
+
* [https://bugs.eclipse.org/bugs/show_bug.cgi?id=469491 #469491]
+
[[Image:GEF4-MVC-FX-UI-FXFillSelectionDialog-advanced.png|The FXAdvancedGradientPicker embedded into a property edit dialog.]]
+
 
+
==== Fixed that FXViewer could not share a JavaFX scene (M2) ====
+
 
* [https://bugs.eclipse.org/bugs/show_bug.cgi?id=472646 #472646]
 
* [https://bugs.eclipse.org/bugs/show_bug.cgi?id=472646 #472646]
  
Line 102: Line 82:
 
primaryStage.setScene(new Scene(sp));
 
primaryStage.setScene(new Scene(sp));
 
</source>
 
</source>
 +
 +
The now obsolete <code>org.eclipse.gef4.mvc.fx.viewer.ISceneContainer</code> abstraction and the related <code>org.eclipse.gef4.mvc.fx.FXStageSceneContainer</code>, and <code>org.eclipse.gef4.mvc.fx.ui.FXCanvasSceneContainer</code> implementations were removed.
 +
 +
==== Fixed a bug where the undo history was incorrectly cleared (M1) ====
 +
* [https://bugs.eclipse.org/bugs/show_bug.cgi?id=470028 #470028]
 +
 +
==== Enhanced the default resize mechanism for better customizability (M1) ====
 +
You can now define the visual that is resized (only the part's "main" visual was allowed before), and also define the initial size (the visual's layout-bounds were used before).
 +
* [https://bugs.eclipse.org/bugs/show_bug.cgi?id=471031 #471031]
 +
 +
==== Fixed a bug where the way points of a connection were "jumping"/changing position (M1) ====
 +
* [https://bugs.eclipse.org/bugs/show_bug.cgi?id=466616 #466616]
 +
 +
==== Added checks to determine the dirty state of an FXEditor based on the undo-history (M1) ====
 +
* [https://bugs.eclipse.org/bugs/show_bug.cgi?id=470612 #470612]
 +
 +
==== Added a widget for creating/manipulating multi-stop linear gradients (M1) ====
 +
* [https://bugs.eclipse.org/bugs/show_bug.cgi?id=469491 #469491]
 +
[[Image:GEF4-MVC-FX-UI-FXFillSelectionDialog-advanced.png|The FXAdvancedGradientPicker embedded into a property edit dialog.]]
 +
 
[[Category:GEF]]
 
[[Category:GEF]]

Revision as of 02:47, 15 July 2015

General

The GEF 3.10.1 (Mars SR1) release provides service releases for the production components Draw2d 3.x (3.10.1), GEF (MVC) 3.x (3.10.1), and Zest 1.x (1.6.1), as well as for the new GEF4 components (0.1.1).

While GEF 3.10.1 (Mars SR1) is a bugfix release, some minor adjustments have been applied to the provisional API of GEF4. These are highlighted below.


GEF4 Geometry 0.1.1

Aligned background color within the examples and added window titles where missing (M1)


GEF4 Layout 0.1.1

Fixed a bug where dynamic layout was not applied although it should (M1)


GEF4 FX 0.1.1

[INCOMPATIBLE CHANGE] FXMouseDragGesture, FXPinchSpreadGesture, and FXRotateGesture were renamed (M1)

The FXMouseDragGesture, FXPinchSpreadGesture, and FXRotateGesture abstract base implementations located in package org.eclipse.gef4.fx.gestures were renamed to consistently use the 'Abstract' prefix:

  • org.eclipse.gef4.fx.gestures.FXMouseDragGesture was renamed to org.eclipse.gef4.fx.gestures.AbstractFXMouseDragGesture
  • org.eclipse.gef4.fx.gestures.FXPinchSpreadGesture was renamed to org.eclipse.gef4.fx.gestures.AbstractFXPinchSpreadDragGesture
  • org.eclipse.gef4.fx.gestures.FXRotateGesture was renamed to org.eclipse.gef4.fx.gestures.AbstractFXRotateGesture

Fixed a Java 8-related bug where chop box anchor positions were not computed (M1)


GEF4 MVC 0.1.1

[INCOMPATIBLE CHANGE] DefaultSelectionProvider was moved (M1)

org.eclipse.gef4.mvc.fx.ui.DefaultSelectionProvider was moved to org.eclipse.gef4.mvc.ui.DefaultSelectionProvider because it is independent of JavaFX.

[INCOMPATIBLE CHANGE] Fixed that FXViewer could not share a JavaFX scene (M2)

FXViewer was responsible of creating a JavaFX scene and was provided with an ISceneContainer implementation, to hook the scene into a Stage (standalone) or FXCanvas (Eclipse UI integration) as follows:

// standalone
viewer.setSceneContainer(new FXStageSceneContainer(primaryStage));
 
// Eclipse UI integration
viewer.setSceneContainer(new FXCanvasSceneContainer(canvas));

The FXViewer had full control over the scene creation, so other root visuals than those provided by the viewer could not be set for the scene. This responsibility was moved out of FXViewer, so its visuals are now hooked into the scene as follows:

// standalone
primaryStage.setScene(new Scene(viewer.getScrollPane()));
 
// Eclipse UI integration
canvas.setScene(new Scene(viewer.getScrollPane()));

Thereby, several FXViewers can now share a single scene, which is e.g. necessary to create a palette viewer. By means of an JavaFX SplitPane, this could look like follows:

// embed two viewers into a single scene by means of a SplitPane
SplitPane sp = new SplitPane();
sp.getItems().addAll(viewer1.getScrollPane(), viewer2.getScrollPane());
sp.setDividerPositions(0.5f);
primaryStage.setScene(new Scene(sp));

The now obsolete org.eclipse.gef4.mvc.fx.viewer.ISceneContainer abstraction and the related org.eclipse.gef4.mvc.fx.FXStageSceneContainer, and org.eclipse.gef4.mvc.fx.ui.FXCanvasSceneContainer implementations were removed.

Fixed a bug where the undo history was incorrectly cleared (M1)

Enhanced the default resize mechanism for better customizability (M1)

You can now define the visual that is resized (only the part's "main" visual was allowed before), and also define the initial size (the visual's layout-bounds were used before).

Fixed a bug where the way points of a connection were "jumping"/changing position (M1)

Added checks to determine the dirty state of an FXEditor based on the undo-history (M1)

Added a widget for creating/manipulating multi-stop linear gradients (M1)

The FXAdvancedGradientPicker embedded into a property edit dialog.

Back to the top