Adobe® Flex® 4 Language Reference
Show Packages and Classes List |  Packages  |  Classes  |  Index  |  Appendixes
flashx.textLayout.edit 
ISelectionManager 
Packageflashx.textLayout.edit
Interfacepublic interface ISelectionManager extends IInteractionEventHandler
Implementors SelectionManager

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

The ISelectionManager interface defines the interface for handling text selection.

A SelectionManager keeps track of the selected text range and handles events for a TextFlow.

A selection can be either a point selection or a range selection. A point selection is the insertion point and is indicated visually by drawing a cursor. A range selection includes the text between an anchor point and an active point.

See also



Public Properties
 PropertyDefined By
  absoluteEnd : int
[read-only] The text position of the end of the selection, as an offset from the start of the text flow.
ISelectionManager
  absoluteStart : int
[read-only] The text position of the start of the selection, as an offset from the start of the text flow.
ISelectionManager
  activePosition : int
[read-only] The active point of the selection.
ISelectionManager
  anchorPosition : int
[read-only] The anchor point of the selection.
ISelectionManager
  currentSelectionFormat : SelectionFormat
[read-only] The current SelectionFormat object.
ISelectionManager
  editingMode : String
[read-only] The editing mode.
ISelectionManager
  focused : Boolean
[read-only] Indicates whether a container in the text flow has the focus.
ISelectionManager
  focusedSelectionFormat : SelectionFormat
The SelectionFormat object used to draw the selection in a focused container.
ISelectionManager
  inactiveSelectionFormat : SelectionFormat
The SelectionFormat object used to draw the selection when it is not in the active window.
ISelectionManager
  textFlow : flashx.textLayout.elements:TextFlow
The TextFlow object managed by this selection manager.
ISelectionManager
  unfocusedSelectionFormat : SelectionFormat
The SelectionFormat object used to draw the selection when it is not in a focused container, but is in the active window.
ISelectionManager
  windowActive : Boolean
[read-only] Indicates whether the window associated with the text flow is active.
ISelectionManager
Public Methods
 MethodDefined By
 Inherited
Processes an activate event.
IInteractionEventHandler
 Inherited
Processes a deactivate event.
IInteractionEventHandler
 Inherited
Processes an edit event.
IInteractionEventHandler
  
Executes any pending FlowOperations.
ISelectionManager
 Inherited
Processes a focusChange event.
IInteractionEventHandler
 Inherited
Processes a focusIn event.
IInteractionEventHandler
 Inherited
Processes a focusOut event.
IInteractionEventHandler
  
Gets the character format attributes that are common to all characters in the specified text range or current selection.
ISelectionManager
  
Gets the container format attributes that are common to all containers in the specified text range or current selection.
ISelectionManager
  
Gets the paragraph format attributes that are common to all paragraphs in the specified text range or current selection.
ISelectionManager
  
Gets the SelectionState object of the current selection.
ISelectionManager
  
Indicates whether there is a selection.
ISelectionManager
 Inherited
Processes an imeStartComposition event
IInteractionEventHandler
  
Indicates whether the selection covers a range of text.
ISelectionManager
 Inherited
Processes a keyDown event.
IInteractionEventHandler
 Inherited
Processes a keyFocusChange event.
IInteractionEventHandler
 Inherited
Processes a keyUp event.
IInteractionEventHandler
 Inherited
Processes a menuSelect event.
IInteractionEventHandler
 Inherited
Processes a mouseDoubleClick event.
IInteractionEventHandler
 Inherited
Processes a mouseDown event.
IInteractionEventHandler
 Inherited
Processes a mouseMove event.
IInteractionEventHandler
 Inherited
Processes a mouseOut event.
IInteractionEventHandler
 Inherited
Processes a mouseOver event.
IInteractionEventHandler
 Inherited
Processes a mouseUp event.
IInteractionEventHandler
 Inherited
Processes a mouseWheel event.
IInteractionEventHandler
  
notifyInsertOrDelete(absolutePosition:int, length:int):void
Updates the selection manager when text is inserted or deleted.
ISelectionManager
  
Redisplays the selection shapes.
ISelectionManager
  
Selects the entire flow
ISelectionManager
  
selectRange(anchorPosition:int, activePosition:int):void
Selects a range of text.
ISelectionManager
  
Gives the focus to the first container in the selection.
ISelectionManager
  
Sets the SelectionState object of the current selection.
ISelectionManager
 Inherited
Processes a TextEvent.
IInteractionEventHandler
Property Detail

absoluteEnd

property
absoluteEnd:int  [read-only]

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

The text position of the end of the selection, as an offset from the start of the text flow.

The absolute end is the same as either the active or the anchor point of the selection, whichever comes last in the text flow.



Implementation
    public function get absoluteEnd():int

absoluteStart

property 
absoluteStart:int  [read-only]

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

The text position of the start of the selection, as an offset from the start of the text flow.

The absolute start is the same as either the active or the anchor point of the selection, whichever comes first in the text flow.



Implementation
    public function get absoluteStart():int

activePosition

property 
activePosition:int  [read-only]

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

The active point of the selection.

The active point is the volatile end of the selection. The active point is changed when the selection is modified. The active point can be at either the beginning or the end of the selection.



Implementation
    public function get activePosition():int

anchorPosition

property 
anchorPosition:int  [read-only]

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

The anchor point of the selection.

An anchor point is the stable end of the selection. When the selection is extended, the anchor point does not change. The anchor point can be at either the beginning or the end of the selection.



Implementation
    public function get anchorPosition():int

currentSelectionFormat

property 
currentSelectionFormat:SelectionFormat  [read-only]

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

The current SelectionFormat object.

The current SelectionFormat object is chosen from the SelectionFormat objects assigned to the unfocusedSelectionFormat, inactiveSelectionFormat and focusedSelectionFormat properties based on the current state of the windowActive and focused properties.



Implementation
    public function get currentSelectionFormat():SelectionFormat

editingMode

property 
editingMode:String  [read-only]

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

The editing mode.

The editing mode indicates whether the text flow supports selection, editing, or only reading. A text flow is made selectable by assigning a selection manager and editable by assigning an edit manager. Constants representing the editing modes are defined in the EditingMode class.



Implementation
    public function get editingMode():String

See also

flashx.textLayout.EditingMode

focused

property 
focused:Boolean  [read-only]

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Indicates whether a container in the text flow has the focus.

The focused property is true if any of the containers in the text flow has key focus.



Implementation
    public function get focused():Boolean

focusedSelectionFormat

property 
focusedSelectionFormat:SelectionFormat

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

The SelectionFormat object used to draw the selection in a focused container.



Implementation
    public function get focusedSelectionFormat():SelectionFormat
    public function set focusedSelectionFormat(value:SelectionFormat):void

inactiveSelectionFormat

property 
inactiveSelectionFormat:SelectionFormat

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

The SelectionFormat object used to draw the selection when it is not in the active window.



Implementation
    public function get inactiveSelectionFormat():SelectionFormat
    public function set inactiveSelectionFormat(value:SelectionFormat):void

textFlow

property 
textFlow:flashx.textLayout.elements:TextFlow

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

The TextFlow object managed by this selection manager.

A selection manager manages a single text flow. A selection manager can also be assigned to a text flow by setting the interactionManager property of the TextFlow object.



Implementation
    public function get textFlow():flashx.textLayout.elements:TextFlow
    public function set textFlow(value:flashx.textLayout.elements:TextFlow):void

See also

unfocusedSelectionFormat

property 
unfocusedSelectionFormat:SelectionFormat

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

The SelectionFormat object used to draw the selection when it is not in a focused container, but is in the active window.



Implementation
    public function get unfocusedSelectionFormat():SelectionFormat
    public function set unfocusedSelectionFormat(value:SelectionFormat):void

windowActive

property 
windowActive:Boolean  [read-only]

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Indicates whether the window associated with the text flow is active.

The windowActive property is true if the window displaying with the text flow is the active window.



Implementation
    public function get windowActive():Boolean
Method Detail

flushPendingOperations

()method
public function flushPendingOperations():void

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Executes any pending FlowOperations.

The execution of some editing operations, such as text insertion, is delayed until the next enterFrame event. Calling flushPendingOperations() causes any deferred operations to be executed immediately.

getCommonCharacterFormat

()method 
public function getCommonCharacterFormat(range:flashx.textLayout.elements:TextRange = null):flashx.textLayout.formats:ITextLayoutFormat

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Gets the character format attributes that are common to all characters in the specified text range or current selection.

Format attributes that do not have the same value for all characters in the specified element range or selection are set to null in the returned ITextLayoutFormat instance.

Parameters

range:flashx.textLayout.elements:TextRange (default = null) — The optional range of text for which common attributes are requested. If null, the current selection is used.

Returns
flashx.textLayout.formats:ITextLayoutFormat — The common character style settings

Example  ( How to use this example )

The following example illustrates how to get an ITextLayoutFormat object containing the character style settings common to all elements in the selection. (The textFlow variable in the example is a TextFlow object.)
 var common:ITextLayoutFormat = textFlow.interactionManager.getCommonCharacterFormat();

getCommonContainerFormat

()method 
public function getCommonContainerFormat(range:flashx.textLayout.elements:TextRange = null):flashx.textLayout.formats:ITextLayoutFormat

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Gets the container format attributes that are common to all containers in the specified text range or current selection.

Format attributes that do not have the same value for all containers in the specified element range or selection are set to null in the returned ITextLayoutFormat instance.

Parameters

range:flashx.textLayout.elements:TextRange (default = null) — The optional range of text for which common attributes are requested. If null, the current selection is used.

Returns
flashx.textLayout.formats:ITextLayoutFormat — The common container style settings

Example  ( How to use this example )

The following example illustrates how to get an ITextLayoutFormat object containing the container style settings common to all elements in the selection. (The textFlow variable in the example is a TextFlow object.)
 var common:ITextLayoutFormat = textFlow.interactionManager.getCommonContainerFormat();

getCommonParagraphFormat

()method 
public function getCommonParagraphFormat(range:flashx.textLayout.elements:TextRange = null):flashx.textLayout.formats:ITextLayoutFormat

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Gets the paragraph format attributes that are common to all paragraphs in the specified text range or current selection.

Format attributes that do not have the same value for all paragraphs in the specified element range or selection are set to null in the returned ITextLayoutFormat instance.

Parameters

range:flashx.textLayout.elements:TextRange (default = null) — The optional range of text for which common attributes are requested. If null, the current selection is used.

Returns
flashx.textLayout.formats:ITextLayoutFormat — The common paragraph style settings

Example  ( How to use this example )

The following example illustrates how to get an ITextLayoutFormat object containing the paragraph style settings common to all elements in the selection. (The textFlow variable in the example is a TextFlow object.)
 var common:ITextLayoutFormat = textFlow.interactionManager.getCommonParagraphFormat();

getSelectionState

()method 
public function getSelectionState():SelectionState

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Gets the SelectionState object of the current selection.

Returns
SelectionState

See also


Example  ( How to use this example )

The following example gets a SelectionState object for the current selection in a text flow. (The textFlow variable in the example is a TextFlow object.)
 var selection:SelectionState = textFlow.interactionManager.getSelectionState();

hasSelection

()method 
public function hasSelection():Boolean

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Indicates whether there is a selection.

Returns true if there is either a range selection or a point selection. By default, when a selection manager is first set up, there is no selection (the start and end are -1).

Returns
Boolean

Example  ( How to use this example )

The following example illustrates how to determine whether there a text flow has a selection. (The textFlow variable in the example is a TextFlow object.)
 var selection:SelectionState = textFlow.interactionManager.hasSelection();

isRangeSelection

()method 
public function isRangeSelection():Boolean

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Indicates whether the selection covers a range of text.

Returns true if there is a selection that extends past a single position.

Returns
Boolean

Example  ( How to use this example )

The following example illustrates how to determine whether the current selection in a text flow extends over a range of text. (The textFlow variable in the example is a TextFlow object.)
 var selection:SelectionState = textFlow.interactionManager.isRangeSelection();

notifyInsertOrDelete

()method 
public function notifyInsertOrDelete(absolutePosition:int, length:int):void

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Updates the selection manager when text is inserted or deleted.

Operations must call notifyInsertOrDelete when changing the text in the text flow. The selection manager adjusts index-based position indicators accordingly. If you create a new Operation class that changes text in a text flow directly (not using another operation) your operation must call this function to keep the selection up to date.

Parameters

absolutePosition:int — The point in the text where the change was made.
 
length:int — A positive or negative number indicating how many characters were inserted or deleted.


Example  ( How to use this example )

The following example illustrates how a function in a custom Operation class would call the notifyInsertOrDelete() method.

This function replaces a range of text in a SpanElement as part of some hypothetical operation.

 import flashx.textLayout.elements.SpanElement;
 

function doReplace( span:SpanElement, newText:String, relativeStart:int, relativeEnd:int ):void
{
    span.replaceText(  relativeStart, relativeEnd, newText );
    var parentFlow:TextFlow = span.getTextFlow();
    var lengthDifference:int = newText.length - (relativeEnd - relativeStart);

    parentFlow.interactionManager.notifyInsertOrDelete(    span.getAbsoluteStart() + relativeStart, lengthDifference );
}

refreshSelection

()method 
public function refreshSelection():void

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Redisplays the selection shapes.

Note: You do not need to call this method directly. It is called automatically.

selectAll

()method 
public function selectAll():void

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Selects the entire flow

selectRange

()method 
public function selectRange(anchorPosition:int, activePosition:int):void

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Selects a range of text.

If a negative number is passed as either of the parameters, then any existing selection is removed.

Parameters

anchorPosition:int — The anchor point for the new selection, as an absolute position in the TextFlow
 
activePosition:int — The active end of the new selection, as an absolute position in the TextFlow


Example  ( How to use this example )

The following example creates a text flow and makes a selection:
 var textFlow:TextFlow = TextConverter.importToFlow( "Let me not to the marriage of true minds", TextConverter.PLAIN_TEXT_FORMAT );
 textFlow.interactionManager = new SelectionManager();
 
 textFlow.interactionManager.selectRange( 18, 26 ); // Selects the word 'marriage'

setFocus

()method 
public function setFocus():void

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Gives the focus to the first container in the selection.


Example  ( How to use this example )

The following example sets the focus to the first container in the current selection of a text flow. (The textFlow variable in the example is a TextFlow object.)
 textFlow.interactionManager.setFocus();

setSelectionState

()method 
public function setSelectionState(state:SelectionState):void

Language Version: ActionScript 3.0
Runtime Versions: Flash Player 10, AIR 1.5

Sets the SelectionState object of the current selection.

Parameters

state:SelectionState

See also