Jump to: navigation, search

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

Line 18: Line 18:
 
* BEHAVIOR_NODES_CONTAINED_AND_RELATED_CONNECTIONS (supported since 3.1, formerly known as BEHAVIOR_NODES_AND_CONNECTIONS, which was in turn deprecated).
 
* BEHAVIOR_NODES_CONTAINED_AND_RELATED_CONNECTIONS (supported since 3.1, formerly known as BEHAVIOR_NODES_AND_CONNECTIONS, which was in turn deprecated).
  
Refactored MarqueeSelectionTool, by separating those code fragments depending on the current tool mode from those depending on the selected marquee behavior. Clients may now customize behavior of <code>MarqueeSelectionTool</code> by subclassing and customizing the following methods:
+
It was furthermore refactored to allow clients to customize marquee selection behavior via subclassing and overwriting one or more of the following methods:
 
* performMarqueeSelect()
 
* performMarqueeSelect()
 
* calculateMarqueeSelectedEditParts()
 
* calculateMarqueeSelectedEditParts()
 
* isMarqueeSelectable(EditPart)
 
* isMarqueeSelectable(EditPart)
  
The following methods are now exposed (protected visibility) so clients can consume them:
+
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:
 
* getCurrentMarqueeSelectionRectangle()
 
* getCurrentMarqueeSelectionRectangle()
 
* getCurrentSelectionMode()
 
* getCurrentSelectionMode()
 +
 +
See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=67991 67991] for details.
  
 
=== MatchSizeAction ===
 
=== MatchSizeAction ===

Revision as of 11:30, 3 November 2010

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:

  • getCurrentMarqueeSelectionRectangle()
  • getCurrentSelectionMode()

See 67991 for details.

MatchSizeAction

Similar to MatchWidthAction and MatchHeightAction, a concrete MatchSizeAction MatchSizeAction.png was now made available (see 107916).