Graphiti "New and Noteworthy" for Eclipse Mars

Last revised Mai 26, 2015

This document describes the new development topics that were addressed during the milestones towards the release 0.12.0 within the Mars release train.

RC2

The main focus for this milestone has been set on fixing bugs.
Bug 467502 A potential NullPointerException in DiagramComposite.getWorkbenchPart().getSite() has been fixed.
Bug 467824 To consume a security fix in org.apache.batik.dom Graphiti needed to update the batik dependency from 1.7.0 to 1.7.1

RC1

The main focus for this milestone has been set on fixing bugs.
Bug 464857 A bug in image handling causing a resource leak has been fixed.
Bug 466953 A potential NullPointerException in disposing the configuration provider has been fixed.
Bug 467476 A bug that allows the wrong initialization of the Graphiti palette root instance has been fixed.

M7

The main focus for this milestone has been set on fixing bugs.
Bug 459386 A bug causing rendering decorators on connections not being refreshed has been fixed.
Bug 459511 A NullPointerException in intersection calculation for anchors using a Polygon as graphics algorithm has been fixed.
Bug 463303 A NullPointerException in retrieving the editing domain for closing down editors has been fixed.
Bug 464596 An IndexOutOfBoundsException has been fixed in undo/redo handling.

M6

The main focus for this milestone has been set on fixing bugs.
Behavior classes rework The class DiagramBehavior and DiagramRefreshBehavior have been reworked to allow for easier subclassing and overriding. Some before protected or private members and methods are now accessible from subclasses and/or other behavior classes. This is a minor API change.
Bug 460019 A bug in one of the translatable texts has been fixed.
Bug 460486 A bug in one of the translatable texts has been fixed.

M5

The main focus for this milestone has been set on fixing bugs.
Bug 458465 A bug in finding the child shape in a container has been fixed. In case of shapes that were sent to back, a wrong shape might have been returned.

M4

The main focus for this milestone has been set on implementing improvements and fixing bugs.
Provide an abort possibility for delete and remove features Delete and remove features now also support abortion after the preDelete and preRemove hooks.
Bug 450884 The Graphiti "view" menu added in the editor now has an ID that clients can use in case the want to add own entries.
Bug 450993 A rendering issue with the context button pad has been fixed that occurred when the associated shape was not high enough.

M3

The main focus for this milestone has been set on implementing improvements and bugfixing.
Improve undo/redo handling The client options to influence undo/redo handling have been improved. There are now hooks before and after the actual EMF undo to implement own functionality. Also it is possible to abort undo/redo.
Bug 449384 A bug in the enablement check of the print action that on Linux systems potentially caused a hanging Diagram editor during opening has been fixed.

M2

The main focus for this milestone has been set on implementing improvements and bugfixing.
Additional createDiagram method To ease diagram creation a new service method has been introduced.
TextBuilder A TextBuilder helper class has been introduced to ease the creation of TextStyleRegions.
Asynchronous feature execution To enable the asynchronous execution of long running custom features a new base class AbstractAsynchronousCustomFeature has been introduced.
Bug 407894 The configuration and initialization of the graphival viewer inside diagram editors and viewers that happened so far by a hack has been made more robust. This required a minor API change.
Bug 412858 The bug that canUpdate was not called before updatedNeeded in some situations has finally been fixed. Clients might need to adapt to the new behavior, before they only got a warning that they do not behave correctly.
Bug 429531 The Graphiti EMF model has been alingned with the generated coding. This caused no behavioral changes but removed the need for manual corrections (like version tags, comments) after re-generating.
Bug 429532 Deprecations introduced in previous releases in the Graphiti coding have been removed. This required a API change.
Bug 442879 The Graphiti dependencies to other project like Eclipse platforms, EMF, GEF have been increased. Now at least the versions that are part of the Luna release train are required.
Bug 442895 Graphiti now uses Batik 1.7.0 for SVG export, before it used Batik 1.6.0..
Bug 439689 A bug that caused invisible pictogram elements to become marked with a selection border on setting the selection in the editor has been fixed.
Bug 440796 A bug that caused incorrect notifications on changing the rotation attribute of AbstractText has been fixed.

M1

The main focus for this milestone has been set on bugfixing.
Bug 437933 A potential NullPointerExecption in the method isDirty() in DefaultPersistencyBehavior has been fixed.
Bug 436601 A potential race condition in the save logic of DiagramEditor has been fixed. It could have caused erroneous update and refresh behaviors in the editor that are hard to track down.