setSelectedRanges(_:affinity:stillSelecting:)
Sets the selection to the characters in an array of ranges in response to user action.
Declaration
func setSelectedRanges(_ ranges: [NSValue], affinity: NSSelectionAffinity, stillSelecting stillSelectingFlag: Bool)Parameters
- ranges:
A non-nil, non-empty array of objects responding to the NSValue
rangeValuemethod. The ranges in therangesarray must begin and end on glyph boundaries and not split base glyphs and their nonspacing marks. - affinity:
The selection affinity for the selection. See Selectionaffinity for more information about how affinities work.
- stillSelectingFlag:
True to behave appropriately for a continuing selection where the user is still dragging the mouse, False otherwise. If True, the receiver doesn’t send notifications or remove the marking from its marked text. If False, the receiver posts an Didchangeselectionnotification to the default notification center and removes the marking from marked text if the new selection is greater than the marked region.
Discussion
This method also resets the selection granularity to NSSelectByCharacter.