Contents

Draw2d

Refactoring of Geometry API

Geometry API was refactored to guarantee consistency between integer-precision and double-precision version of Point/PrecisionPoint, Dimension/PrecisionDimension, and Rectangle/PrecisionRectangle. Synchronization between the still exposed integer-precision fields (x, y, width, height) and the no-longer exposed double-precision fields (preciseX, preciseY, preciseWidth, preciseHeight) is performed automatically by precision classes now, so clients may use the precision versions transparently, being no longer forced to perform a manual update of the respective fields. See 124904, 142628, and 271235 for details.

GEF

Refactoring of Layout and PrimaryDrag edit policies

TODO

MarqueeSelectionTool

MarqueeSelectionTool was enhanced to now offer the following default marquee behaviors:

BEHAVIOR_CONNECTIONS_TOUCHED (supported since 3.1)

BEHAVIOR_CONNECTIONS_CONTAINED

BEHAVIOR_NODES_TOUCHED

BEHAVIOR_NODES_CONTAINED (supported since 3.1, default behavior)

BEHAVIOR_NODES_TOUCHED_AND_RELATED_CONNECTIONS

BEHAVIOR_NODES_CONTAINED_AND_RELATED_CONNECTIONS (supported since 3.1, formerly known as BEHAVIOR_NODES_AND_CONNECTIONS, which was in turn deprecated).

It was furthermore refactored to allow clients to customize marquee selection behavior via subclassing and overwriting one or more of the following methods:

performMarqueeSelect()

calculateMarqueeSelectedEditParts()

isMarqueeSelectable(EditPart)

The following methods are now also exposed (protected visibility) so clients can use access the current tool mode and the selection rectangle in their customization code: