GEF/New and Noteworthy/3.7
Refactoring of Geometry API
Geometry API was refactored to guarantee consistency between integer-precision and double-precision version of
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.
Refactoring of Layout and PrimaryDrag edit policies
MarqueeSelectionTool was enhanced to now offer the following default marquee behaviors:
- BEHAVIOR_CONNECTIONS_TOUCHED (supported since 3.1)
- BEHAVIOR_NODES_CONTAINED (supported since 3.1, default behavior)
- 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:
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:
See 67991 for details.
MatchHeightAction, a concrete
MatchSizeAction was now made available (see 107916).