flashx.textLayout.container

# ContainerController - AS3

Package | flashx.textLayout.container
Class | public class ContainerController
Inheritance | ContainerController Object
Implements | IInteractionEventHandler, ITextLayoutFormat, ISandboxSupport

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The ContainerController class defines the relationship between a TextFlow object and a container. A TextFlow may have one or more rectangular areas that can hold text; the text is said to be flowing through the containers. Each container is a Sprite that is the parent DisplayObject for the TextLines. Each container has a ContainerController that manages the container; the controller holds the target width and height for the text area, populates the container with TextLines, and handles scrolling. A controller also has a format associated with it that allows some formatting attributes to be applied to the text in the container. This allows, for instance, a TextFlow to have one container where the text appears in a single column, and a second container in the same TextFlow with two column text. Not all formatting attributes that can be applied to the container will affect the text; only the ones that affect container-level layout. The diagram below illustrates the relationship between the TextFlow, its flowComposer, and the display list.

View the examples

Related API Elements

flashx.textLayout.compose.IFlowComposer
flashx.textLayout.elements.TextFlow
flash.text.engine.TextLine

Public Properties
Hide Inherited Public Properties
Show Inherited Public Properties

| Property | Defined By
--- | --- | ---
|  | absoluteStart : int [read-only] Returns the first character in the container. | ContainerController
|  | alignmentBaseline : * TextLayoutFormat: Specifies the baseline to which the dominant baseline aligns. | ContainerController
|  | backgroundAlpha : * TextLayoutFormat: Alpha (transparency) value for the background (adopts default value if undefined during cascade). | ContainerController
|  | backgroundColor : * TextLayoutFormat: Background color of the text (adopts default value if undefined during cascade). | ContainerController
|  | baselineShift : * TextLayoutFormat: Amount to shift the baseline from the dominantBaseline value. | ContainerController
|  | blockProgression : * TextLayoutFormat: Specifies a vertical or horizontal progression of line placement. | ContainerController
|  | breakOpportunity : * TextLayoutFormat: Controls where lines are allowed to break when breaking wrapping text into multiple lines. | ContainerController
|  | cffHinting : * TextLayoutFormat: The type of CFF hinting used for this text. | ContainerController
|  | clearFloats : * TextLayoutFormat: Controls how text wraps around a float. | ContainerController
|  | color : * TextLayoutFormat: Color of the text. | ContainerController
|  | columnCount : * TextLayoutFormat: Number of text columns (adopts default value if undefined during cascade). | ContainerController
|  | columnGap : * TextLayoutFormat: Specifies the amount of gutter space, in pixels, to leave between the columns (adopts default value if undefined during cascade). | ContainerController
|  | columnState : ColumnState [read-only] Returns a ColumnState object, which describes the number and characteristics of columns in the container. | ContainerController
|  | columnWidth : * TextLayoutFormat: Column width in pixels (adopts default value if undefined during cascade). | ContainerController
|  | compositionHeight : Number [read-only] Returns the vertical extent allowed for text inside the container. | ContainerController
|  | compositionWidth : Number [read-only] Returns the horizontal extent allowed for text inside the container. | ContainerController
|  | computedFormat : flashx.textLayout.formats:ITextLayoutFormat [read-only] Returns an ITextLayoutFormat instance with the attributes applied to this container, including the attributes inherited from its root element. | ContainerController
|  | constructor : Object A reference to the class object or constructor function for a given object instance. | Object
|  | container : Sprite [read-only] Returns the container display object that holds the text lines for this ContainerController instance. | ContainerController
|  | containerControllerInitialFormat : flashx.textLayout.formats:ITextLayoutFormat [static] | ContainerController
|  | coreStyles : Object [read-only] Returns the coreStyles on this ContainerController. | ContainerController
|  | digitCase : * TextLayoutFormat: The type of digit case used for this text. | ContainerController
|  | digitWidth : * TextLayoutFormat: Type of digit width used for this text. | ContainerController
|  | direction : * TextLayoutFormat: Specifies the default bidirectional embedding level of the text in the text block. | ContainerController
|  | dominantBaseline : * TextLayoutFormat: Specifies which element baseline snaps to the alignmentBaseline to determine the vertical position of the element on the line. | ContainerController
|  | firstBaselineOffset : * TextLayoutFormat: Specifies the baseline position of the first line in the container. | ContainerController
|  | flowComposer : IFlowComposer [read-only] Returns the flow composer object that composes and highlights text into the container that this controller manages. | ContainerController
|  | fontFamily : * TextLayoutFormat: The name of the font to use, or a comma-separated list of font names. | ContainerController
|  | fontLookup : * TextLayoutFormat: Font lookup to use. | ContainerController
|  | fontSize : * TextLayoutFormat: The size of the text in pixels. | ContainerController
|  | fontStyle : * TextLayoutFormat: Style of text. | ContainerController
|  | fontWeight : * TextLayoutFormat: Weight of text. | ContainerController
|  | format : flashx.textLayout.formats:ITextLayoutFormat Stores the ITextLayoutFormat object that contains the attributes for this container. | ContainerController
|  | horizontalScrollPolicy : String Specifies the horizontal scrolling policy, which you can set by assigning one of the constants of the ScrollPolicy class: ON, OFF, or AUTO. | ContainerController
|  | horizontalScrollPosition : Number Specifies the current horizontal scroll location on the stage. | ContainerController
|  | interactionManager : ISelectionManager [read-only] The InteractionManager associated with this TextFlow object. | ContainerController
|  | justificationRule : * TextLayoutFormat: Rule used to justify text in a paragraph. | ContainerController
|  | justificationStyle : * TextLayoutFormat: The style used for justification of the paragraph. | ContainerController
|  | kerning : * TextLayoutFormat: Kerning adjusts the pixels between certain character pairs to improve readability. | ContainerController
|  | leadingModel : * TextLayoutFormat: Specifies the leading model, which is a combination of leading basis and leading direction. | ContainerController
|  | ligatureLevel : * TextLayoutFormat: Controls which of the ligatures that are defined in the font may be used in the text. | ContainerController
|  | lineBreak : * TextLayoutFormat: Controls word wrapping within the container (adopts default value if undefined during cascade). | ContainerController
|  | lineHeight : * TextLayoutFormat: Leading controls for the text. | ContainerController
|  | lineThrough : * TextLayoutFormat: If true, applies strikethrough, a line drawn through the middle of the text. | ContainerController
|  | linkActiveFormat : * TextLayoutFormat: Defines the formatting attributes used for links in normal state. | ContainerController
|  | linkHoverFormat : * TextLayoutFormat: Defines the formatting attributes used for links in hover state, when the mouse is within the bounds (rolling over) a link. | ContainerController
|  | linkNormalFormat : * TextLayoutFormat: Defines the formatting attributes used for links in normal state. | ContainerController
|  | listAutoPadding : * TextLayoutFormat: This specifies an auto indent for the start edge of lists when the padding value of the list on that side is auto. | ContainerController
|  | listMarkerFormat : * TextLayoutFormat: Defines the formatting attributes list markers. | ContainerController
|  | listStylePosition : * TextLayoutFormat: Legal values are ListStylePosition.INSIDE, ListStylePosition.OUTSIDE, FormatValue.INHERIT. Default value is undefined indicating not set. If undefined during the cascade this property will inherit its value from an ancestor. | ContainerController
|  | listStyleType : * TextLayoutFormat: Legal values are ListStyleType.UPPER_ALPHA, ListStyleType.LOWER_ALPHA, ListStyleType.UPPER_ROMAN, ListStyleType.LOWER_ROMAN, ListStyleType.NONE, ListStyleType.DISC, ListStyleType.CIRCLE, ListStyleType.SQUARE, ListStyleType.BOX, ListStyleType.CHECK, ListStyleType.DIAMOND, ListStyleType.HYPHEN, ListStyleType.ARABIC_INDIC, ListStyleType.BENGALI, ListStyleType.DECIMAL, ListStyleType.DECIMAL_LEADING_ZERO, ListStyleType.DEVANAGARI, ListStyleType.GUJARATI, ListStyleType.GURMUKHI, ListStyleType.KANNADA, ListStyleType.PERSIAN, ListStyleType.THAI, ListStyleType.URDU, ListStyleType.CJK_EARTHLY_BRANCH, ListStyleType.CJK_HEAVENLY_STEM, ListStyleType.HANGUL, ListStyleType.HANGUL_CONSTANT, ListStyleType.HIRAGANA, ListStyleType.HIRAGANA_IROHA, ListStyleType.KATAKANA, ListStyleType.KATAKANA_IROHA, ListStyleType.LOWER_ALPHA, ListStyleType.LOWER_GREEK, ListStyleType.LOWER_LATIN, ListStyleType.UPPER_ALPHA, ListStyleType.UPPER_GREEK, ListStyleType.UPPER_LATIN, FormatValue.INHERIT. Default value is undefined indicating not set. If undefined during the cascade this property will inherit its value from an ancestor. | ContainerController
|  | locale : * TextLayoutFormat: The locale of the text. | ContainerController
|  | paddingBottom : * TextLayoutFormat: Bottom inset in pixels. | ContainerController
|  | paddingLeft : * TextLayoutFormat: Left inset in pixels. | ContainerController
|  | paddingRight : * TextLayoutFormat: Right inset in pixels. | ContainerController
|  | paddingTop : * TextLayoutFormat: Top inset in pixels. | ContainerController
|  | paragraphEndIndent : * TextLayoutFormat: A Number that specifies, in pixels, the amount to indent the paragraph's end edge. | ContainerController
|  | paragraphSpaceAfter : * TextLayoutFormat: A Number that specifies the amount of space, in pixels, to leave after the paragraph. | ContainerController
|  | paragraphSpaceBefore : * TextLayoutFormat: A Number that specifies the amount of space, in pixels, to leave before the paragraph. | ContainerController
|  | paragraphStartIndent : * TextLayoutFormat: A Number that specifies, in pixels, the amount to indent the paragraph's start edge. | ContainerController
|  | renderingMode : * TextLayoutFormat: The rendering mode used for this text. | ContainerController
|  | rootElement : ContainerFormattedElement [read-only] Returns the root element that appears in the container. | ContainerController
|  | styleName : * TextLayoutFormat: Assigns an identifying class to the element, making it possible to set a style for the element by referencing the styleName. | ContainerController
|  | styles : Object [read-only] Returns the styles on this ContainerController. | ContainerController
|  | tabStops : * TextLayoutFormat: Specifies the tab stops associated with the paragraph. | ContainerController
|  | textAlign : * TextLayoutFormat: Alignment of lines in the paragraph relative to the container. | ContainerController
|  | textAlignLast : * TextLayoutFormat: Alignment of the last (or only) line in the paragraph relative to the container in justified text. | ContainerController
|  | textAlpha : * TextLayoutFormat: Alpha (transparency) value for the text. | ContainerController
|  | textDecoration : * TextLayoutFormat: Decoration on text. | ContainerController
|  | textFlow : flashx.textLayout.elements:TextFlow [read-only] Returns the TextFlow object whose content appears in the container. | ContainerController
|  | textIndent : * TextLayoutFormat: A Number that specifies, in pixels, the amount to indent the first line of the paragraph. | ContainerController
|  | textJustify : * TextLayoutFormat: Specifies options for justifying text. | ContainerController
|  | textLength : int [read-only] Returns the total number of characters in the container. | ContainerController
|  | textRotation : * TextLayoutFormat: Determines the number of degrees to rotate this text. | ContainerController
|  | trackingLeft : * TextLayoutFormat: Number in pixels (or percent of fontSize, like 120%) indicating the amount of tracking (manual kerning) to be applied to the left of each character. | ContainerController
|  | trackingRight : * TextLayoutFormat: Number in pixels (or percent of fontSize, like 120%) indicating the amount of tracking (manual kerning) to be applied to the right of each character. | ContainerController
|  | typographicCase : * TextLayoutFormat: The type of typographic case used for this text. | ContainerController
|  | userStyles : Object Allows you to read and write user styles on a ContainerController object. | ContainerController
|  | verticalAlign : * TextLayoutFormat: Vertical alignment or justification (adopts default value if undefined during cascade). | ContainerController
|  | verticalScrollPolicy : String Specifies the vertical scrolling policy, which you can set by assigning one of the constants of the ScrollPolicy class: ON, OFF, or, AUTO. | ContainerController
|  | verticalScrollPosition : Number Specifies the current vertical scroll location on the stage. | ContainerController
|  | whiteSpaceCollapse : * TextLayoutFormat: Collapses or preserves whitespace when importing text into a TextFlow. | ContainerController
|  | wordSpacing : * TextLayoutFormat: Specifies the optimum, minimum, and maximum spacing (as a multiplier of the width of a normal space) between words to use during justification. | ContainerController

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | ContainerController(container:Sprite, compositionWidth:Number = 100, compositionHeight:Number = 100) Constructor - creates a ContainerController instance. | ContainerController
|  | activateHandler(event:Event):void Processes the Event.ACTIVATE event when the client manages events. | ContainerController
|  | autoScrollIfNecessary(mouseX:int, mouseY:int):void Handle a scroll event during a "drag" selection. | ContainerController
|  | beginMouseCapture():void Called to request clients to begin the forwarding of mouseup and mousemove events from outside a security sandbox. | ContainerController
|  | clearStyle(styleProp:String):void Clears the style specified by styleProp from this FlowElement. | ContainerController
|  | deactivateHandler(event:Event):void Processes the Event.DEACTIVATE event when the client manages events. | ContainerController
|  | editHandler(event:Event):void Processes an edit event (CUT, COPY, PASTE, SELECT_ALL) when the client manages events. | ContainerController
|  | endMouseCapture():void Called to inform clients that the the forwarding of mouseup and mousemove events from outside a security sandbox is no longer needed. | ContainerController
|  | focusChangeHandler(event:FocusEvent):void Processes the FocusEvent.KEY_FOCUS_CHANGE and FocusEvent.MOUSE_FOCUS_CHANGE events when the client manages events. | ContainerController
|  | focusInHandler(event:FocusEvent):void Processes the FocusEvent.FOCUS_IN event when the client manages events. | ContainerController
|  | focusOutHandler(event:FocusEvent):void Processes the FocusEvent.FOCUS_OUT event when the client manages events. | ContainerController
|  | getContentBounds():Rectangle Returns the area that the text occupies, as reflected by the last compose or update operation. | ContainerController
|  | getScrollDelta(numLines:int):Number Figure out the scroll distance required to scroll up or down by the specified number of lines. | ContainerController
|  | getStyle(styleProp:String):* Returns the value of the style specified by the styleProp parameter. | ContainerController
|  | hasOwnProperty(name:String):Boolean Indicates whether an object has a specified property defined. | Object
|  | imeStartCompositionHandler(event:IMEEvent):void Processes the IMEEvent.IME_START_COMPOSITION event when the client manages events. | ContainerController
|  | invalidateContents():void Marks all the text in this container as needing composing. | ContainerController
|  | isDamaged():Boolean Determines whether the container has text that requires composing. | ContainerController
|  | isPrototypeOf(theClass:Object):Boolean Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter. | Object
|  | keyDownHandler(event:KeyboardEvent):void Processes the KeyboardEvent.KEY_DOWN event when the client manages events. | ContainerController
|  | keyFocusChangeHandler(event:FocusEvent):void Processes the FocusEvent.KEY_FOCUS_CHANGE event when the client manages events. | ContainerController
|  | keyUpHandler(event:KeyboardEvent):void Processes the Keyboard.KEY_UP event when the client manages events. | ContainerController
|  | menuSelectHandler(event:ContextMenuEvent):void Processes the ContextMenuEvent.MENU_SELECT event when the client manages events. | ContainerController
|  | mouseDoubleClickHandler(event:MouseEvent):void Processes the MouseEvent.DOUBLE_CLICK event when the client manages events. | ContainerController
|  | mouseDownHandler(event:MouseEvent):void Processes the MouseEvent.MOUSE_DOWN event when the client manages events. | ContainerController
|  | mouseMoveHandler(event:MouseEvent):void Processes the MouseEvent.MOUSE_MOVE event when the client manages events. | ContainerController
|  | mouseMoveSomewhere(event:Event):void Client call to forward a mouseMove event from outside a security sandbox. | ContainerController
|  | mouseOutHandler(event:MouseEvent):void Processes the MouseEvent.MOUSE_OUT event when the client manages events. | ContainerController
|  | mouseOverHandler(event:MouseEvent):void Processes the MouseEvent.MOUSE_OVER event when the client manages events. | ContainerController
|  | mouseUpHandler(event:MouseEvent):void Processes the MouseEvent.MOUSE_UP event when the client manages events. | ContainerController
|  | mouseUpSomewhere(event:Event):void Client call to forward a mouseUp event from outside a security sandbox. | ContainerController
|  | mouseWheelHandler(event:MouseEvent):void Processes the MouseEvent.MOUSE_WHEEL event when the client manages events. | ContainerController
|  | propertyIsEnumerable(name:String):Boolean Indicates whether the specified property exists and is enumerable. | Object
|  | scrollToRange(activePosition:int, anchorPosition:int):void Scrolls so that the text range is visible in the container. | ContainerController
|  | selectRange(anchorIndex:int, activeIndex:int):void Sets the range of selected text in a component implementing ITextSupport. | ContainerController
|  | setCompositionSize(w:Number, h:Number):void Sets the width and height allowed for text in the container. | ContainerController
|  | setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void Sets the availability of a dynamic property for loop operations. | Object
|  | setStyle(styleProp:String, newValue:*):void Sets the value of the style specified by the styleProp parameter to the value specified by the newValue parameter. | ContainerController
|  | softKeyboardActivatingHandler(event:Event):void Processes the SoftKeyboardEvent.SOFT_KEYBOARD_ACTIVATING event when the client manages events. | ContainerController
|  | textInputHandler(event:flash.events:TextEvent):void Processes the TextEvent.TEXT_INPUT event when the client manages events. | ContainerController
|  | toLocaleString():String Returns the string representation of this object, formatted according to locale-specific conventions. | Object
|  | toString():String Returns the string representation of the specified object. | Object
|  | valueOf():Object Returns the primitive value of the specified object. | Object

Protected Methods

| Method | Defined By
--- | --- | ---
|  | addBackgroundShape(shape:Shape):void Adds a flash.display.Shape object on which background shapes (such as background color) are drawn. | ContainerController
|  | addInlineGraphicElement(parent:DisplayObjectContainer, inlineGraphicElement:DisplayObject, index:int):void Adds a flash.display.DisplayObject object as a descendant of parent. | ContainerController
|  | addSelectionContainer(selectionContainer:DisplayObjectContainer):void Adds a flash.display.DisplayObjectContainer object to which selection shapes (such as block selection highlight, cursor etc.) are added. | ContainerController
|  | addTextLine(textLine:flash.text.engine:TextLine, index:int):void Adds a flash.text.engine.TextLine object as a descendant of container. | ContainerController
|  | createContextMenu():ContextMenu Creates a context menu for the ContainerController. | ContainerController
|  | getFirstTextLineChildIndex():int Gets the index at which the first text line must appear in its parent. | ContainerController
|  | removeBackgroundShape(shape:Shape):void Removes a flash.display.Shape object on which background shapes (such as background color) are drawn. | ContainerController
|  | removeInlineGraphicElement(parent:DisplayObjectContainer, inlineGraphicElement:DisplayObject):void Removes a flash.display.DisplayObject object from its parent. | ContainerController
|  | removeSelectionContainer(selectionContainer:DisplayObjectContainer):void Removes the flash.display.DisplayObjectContainer object which contains selection shapes (such as block selection highlight, cursor etc.). | ContainerController
|  | removeTextLine(textLine:flash.text.engine:TextLine):void Removes a flash.text.engine.TextLine object from its parent. | ContainerController
|  | updateVisibleRectangle():void If scrolling, sets the scroll rectangle to the container rectangle so that any lines that are halfway in view are clipped to the scrollable region. | ContainerController

Property Detail

### _mouseWheelListenerAttached

property

`tlf_internal var _mouseWheelListenerAttached:Boolean = false`

### absoluteStart

property

`absoluteStart:int` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns the first character in the container. If this is not the first container in the flow, this value is updated when the text is composed, that is when the IFlowComposer's `compose()` or `updateAllControllers()` methods are called.

Implementation
`public function get absoluteStart():int`

Related API Elements

flashx.textLayout.compose.IFlowComposer

### alignmentBaseline

property

`alignmentBaseline:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Specifies the baseline to which the dominant baseline aligns. For example, if you set `dominantBaseline` to ASCENT, setting `alignmentBaseline` to DESCENT aligns the top of the text with the DESCENT baseline, or below the line. The largest element in the line generally determines the baselines.

Legal values are TextBaseline.ROMAN, TextBaseline.ASCENT, TextBaseline.DESCENT, TextBaseline.IDEOGRAPHIC_TOP, TextBaseline.IDEOGRAPHIC_CENTER, TextBaseline.IDEOGRAPHIC_BOTTOM, TextBaseline.USE_DOMINANT_BASELINE, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of TextBaseline.USE_DOMINANT_BASELINE.

Implementation
`public function get alignmentBaseline():*`
`public function set alignmentBaseline(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flash.text.engine.TextBaseline

### backgroundAlpha

property

`backgroundAlpha:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Alpha (transparency) value for the background (adopts default value if undefined during cascade). A value of 0 is fully transparent, and a value of 1 is fully opaque. Display objects with alpha set to 0 are active, even though they are invisible.

Legal values are numbers from 0 to 1 and FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will have a value of 1.

Implementation
`public function get backgroundAlpha():*`
`public function set backgroundAlpha(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### backgroundColor

property

`backgroundColor:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Background color of the text (adopts default value if undefined during cascade). Can be either the constant value `BackgroundColor.TRANSPARENT`, or a hexadecimal value that specifies the three 8-bit RGB (red, green, blue) values; for example, 0xFF0000 is red and 0x00FF00 is green.

Legal values as a string are BackgroundColor.TRANSPARENT, FormatValue.INHERIT and uints from 0x0 to 0xffffffff.

Default value is undefined indicating not set.

If undefined during the cascade this property will have a value of BackgroundColor.TRANSPARENT.

Implementation
`public function get backgroundColor():*`
`public function set backgroundColor(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.BackgroundColor

### baselineShift

property

`baselineShift:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Amount to shift the baseline from the `dominantBaseline` value. Units are in pixels, or a percentage of `fontSize` (in which case, enter a string value, like 140%). Positive values shift the line up for horizontal text (right for vertical) and negative values shift it down for horizontal (left for vertical).

Legal values are BaselineShift.SUPERSCRIPT, BaselineShift.SUBSCRIPT, FormatValue.INHERIT.

Legal values as a number are from -1000 to 1000.

Legal values as a percent are numbers from -1000 to 1000.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.0.

Implementation
`public function get baselineShift():*`
`public function set baselineShift(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.BaselineShift

### blockProgression

property

`blockProgression:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Specifies a vertical or horizontal progression of line placement. Lines are either placed top-to-bottom (`BlockProgression.TB`, used for horizontal text) or right-to-left (`BlockProgression.RL`, used for vertical text).

Legal values are BlockProgression.RL, BlockProgression.TB, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of BlockProgression.TB.

Implementation
`public function get blockProgression():*`
`public function set blockProgression(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.BlockProgression

### breakOpportunity

property

`breakOpportunity:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Controls where lines are allowed to break when breaking wrapping text into multiple lines. Set to `BreakOpportunity.AUTO` to break text normally. Set to `BreakOpportunity.NONE` to not break the text unless the text would overrun the measure and there are no other places to break the line. Set to `BreakOpportunity.ANY` to allow the line to break anywhere, rather than just between words. Set to `BreakOpportunity.ALL` to have each typographic cluster put on a separate line (useful for text on a path).

Legal values are BreakOpportunity.ALL, BreakOpportunity.ANY, BreakOpportunity.AUTO, BreakOpportunity.NONE, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of BreakOpportunity.AUTO.

Implementation
`public function get breakOpportunity():*`
`public function set breakOpportunity(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flash.text.engine.BreakOpportunity

### cffHinting

property

`cffHinting:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: The type of CFF hinting used for this text. CFF hinting determines whether the Flash runtime forces strong horizontal stems to fit to a sub pixel grid or not. This property applies only if the `renderingMode` property is set to `RenderingMode.CFF`, and the font is embedded (`fontLookup` property is set to `FontLookup.EMBEDDED_CFF`). At small screen sizes, hinting produces a clear, legible text for human readers.

Legal values are CFFHinting.NONE, CFFHinting.HORIZONTAL_STEM, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of CFFHinting.HORIZONTAL_STEM.

Implementation
`public function get cffHinting():*`
`public function set cffHinting(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flash.text.engine.CFFHinting

### clearFloats

property

`clearFloats:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Controls how text wraps around a float. A value of none will allow the text to wrap most closely around a float. A value of left will cause the text to skip over any portion of the container that has a left float, and a value of right will cause the text to skip over any portion of the container that has a right float. A value of both will cause the text to skip over any floats.

Legal values are ClearFloats.START, ClearFloats.END, ClearFloats.LEFT, ClearFloats.RIGHT, ClearFloats.BOTH, ClearFloats.NONE, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will have a value of ClearFloats.NONE.

Implementation
`public function get clearFloats():*`
`public function set clearFloats(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.ClearFloats

### color

property

`color:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Color of the text. A hexadecimal number that specifies three 8-bit RGB (red, green, blue) values; for example, 0xFF0000 is red and 0x00FF00 is green.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

Implementation
`public function get color():*`
`public function set color(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### columnCount

property

`columnCount:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Number of text columns (adopts default value if undefined during cascade). The column number overrides the other column settings. Value is an integer, or `FormatValue.AUTO` if unspecified. If `columnCount` is not specified,`columnWidth` is used to create as many columns as can fit in the container.

Legal values as a string are FormatValue.AUTO, FormatValue.INHERIT and from ints from 1 to 50.

Default value is undefined indicating not set.

If undefined during the cascade this property will have a value of FormatValue.AUTO.

Implementation
`public function get columnCount():*`
`public function set columnCount(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.FormatValue

### columnGap

property

`columnGap:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Specifies the amount of gutter space, in pixels, to leave between the columns (adopts default value if undefined during cascade). Value is a Number

Legal values are numbers from 0 to 1000 and FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will have a value of 20.

Implementation
`public function get columnGap():*`
`public function set columnGap(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### columnState

property

`columnState:ColumnState` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns a ColumnState object, which describes the number and characteristics of columns in the container. These values are updated when the text is recomposed, either as a result of `IFlowComposer.compose()` or `IFlowComposer.updateAllControllers()`.

Implementation
`public function get columnState():ColumnState`

Related API Elements

ColumnState

### columnWidth

property

`columnWidth:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Column width in pixels (adopts default value if undefined during cascade). If you specify the width of the columns, but not the count, TextLayout will create as many columns of that width as possible, given the container width and `columnGap` settings. Any remainder space is left after the last column. Value is a Number.

Legal values as a string are FormatValue.AUTO, FormatValue.INHERIT and numbers from 0 to 8000.

Default value is undefined indicating not set.

If undefined during the cascade this property will have a value of FormatValue.AUTO.

Implementation
`public function get columnWidth():*`
`public function set columnWidth(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.FormatValue

### compositionHeight

property

`compositionHeight:Number` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns the vertical extent allowed for text inside the container. The value is specified in pixels.

Implementation
`public function get compositionHeight():Number`

Related API Elements

setCompositionSize()

### compositionWidth

property

`compositionWidth:Number` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns the horizontal extent allowed for text inside the container. The value is specified in pixels.

Implementation
`public function get compositionWidth():Number`

Related API Elements

setCompositionSize()

### computedFormat

property

`computedFormat:flashx.textLayout.formats:ITextLayoutFormat` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns an ITextLayoutFormat instance with the attributes applied to this container, including the attributes inherited from its root element.

Implementation
`public function get computedFormat():flashx.textLayout.formats:ITextLayoutFormat`

Related API Elements

rootElement

### container

property

`container:Sprite` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns the container display object that holds the text lines for this ContainerController instance.

Implementation
`public function get container():Sprite`

Related API Elements

ContainerController()

### containerControllerInitialFormat

property

`containerControllerInitialFormat:flashx.textLayout.formats:ITextLayoutFormat`

Implementation
`public static function get containerControllerInitialFormat():flashx.textLayout.formats:ITextLayoutFormat`
`public static function set containerControllerInitialFormat(value:flashx.textLayout.formats:ITextLayoutFormat):void`

### coreStyles

property

`coreStyles:Object` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns the `coreStyles` on this ContainerController. Note that the getter makes a copy of the core styles dictionary. The returned object includes the formats that are defined by TextLayoutFormat and are in TextLayoutFormat.description. The returned object consists of an array of stylename-value pairs.

Implementation
`public function get coreStyles():Object`

Related API Elements

flashx.textLayout.formats.TextLayoutFormat

### digitCase

property

`digitCase:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: The type of digit case used for this text. Setting the value to `DigitCase.OLD_STYLE` approximates lowercase letterforms with varying ascenders and descenders. The figures are proportionally spaced. This style is only available in selected typefaces, most commonly in a supplemental or expert font. The `DigitCase.LINING` setting has all-cap height and is typically monospaced to line up in charts.

Legal values are DigitCase.DEFAULT, DigitCase.LINING, DigitCase.OLD_STYLE, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of DigitCase.DEFAULT.

Implementation
`public function get digitCase():*`
`public function set digitCase(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flash.text.engine.DigitCase

### digitWidth

property

`digitWidth:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Type of digit width used for this text. This can be `DigitWidth.PROPORTIONAL`, which looks best for individual numbers, or `DigitWidth.TABULAR`, which works best for numbers in tables, charts, and vertical rows.

Legal values are DigitWidth.DEFAULT, DigitWidth.PROPORTIONAL, DigitWidth.TABULAR, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of DigitWidth.DEFAULT.

Implementation
`public function get digitWidth():*`
`public function set digitWidth(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flash.text.engine.DigitWidth

### direction

property

`direction:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Specifies the default bidirectional embedding level of the text in the text block. Left-to-right reading order, as in Latin-style scripts, or right-to-left reading order, as in Arabic or Hebrew. This property also affects column direction when it is applied at the container level. Columns can be either left-to-right or right-to-left, just like text. Below are some examples:

Legal values are Direction.LTR, Direction.RTL, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of Direction.LTR.

Implementation
`public function get direction():*`
`public function set direction(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.Direction

### dominantBaseline

property

`dominantBaseline:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Specifies which element baseline snaps to the `alignmentBaseline` to determine the vertical position of the element on the line. A value of `TextBaseline.AUTO` selects the dominant baseline based on the `locale` property of the parent paragraph. For Japanese and Chinese, the selected baseline value is `TextBaseline.IDEOGRAPHIC_CENTER`; for all others it is `TextBaseline.ROMAN`. These baseline choices are determined by the choice of font and the font size.

Legal values are FormatValue.AUTO, TextBaseline.ROMAN, TextBaseline.ASCENT, TextBaseline.DESCENT, TextBaseline.IDEOGRAPHIC_TOP, TextBaseline.IDEOGRAPHIC_CENTER, TextBaseline.IDEOGRAPHIC_BOTTOM, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of FormatValue.AUTO.

Implementation
`public function get dominantBaseline():*`
`public function set dominantBaseline(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flash.text.engine.TextBaseline

### firstBaselineOffset

property

`firstBaselineOffset:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Specifies the baseline position of the first line in the container. Which baseline this property refers to depends on the container-level locale. For Japanese and Chinese, it is `TextBaseline.IDEOGRAPHIC_BOTTOM`; for all others it is `TextBaseline.ROMAN`. The offset from the top inset (or right inset if `blockProgression` is RL) of the container to the baseline of the first line can be either `BaselineOffset.ASCENT`, meaning equal to the ascent of the line, `BaselineOffset.LINE_HEIGHT`, meaning equal to the height of that first line, or any fixed-value number to specify an absolute distance. `BaselineOffset.AUTO` aligns the ascent of the line with the container top inset.

Legal values as a string are BaselineOffset.AUTO, BaselineOffset.ASCENT, BaselineOffset.LINE_HEIGHT, FormatValue.INHERIT and numbers from 0 to 1000.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of BaselineOffset.AUTO.

Implementation
`public function get firstBaselineOffset():*`
`public function set firstBaselineOffset(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.BaselineOffset

### flowComposer

property

`flowComposer:IFlowComposer` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns the flow composer object that composes and highlights text into the container that this controller manages.

Implementation
`public function get flowComposer():IFlowComposer`

Related API Elements

flashx.textLayout.compose.IFlowComposer

### fontFamily

property

`fontFamily:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: The name of the font to use, or a comma-separated list of font names. The Flash runtime renders the element with the first available font in the list. For example Arial, Helvetica, _sans causes the player to search for Arial, then Helvetica if Arial is not found, then _sans if neither is found.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of Arial.

Implementation
`public function get fontFamily():*`
`public function set fontFamily(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### fontLookup

property

`fontLookup:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Font lookup to use. Specifying `FontLookup.DEVICE` uses the fonts installed on the system that is running the SWF file. Device fonts result in a smaller movie size, but text is not always rendered the same across different systems and platforms. Specifying `FontLookup.EMBEDDED_CFF` uses font outlines embedded in the published SWF file. Embedded fonts increase the size of the SWF file (sometimes dramatically), but text is consistently displayed in the chosen font.

Legal values are FontLookup.DEVICE, FontLookup.EMBEDDED_CFF, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of FontLookup.DEVICE.

Implementation
`public function get fontLookup():*`
`public function set fontLookup(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flash.text.engine.FontLookup

### fontSize

property

`fontSize:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: The size of the text in pixels.

Legal values are numbers from 1 to 720 and FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 12.

Implementation
`public function get fontSize():*`
`public function set fontSize(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### fontStyle

property

`fontStyle:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Style of text. May be `FontPosture.NORMAL`, for use in plain text, or `FontPosture.ITALIC` for italic. This property applies only to device fonts (`fontLookup` property is set to flash.text.engine.FontLookup.DEVICE).

Legal values are FontPosture.NORMAL, FontPosture.ITALIC, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of FontPosture.NORMAL.

Implementation
`public function get fontStyle():*`
`public function set fontStyle(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flash.text.engine.FontPosture

### fontWeight

property

`fontWeight:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Weight of text. May be `FontWeight.NORMAL` for use in plain text, or `FontWeight.BOLD`. Applies only to device fonts (`fontLookup` property is set to flash.text.engine.FontLookup.DEVICE).

Legal values are FontWeight.NORMAL, FontWeight.BOLD, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of FontWeight.NORMAL.

Implementation
`public function get fontWeight():*`
`public function set fontWeight(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flash.text.engine.FontWeight

### format

property

`format:flashx.textLayout.formats:ITextLayoutFormat`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Stores the ITextLayoutFormat object that contains the attributes for this container. The controller inherits the container properties from the TextFlow of which it is part. This property allows different controllers in the same text flow to have, for example, different column settings or padding.

Implementation
`public function get format():flashx.textLayout.formats:ITextLayoutFormat`
`public function set format(value:flashx.textLayout.formats:ITextLayoutFormat):void`

Related API Elements

flashx.textLayout.formats.ITextLayoutFormat

### horizontalScrollPolicy

property

`horizontalScrollPolicy:String`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the horizontal scrolling policy, which you can set by assigning one of the constants of the ScrollPolicy class: ON, OFF, or AUTO.

Implementation
`public function get horizontalScrollPolicy():String`
`public function set horizontalScrollPolicy(value:String):void`

Related API Elements

ScrollPolicy

### horizontalScrollPosition

property

`horizontalScrollPosition:Number`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the current horizontal scroll location on the stage. The value specifies the number of pixels from the left.

Implementation
`public function get horizontalScrollPosition():Number`
`public function set horizontalScrollPosition(value:Number):void`

### interactionManager

property

`interactionManager:ISelectionManager` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The InteractionManager associated with this TextFlow object.

Controls all selection and editing on the text. If the TextFlow is not selectable, the interactionManager is null. To make the TextFlow editable, assign a interactionManager that is both an ISelectionManager and an IEditManager. To make a TextFlow that is read-only and allows selection, assign a interactionManager that is an ISelectionManager only.

Implementation
`public function get interactionManager():ISelectionManager`

Related API Elements

flashx.textLayout.elements.TextFlow.interactionManager

### justificationRule

property

`justificationRule:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Rule used to justify text in a paragraph. Default value is `FormatValue.AUTO`, which justifies text based on the paragraph's `locale` property. For all languages except Japanese and Chinese, `FormatValue.AUTO` becomes `JustificationRule.SPACE`, which adds extra space to the space characters. For Japanese and Chinese, `FormatValue.AUTO` becomes `JustficationRule.EAST_ASIAN`. In part, justification changes the spacing of punctuation. In Roman text the comma and Japanese periods take a full character's width but in East Asian text only half of a character's width. Also, in the East Asian text the spacing between sequential punctuation marks becomes tighter, obeying traditional East Asian typographic conventions. Note, too, in the example below the leading that is applied to the second line of the paragraphs. In the East Asian version, the last two lines push left. In the Roman version, the second and following lines push left.

Legal values are JustificationRule.EAST_ASIAN, JustificationRule.SPACE, FormatValue.AUTO, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of FormatValue.AUTO.

Implementation
`public function get justificationRule():*`
`public function set justificationRule(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.JustificationRule

### justificationStyle

property

`justificationStyle:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: The style used for justification of the paragraph. Used only in conjunction with a `justificationRule` setting of `JustificationRule.EAST_ASIAN`. Default value of `FormatValue.AUTO` is resolved to `JustificationStyle.PUSH_IN_KINSOKU` for all locales. The constants defined by the JustificationStyle class specify options for handling kinsoku characters, which are Japanese characters that cannot appear at either the beginning or end of a line. If you want looser text, specify `JustificationStyle.PUSH-OUT-ONLY`. If you want behavior that is like what you get with the `justificationRule` of `JustificationRule.SPACE`, use `JustificationStyle.PRIORITIZE-LEAST-ADJUSTMENT`.

Legal values are JustificationStyle.PRIORITIZE_LEAST_ADJUSTMENT, JustificationStyle.PUSH_IN_KINSOKU, JustificationStyle.PUSH_OUT_ONLY, FormatValue.AUTO, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of FormatValue.AUTO.

Implementation
`public function get justificationStyle():*`
`public function set justificationStyle(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flash.text.engine.JustificationStyle

### kerning

property

`kerning:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Kerning adjusts the pixels between certain character pairs to improve readability. Kerning is supported for all fonts with kerning tables.

Legal values are Kerning.ON, Kerning.OFF, Kerning.AUTO, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of Kerning.AUTO.

Implementation
`public function get kerning():*`
`public function set kerning(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flash.text.engine.Kerning

### leadingModel

property

`leadingModel:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Specifies the leading model, which is a combination of leading basis and leading direction. Leading basis is the baseline to which the `lineHeight` property refers. Leading direction determines whether the `lineHeight` property refers to the distance of a line's baseline from that of the line before it or the line after it. The default value of `FormatValue.AUTO` is resolved based on the paragraph's `locale` property. For Japanese and Chinese, it is `LeadingModel.IDEOGRAPHIC_TOP_DOWN` and for all others it is `LeadingModel.ROMAN_UP`.

Leading Basis:

Leading Direction:

Legal values are LeadingModel.ROMAN_UP, LeadingModel.IDEOGRAPHIC_TOP_UP, LeadingModel.IDEOGRAPHIC_CENTER_UP, LeadingModel.IDEOGRAPHIC_TOP_DOWN, LeadingModel.IDEOGRAPHIC_CENTER_DOWN, LeadingModel.APPROXIMATE_TEXT_FIELD, LeadingModel.ASCENT_DESCENT_UP, LeadingModel.BOX, LeadingModel.AUTO, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of LeadingModel.AUTO.

Implementation
`public function get leadingModel():*`
`public function set leadingModel(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.LeadingModel

### ligatureLevel

property

`ligatureLevel:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Controls which of the ligatures that are defined in the font may be used in the text. The ligatures that appear for each of these settings is dependent on the font. A ligature occurs where two or more letter-forms are joined as a single glyph. Ligatures usually replace consecutive characters sharing common components, such as the letter pairs 'fi', 'fl', or 'ae'. They are used with both Latin and Non-Latin character sets. The ligatures enabled by the values of the LigatureLevel class - `MINIMUM`, `COMMON`, `UNCOMMON`, and `EXOTIC` - are additive. Each value enables a new set of ligatures, but also includes those of the previous types.

Note: When working with Arabic or Syriac fonts, `ligatureLevel` must be set to MINIMUM or above.

Legal values are LigatureLevel.MINIMUM, LigatureLevel.COMMON, LigatureLevel.UNCOMMON, LigatureLevel.EXOTIC, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of LigatureLevel.COMMON.

Implementation
`public function get ligatureLevel():*`
`public function set ligatureLevel(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flash.text.engine.LigatureLevel

### lineBreak

property

`lineBreak:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Controls word wrapping within the container (adopts default value if undefined during cascade). Text in the container may be set to fit the width of the container (`LineBreak.TO_FIT`), or can be set to break only at explicit return or line feed characters (`LineBreak.EXPLICIT`).

Legal values are LineBreak.EXPLICIT, LineBreak.TO_FIT, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will have a value of LineBreak.TO_FIT.

Implementation
`public function get lineBreak():*`
`public function set lineBreak(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.LineBreak

### lineHeight

property

`lineHeight:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Leading controls for the text. The distance from the baseline of the previous or the next line (based on `LeadingModel`) to the baseline of the current line is equal to the maximum amount of the leading applied to any character in the line. This is either a number or a percent. If specifying a percent, enter a string value, like 140%.

Legal values as a number are from -720 to 720.

Legal values as a percent are numbers from -1000% to 1000%.

Legal values include FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 120%.

Implementation
`public function get lineHeight():*`
`public function set lineHeight(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### lineThrough

property

`lineThrough:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: If `true`, applies strikethrough, a line drawn through the middle of the text.

Legal values are true, false and FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of false.

Implementation
`public function get lineThrough():*`
`public function set lineThrough(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### linkActiveFormat

property

`linkActiveFormat:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Defines the formatting attributes used for links in normal state. This value will cascade down the hierarchy and apply to any links that are descendants. Accepts `inherit`, an `ITextLayoutFormat` or converts an array of objects with key and value as members to a TextLayoutFormat.

Legal values include FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of null.

Implementation
`public function get linkActiveFormat():*`
`public function set linkActiveFormat(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### linkHoverFormat

property

`linkHoverFormat:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Defines the formatting attributes used for links in hover state, when the mouse is within the bounds (rolling over) a link. This value will cascade down the hierarchy and apply to any links that are descendants. Accepts `inherit`, an `ITextLayoutFormat` or converts an array of objects with key and value as members to a TextLayoutFormat.

Legal values include FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of null.

Implementation
`public function get linkHoverFormat():*`
`public function set linkHoverFormat(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### linkNormalFormat

property

`linkNormalFormat:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Defines the formatting attributes used for links in normal state. This value will cascade down the hierarchy and apply to any links that are descendants. Accepts `inherit`, an `ITextLayoutFormat` or converts an array of objects with key and value as members to a TextLayoutFormat.

Legal values include FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of null.

Implementation
`public function get linkNormalFormat():*`
`public function set linkNormalFormat(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### listAutoPadding

property

`listAutoPadding:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: This specifies an auto indent for the start edge of lists when the padding value of the list on that side is `auto`.

Legal values are numbers from -1000 to 1000 and FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 40.

Implementation
`public function get listAutoPadding():*`
`public function set listAutoPadding(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### listMarkerFormat

property

`listMarkerFormat:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Defines the formatting attributes list markers. This value will cascade down the hierarchy and apply to any links that are descendants. Accepts `inherit`, an `IListMarkerFormat` or converts an array of objects with key and value as members to a ListMarkerFormat.

Legal values include FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of null.

Implementation
`public function get listMarkerFormat():*`
`public function set listMarkerFormat(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### listStylePosition

property

`listStylePosition:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat:

Legal values are ListStylePosition.INSIDE, ListStylePosition.OUTSIDE, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of ListStylePosition.OUTSIDE.

Implementation
`public function get listStylePosition():*`
`public function set listStylePosition(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.ListStylePosition

### listStyleType

property

`listStyleType:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat:

Legal values are ListStyleType.UPPER_ALPHA, ListStyleType.LOWER_ALPHA, ListStyleType.UPPER_ROMAN, ListStyleType.LOWER_ROMAN, ListStyleType.NONE, ListStyleType.DISC, ListStyleType.CIRCLE, ListStyleType.SQUARE, ListStyleType.BOX, ListStyleType.CHECK, ListStyleType.DIAMOND, ListStyleType.HYPHEN, ListStyleType.ARABIC_INDIC, ListStyleType.BENGALI, ListStyleType.DECIMAL, ListStyleType.DECIMAL_LEADING_ZERO, ListStyleType.DEVANAGARI, ListStyleType.GUJARATI, ListStyleType.GURMUKHI, ListStyleType.KANNADA, ListStyleType.PERSIAN, ListStyleType.THAI, ListStyleType.URDU, ListStyleType.CJK_EARTHLY_BRANCH, ListStyleType.CJK_HEAVENLY_STEM, ListStyleType.HANGUL, ListStyleType.HANGUL_CONSTANT, ListStyleType.HIRAGANA, ListStyleType.HIRAGANA_IROHA, ListStyleType.KATAKANA, ListStyleType.KATAKANA_IROHA, ListStyleType.LOWER_ALPHA, ListStyleType.LOWER_GREEK, ListStyleType.LOWER_LATIN, ListStyleType.UPPER_ALPHA, ListStyleType.UPPER_GREEK, ListStyleType.UPPER_LATIN, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of ListStyleType.DISC.

Implementation
`public function get listStyleType():*`
`public function set listStyleType(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.ListStyleType

### locale

property

`locale:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: The locale of the text. Controls case transformations and shaping. Standard locale identifiers as described in Unicode Technical Standard #35 are used. For example en, en_US and en-US are all English, ja is Japanese.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of en.

Implementation
`public function get locale():*`
`public function set locale(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### paddingBottom

property

`paddingBottom:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Bottom inset in pixels. Default of auto is zero except in lists which get a start side padding of 45. (adopts default value if undefined during cascade). Space between the bottom edge of the container and the text. Value is a Number or auto.

With horizontal text, in scrollable containers with multiple columns, the first and following columns will show the padding as blank space at the bottom of the container, but for the last column, if the text doesn't all fit, you may have to scroll in order to see the padding.

Legal values as a string are FormatValue.AUTO, FormatValue.INHERIT and numbers from -8000 to 8000.

Default value is undefined indicating not set.

If undefined during the cascade this property will have a value of FormatValue.AUTO.

Implementation
`public function get paddingBottom():*`
`public function set paddingBottom(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.elements.Configuration.autoListElementStartPadding
flashx.textLayout.formats.FormatValue

### paddingLeft

property

`paddingLeft:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Left inset in pixels. Default of auto is zero except in lists which get a start side padding of 45. (adopts default value if undefined during cascade). Space between the left edge of the container and the text. Value is a Number or auto.

With vertical text, in scrollable containers with multiple columns, the first and following columns will show the padding as blank space at the end of the container, but for the last column, if the text doesn't all fit, you may have to scroll in order to see the padding.

Legal values as a string are FormatValue.AUTO, FormatValue.INHERIT and numbers from -8000 to 8000.

Default value is undefined indicating not set.

If undefined during the cascade this property will have a value of FormatValue.AUTO.

Implementation
`public function get paddingLeft():*`
`public function set paddingLeft(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.elements.Configuration.autoListElementStartPadding
flashx.textLayout.formats.FormatValue

### paddingRight

property

`paddingRight:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Right inset in pixels. Default of auto is zero except in lists which get a start side padding of 45. (adopts default value if undefined during cascade). Space between the right edge of the container and the text. Value is a Number or auto.

Legal values as a string are FormatValue.AUTO, FormatValue.INHERIT and numbers from -8000 to 8000.

Default value is undefined indicating not set.

If undefined during the cascade this property will have a value of FormatValue.AUTO.

Implementation
`public function get paddingRight():*`
`public function set paddingRight(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.elements.Configuration.autoListElementStartPadding
flashx.textLayout.formats.FormatValue

### paddingTop

property

`paddingTop:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Top inset in pixels. Default of auto is zero except in lists which get a start side padding of 45. (adopts default value if undefined during cascade). Space between the top edge of the container and the text. Value is a Number or auto.

Legal values as a string are FormatValue.AUTO, FormatValue.INHERIT and numbers from -8000 to 8000.

Default value is undefined indicating not set.

If undefined during the cascade this property will have a value of FormatValue.AUTO.

Implementation
`public function get paddingTop():*`
`public function set paddingTop(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.elements.Configuration.autoListElementStartPadding
flashx.textLayout.formats.FormatValue

### paragraphEndIndent

property

`paragraphEndIndent:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: A Number that specifies, in pixels, the amount to indent the paragraph's end edge. Refers to the right edge in left-to-right text and the left edge in right-to-left text.

Legal values are numbers from 0 to 8000 and FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

Implementation
`public function get paragraphEndIndent():*`
`public function set paragraphEndIndent(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### paragraphSpaceAfter

property

`paragraphSpaceAfter:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: A Number that specifies the amount of space, in pixels, to leave after the paragraph. Collapses in tandem with `paragraphSpaceBefore`.

Legal values are numbers from 0 to 8000 and FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

Implementation
`public function get paragraphSpaceAfter():*`
`public function set paragraphSpaceAfter(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### paragraphSpaceBefore

property

`paragraphSpaceBefore:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: A Number that specifies the amount of space, in pixels, to leave before the paragraph. Collapses in tandem with `paragraphSpaceAfter`.

Legal values are numbers from 0 to 8000 and FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

Implementation
`public function get paragraphSpaceBefore():*`
`public function set paragraphSpaceBefore(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### paragraphStartIndent

property

`paragraphStartIndent:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: A Number that specifies, in pixels, the amount to indent the paragraph's start edge. Refers to the left edge in left-to-right text and the right edge in right-to-left text.

Legal values are numbers from 0 to 8000 and FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

Implementation
`public function get paragraphStartIndent():*`
`public function set paragraphStartIndent(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### renderingMode

property

`renderingMode:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: The rendering mode used for this text. Applies only to embedded fonts (`fontLookup` property is set to `FontLookup.EMBEDDED_CFF`).

Legal values are RenderingMode.NORMAL, RenderingMode.CFF, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of RenderingMode.CFF.

Implementation
`public function get renderingMode():*`
`public function set renderingMode(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flash.text.engine.RenderingMode

### rootElement

property

`rootElement:ContainerFormattedElement` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns the root element that appears in the container. The root element could be a DivElement or TextFlow instance, for example.

Implementation
`public function get rootElement():ContainerFormattedElement`

Related API Elements

flashx.textLayout.elements.ContainerFormattedElement
flashx.textLayout.elements.DivElement
flashx.textLayout.elements.TextFlow

### styleName

property

`styleName:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Assigns an identifying class to the element, making it possible to set a style for the element by referencing the `styleName`.

Default value is undefined indicating not set.

If undefined during the cascade this property will have a value of null.

Implementation
`public function get styleName():*`
`public function set styleName(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### styles

property

`styles:Object` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns the styles on this ContainerController. Note that the getter makes a copy of the styles dictionary. The returned object includes all styles set in the format property including core and user styles. The returned object consists of an array of stylename-value pairs.

Implementation
`public function get styles():Object`

Related API Elements

flashx.textLayout.formats.TextLayoutFormat

### tabStops

property

`tabStops:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Specifies the tab stops associated with the paragraph. Setters can take an array of TabStopFormat, a condensed string representation, undefined, or `FormatValue.INHERIT`. The condensed string representation is always converted into an array of TabStopFormat.

The string-based format is a list of tab stops, where each tab stop is delimited by one or more spaces.

A tab stop takes the following form: <alignment type><alignment position>|<alignment token>.

The alignment type is a single character, and can be S, E, C, or D (or lower-case equivalents). S or s for start, E or e for end, C or c for center, D or d for decimal. The alignment type is optional, and if its not specified will default to S.

The alignment position is a Number, and is specified according to FXG spec for Numbers (decimal or scientific notation). The alignment position is required.

The vertical bar is used to separate the alignment position from the alignment token, and should only be present if the alignment token is present.

The alignment token is optional if the alignment type is D, and should not be present if the alignment type is anything other than D. The alignment token may be any sequence of characters terminated by the space that ends the tab stop (for the last tab stop, the terminating space is optional; end of alignment token is implied). A space may be part of the alignment token if it is escaped with a backslash (\ ). A backslash may be part of the alignment token if it is escaped with another backslash (\\). If the alignment type is D, and the alignment token is not specified, it will take on the default value of null.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of null.

Implementation
`public function get tabStops():*`
`public function set tabStops(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.TabStopFormat

### textAlign

property

`textAlign:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Alignment of lines in the paragraph relative to the container. `TextAlign.LEFT` aligns lines along the left edge of the container. `TextAlign.RIGHT` aligns on the right edge. `TextAlign.CENTER` positions the line equidistant from the left and right edges. `TextAlign.JUSTIFY` spreads the lines out so they fill the space. `TextAlign.START` is equivalent to setting left in left-to-right text, or right in right-to-left text. `TextAlign.END` is equivalent to setting right in left-to-right text, or left in right-to-left text.

Legal values are TextAlign.LEFT, TextAlign.RIGHT, TextAlign.CENTER, TextAlign.JUSTIFY, TextAlign.START, TextAlign.END, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of TextAlign.START.

Implementation
`public function get textAlign():*`
`public function set textAlign(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.TextAlign

### textAlignLast

property

`textAlignLast:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Alignment of the last (or only) line in the paragraph relative to the container in justified text. If `textAlign` is set to `TextAlign.JUSTIFY`, `textAlignLast` specifies how the last line (or only line, if this is a one line block) is aligned. Values are similar to `textAlign`.

Legal values are TextAlign.LEFT, TextAlign.RIGHT, TextAlign.CENTER, TextAlign.JUSTIFY, TextAlign.START, TextAlign.END, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of TextAlign.START.

Implementation
`public function get textAlignLast():*`
`public function set textAlignLast(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.TextAlign

### textAlpha

property

`textAlpha:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Alpha (transparency) value for the text. A value of 0 is fully transparent, and a value of 1 is fully opaque. Display objects with `textAlpha` set to 0 are active, even though they are invisible.

Legal values are numbers from 0 to 1 and FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 1.

Implementation
`public function get textAlpha():*`
`public function set textAlpha(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### textDecoration

property

`textDecoration:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Decoration on text. Use to apply underlining; default is none.

Legal values are TextDecoration.NONE, TextDecoration.UNDERLINE, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of TextDecoration.NONE.

Implementation
`public function get textDecoration():*`
`public function set textDecoration(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.TextDecoration

### textFlow

property

`textFlow:flashx.textLayout.elements:TextFlow` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns the TextFlow object whose content appears in the container. Either the `textFlow` and `rootElement` values are the same, or this is the root element's TextFlow object. For example, if the container's root element is a DivElement, the value would be the TextFlow object to which the DivElement belongs.

Implementation
`public function get textFlow():flashx.textLayout.elements:TextFlow`

Related API Elements

TextFlow

### textIndent

property

`textIndent:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: A Number that specifies, in pixels, the amount to indent the first line of the paragraph. A negative indent will push the line into the margin, and possibly out of the container.

Legal values are numbers from -8000 to 8000 and FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

Implementation
`public function get textIndent():*`
`public function set textIndent(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### textJustify

property

`textJustify:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Specifies options for justifying text. Default value is `TextJustify.INTER_WORD`, meaning that extra space is added to the space characters. `TextJustify.DISTRIBUTE` adds extra space to space characters and between individual letters. Used only in conjunction with a `justificationRule` value of `JustificationRule.SPACE`.

Legal values are TextJustify.INTER_WORD, TextJustify.DISTRIBUTE, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of TextJustify.INTER_WORD.

Implementation
`public function get textJustify():*`
`public function set textJustify(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.TextJustify

### textLength

property

`textLength:int` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns the total number of characters in the container. This can include text that is not currently in view, if the container is scrollable. This value is updated when the text is composed (when the IFlowComposer's `compose()` or `updateAllControllers()` methods are called).

Implementation
`public function get textLength():int`

Related API Elements

flashx.textLayout.compose.IFlowComposer

### textRotation

property

`textRotation:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Determines the number of degrees to rotate this text.

Legal values are TextRotation.ROTATE_0, TextRotation.ROTATE_180, TextRotation.ROTATE_270, TextRotation.ROTATE_90, TextRotation.AUTO, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of TextRotation.AUTO.

Implementation
`public function get textRotation():*`
`public function set textRotation(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flash.text.engine.TextRotation

### trackingLeft

property

`trackingLeft:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Number in pixels (or percent of `fontSize`, like 120%) indicating the amount of tracking (manual kerning) to be applied to the left of each character. If kerning is enabled, the `trackingLeft` value is added to the values in the kerning table for the font. If kerning is disabled, the `trackingLeft` value is used as a manual kerning value. Supports both positive and negative values.

Legal values as a number are from -1000 to 1000.

Legal values as a percent are numbers from -1000% to 1000%.

Legal values include FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

Implementation
`public function get trackingLeft():*`
`public function set trackingLeft(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### trackingRight

property

`trackingRight:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Number in pixels (or percent of `fontSize`, like 120%) indicating the amount of tracking (manual kerning) to be applied to the right of each character. If kerning is enabled, the `trackingRight` value is added to the values in the kerning table for the font. If kerning is disabled, the `trackingRight` value is used as a manual kerning value. Supports both positive and negative values.

Legal values as a number are from -1000 to 1000.

Legal values as a percent are numbers from -1000% to 1000%.

Legal values include FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

Implementation
`public function get trackingRight():*`
`public function set trackingRight(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

### typographicCase

property

`typographicCase:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: The type of typographic case used for this text. Here are some examples:

Legal values are TLFTypographicCase.DEFAULT, TLFTypographicCase.CAPS_TO_SMALL_CAPS, TLFTypographicCase.UPPERCASE, TLFTypographicCase.LOWERCASE, TLFTypographicCase.LOWERCASE_TO_SMALL_CAPS, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of TLFTypographicCase.DEFAULT.

Implementation
`public function get typographicCase():*`
`public function set typographicCase(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.TLFTypographicCase

### userStyles

property

`userStyles:Object`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Allows you to read and write user styles on a ContainerController object. Note that reading this property makes a copy of the userStyles set in the format of this element.

Implementation
`public function get userStyles():Object`
`public function set userStyles(value:Object):void`

### verticalAlign

property

`verticalAlign:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Vertical alignment or justification (adopts default value if undefined during cascade). Determines how TextFlow elements align within the container.

Legal values are VerticalAlign.TOP, VerticalAlign.MIDDLE, VerticalAlign.BOTTOM, VerticalAlign.JUSTIFY, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will have a value of VerticalAlign.TOP.

Implementation
`public function get verticalAlign():*`
`public function set verticalAlign(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.VerticalAlign

### verticalScrollPolicy

property

`verticalScrollPolicy:String`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the vertical scrolling policy, which you can set by assigning one of the constants of the ScrollPolicy class: ON, OFF, or, AUTO.

Implementation
`public function get verticalScrollPolicy():String`
`public function set verticalScrollPolicy(value:String):void`

Related API Elements

ScrollPolicy

### verticalScrollPosition

property

`verticalScrollPosition:Number`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the current vertical scroll location on the stage. The value specifies the number of pixels from the top.

Implementation
`public function get verticalScrollPosition():Number`
`public function set verticalScrollPosition(value:Number):void`

### whiteSpaceCollapse

property

`whiteSpaceCollapse:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Collapses or preserves whitespace when importing text into a TextFlow. `WhiteSpaceCollapse.PRESERVE` retains all whitespace characters. `WhiteSpaceCollapse.COLLAPSE` removes newlines, tabs, and leading or trailing spaces within a block of imported text. Line break tags () and Unicode line separator characters are retained.

Legal values are WhiteSpaceCollapse.PRESERVE, WhiteSpaceCollapse.COLLAPSE, FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of WhiteSpaceCollapse.COLLAPSE.

Implementation
`public function get whiteSpaceCollapse():*`
`public function set whiteSpaceCollapse(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Related API Elements

flashx.textLayout.formats.WhiteSpaceCollapse

### wordSpacing

property

`wordSpacing:*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

TextLayoutFormat: Specifies the optimum, minimum, and maximum spacing (as a multiplier of the width of a normal space) between words to use during justification. The optimum space is used to indicate the desired size of a space, as a fraction of the value defined in the font. The minimum and maximum values are the used when textJustify is distribute to determine how wide or narrow the spaces between the words may grow before letter spacing is used to justify the line.

Legal values as a percent are numbers from -1000% to 1000%.

Legal values include FormatValue.INHERIT.

Default value is undefined indicating not set.

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 100%, 50%, 150%.

Implementation
`public function get wordSpacing():*`
`public function set wordSpacing(value:any):void`
Throws

| `RangeError` — when set value is not within range for this property

Constructor Detail

### ContainerController

()
Constructor

`public function ContainerController(container:Sprite, compositionWidth:Number = 100, compositionHeight:Number = 100)`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Constructor - creates a ContainerController instance. The ContainerController has a default `compositionWidth` and `compositionHeight` so that some text appears in the container if you don't specify its width height.

Parameters

| `container:Sprite` — The DisplayObjectContainer in which to manage the text lines.
| `compositionWidth:Number` (default = `100`)`` — The initial width for composing text in the container.
| `compositionHeight:Number` (default = `100`)`` — The initial height for composing text in the container.

Method Detail

### activateHandler

()
method

`public function activateHandler(event:Event):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `Event.ACTIVATE` event when the client manages events.

Parameters

| `event:Event` — The Event object.

Related API Elements

Event.ACTIVATE
Example ( How to use this example )
This example extends ContainerController to override its activateHandler() method with a custom activateHandler() method. The example requires an application that triggers the activateHandler() method.
Copy

    package flashx.textLayout.container.examples
    {
        import flash.display.Sprite;
         import flash.events.Event;
         import flashx.textLayout.container.ContainerController;

        public class ContainerController_activateHandlerExample extends ContainerController
        {
            public function ContainerController_activateHandlerExample(container:Sprite, compositionWidth:Number=100, compositionHeight:Number=100)
            {
                super(container, compositionWidth, compositionHeight);
            }
            override public function activateHandler(event:Event):void
            {
                // run the TLF handler for the activate event
                super.activateHandler(event);
                // and add your own code for the event
                trace("You are in activateHandler()");
            }
        }
    }

### addBackgroundShape

()
method

`protected function addBackgroundShape(shape:Shape):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Adds a `flash.display.Shape` object on which background shapes (such as background color) are drawn. The default implementation of this method, which may be overriden, adds the object to `container` just before the first `flash.text.engine.TextLine` child, if one exists, and after the last exisiting child otherwise.

Parameters

| `shape:Shape` — `flash.display.Shape` object to add

Related API Elements

flash.display.Shape
flash.text.engine.TextLine
container

### addInlineGraphicElement

()
method

`protected function addInlineGraphicElement(parent:DisplayObjectContainer, inlineGraphicElement:DisplayObject, index:int):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 2.0

Adds a `flash.display.DisplayObject` object as a descendant of `parent`. The default implementation of this method, which may be overriden, adds the object as a direct child of `parent` at the specified index. This is called to add InlineGraphicElements to the TextLine or container.

Parameters

| `parent:DisplayObjectContainer` — the `flash.display.DisplayObjectContainer` object to add the inlineGraphicElement to
| `inlineGraphicElement:DisplayObject` — the `flash.display.DisplayObject` object to add
| `index:int` — insertion index of the float in its parent

Related API Elements

flash.display.DisplayObjectContainer
flash.display.DisplayObject
container

### addSelectionContainer

()
method

`protected function addSelectionContainer(selectionContainer:DisplayObjectContainer):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Adds a `flash.display.DisplayObjectContainer` object to which selection shapes (such as block selection highlight, cursor etc.) are added. The default implementation of this method, which may be overriden, has the following behavior: The object is added just before first `flash.text.engine.TextLine` child of `container` if one exists and the object is opaque and has normal blend mode. In all other cases, it is added as the last child of `container`.

Parameters

| `selectionContainer:DisplayObjectContainer` — `flash.display.DisplayObjectContainer` object to add

Related API Elements

flash.display.DisplayObjectContainer
flash.text.engine.TextLine
container

### addTextLine

()
method

`protected function addTextLine(textLine:flash.text.engine:TextLine, index:int):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Adds a `flash.text.engine.TextLine` object as a descendant of `container`. The default implementation of this method, which may be overriden, adds the object as a direct child of `container` at the specified index.

Parameters

| `textLine:flash.text.engine:TextLine` — the `flash.text.engine.TextLine` object to add
| `index:int` — insertion index of the text line in its parent

Related API Elements

flash.text.engine.TextLine
container

### autoScrollIfNecessary

()
method

`public function autoScrollIfNecessary(mouseX:int, mouseY:int):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Handle a scroll event during a "drag" selection.

Parameters

| `mouseX:int` — The horizontal position of the mouse cursor on the stage.
| `mouseY:int` — The vertical position of the mouse cursor on the stage.

### beginMouseCapture

()
method

`public function beginMouseCapture():void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Called to request clients to begin the forwarding of mouseup and mousemove events from outside a security sandbox.

### clearStyle

()
method

`public function clearStyle(styleProp:String):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Clears the style specified by `styleProp` from this FlowElement. Sets the value to `undefined`.

Parameters

| `styleProp:String`

### createContextMenu

()
method

`protected function createContextMenu():ContextMenu`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Creates a context menu for the ContainerController. Use the methods of the ContextMenu class to add items to the menu.

You can override this method to define a custom context menu.

Returns

| `ContextMenu`

Related API Elements

ContextMenu

### deactivateHandler

()
method

`public function deactivateHandler(event:Event):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `Event.DEACTIVATE` event when the client manages events.

Parameters

| `event:Event` — The Event object.

Related API Elements

Event.DEACTIVATE

### editHandler

()
method

`public function editHandler(event:Event):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes an edit event (CUT, COPY, PASTE, SELECT_ALL) when the client manages events.

Parameters

| `event:Event` — Event object.

Related API Elements

Event
Example ( How to use this example )
This example extends ContainerController to override its editHandler() method with a custom editHandler() method. The example requires an application that triggers the editHandler() method.
Copy

    package flashx.textLayout.container.examples
    {
        import flash.events.Event;
        import flash.display.Sprite;
        import flashx.textLayout.container.ContainerController;

        public class ContainerController_editHandlerExample extends ContainerController
        {
            public function ContainerController_editHandlerExample(container:Sprite, compositionWidth:Number=100, compositionHeight:Number=100)
            {
                super(container, compositionWidth, compositionHeight);
            }
            override public function editHandler(event:Event):void
            {
                // run the TLF handler for the focus event
                super.editHandler(event);
                // and add your own code for the event
                trace("You are in editHandler()");
            }
        }
    }

### endMouseCapture

()
method

`public function endMouseCapture():void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Called to inform clients that the the forwarding of mouseup and mousemove events from outside a security sandbox is no longer needed.

### focusChangeHandler

()
method

`public function focusChangeHandler(event:FocusEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `FocusEvent.KEY_FOCUS_CHANGE` and `FocusEvent.MOUSE_FOCUS_CHANGE` events when the client manages events.

Parameters

| `event:FocusEvent` — The FocusEvent object.

Related API Elements

FocusEvent.KEY_FOCUS_CHANGE
FocusEvent.MOUSE_FOCUS_CHANGE

### focusInHandler

()
method

`public function focusInHandler(event:FocusEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `FocusEvent.FOCUS_IN` event when the client manages events.

Parameters

| `event:FocusEvent` — The FocusEvent object.

Related API Elements

FocusEvent.FOCUS_IN
Example ( How to use this example )
This example extends ContainerController to override its focusInHandler() method with a custom focusInHandler() method. The example requires an application that triggers the focusInHandler() method.
Copy

    package flashx.textLayout.container.examples
    {
        import flash.events.FocusEvent;
        import flash.display.Sprite;
        import flashx.textLayout.container.ContainerController;

        public class ContainerController_focusInHandlerExample extends ContainerController
        {
            public function ContainerController_focusInHandlerExample(container:Sprite, compositionWidth:Number=100, compositionHeight:Number=100)
            {
                super(container, compositionWidth, compositionHeight);
            }
            override public function focusInHandler(event:FocusEvent):void
            {
                // run the TLF handler for the focus event
                super.focusInHandler(event);
                // and add your own code for the event
                trace("You are in focusInHandler()");
            }
        }
    }

### focusOutHandler

()
method

`public function focusOutHandler(event:FocusEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `FocusEvent.FOCUS_OUT` event when the client manages events.

Parameters

| `event:FocusEvent` — The FocusEvent object.

Related API Elements

FocusEvent.FOCUS_OUT

### getContentBounds

()
method

`public function getContentBounds():Rectangle`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns the area that the text occupies, as reflected by the last compose or update operation. The width and the height might be estimated, if the container is scrollable and the text exceeds the visible area.

Returns

| `Rectangle` — describes the area that the text occupies.

Related API Elements

Rectangle
Example ( How to use this example )
This example uses `getContentBounds()` to draw a border around the text.
Copy

    package flashx.textLayout.container.examples
    {
        import flash.geom.Rectangle;
        import flash.display.Sprite;
        import flashx.textLayout.elements.TextFlow;
        import flashx.textLayout.container.ContainerController;
        import flashx.textLayout.conversion.TextConverter;

        public class ContainerController_getContentBoundsExample extends Sprite
        {
            private const textMarkup:String = "<flow:TextFlow xmlns:flow='http://ns.adobe.com/textLayout/2008' fontSize='08' " +
                "textIndent='10' paragraphSpaceBefore='6' paddingTop='8' paddingLeft='8' paddingRight='8'>" +
                "<flow:p paragraphSpaceBefore='inherit'>" +
                "<flow:span>There are many </flow:span>" +
                "<flow:span fontStyle='italic'>such</flow:span>" +
                "<flow:span> lime-kilns in that tract of country, for the purpose of burning the white" +
                " marble which composes a large part of the substance of the hills. Some of them, built " +
                "years ago, and long deserted, with weeds growing in the vacant round of the interior, " +
                "which is open to the sky, and grass and wild-flowers rooting themselves into the chinks" +
                "of the stones, look already like relics of antiquity, and may yet be overspread with the" +
                " lichens of centuries to come.</flow:span>" +
                "</flow:p>" +
                "</flow:TextFlow>";

            public function ContainerController_getContentBoundsExample(textFlow:TextFlow):void
            {
                // Body text TextFlow and flow composer
                var textFlow:TextFlow = new TextFlow();
                textFlow = TextConverter.importToFlow(textMarkup, TextConverter.TEXT_LAYOUT_FORMAT);
                var container:Sprite = new Sprite();
                var controller:ContainerController = new ContainerController(container, 120, 200);
                container.x = 150;
                container.y = 50;
                // Add controller to text flow; add container to stage and display text
                textFlow.flowComposer.addController(controller);
                addChild(container);
                textFlow.flowComposer.updateAllControllers();
                // draw a border around the text
                drawBorder(controller);
            }

            private function drawBorder(controller:ContainerController):void
            {
                // get the rectangle that makes up the bounds of the content
                var bounds:Rectangle = controller.getContentBounds();
                // retrieve the container and draw the border
                var container:Sprite = controller.container as Sprite;
                container.graphics.lineStyle(.5);
                container.graphics.moveTo(bounds.left,bounds.top);
                container.graphics.lineTo(bounds.right,bounds.top);
                container.graphics.lineTo(bounds.right,bounds.bottom);
                container.graphics.lineTo(bounds.left,bounds.bottom);
                container.graphics.lineTo(bounds.left,bounds.top);
                container.graphics.drawRect(bounds.left, bounds.top, bounds.width, bounds.height );
            }
        }
    }

### getFirstTextLineChildIndex

()
method

`protected function getFirstTextLineChildIndex():int`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Gets the index at which the first text line must appear in its parent. The default implementation of this method, which may be overriden, returns the child index of the first `flash.text.engine.TextLine` child of `container` if one exists, and that of the last child of `container` otherwise.

Returns

| `int` — the index at which the first text line must appear in its parent.

Related API Elements

flash.text.engine.TextLine
container

### getScrollDelta

()
method

`public function getScrollDelta(numLines:int):Number`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Figure out the scroll distance required to scroll up or down by the specified number of lines. Negative numbers scroll upward, bringing more of the top of the TextFlow into view. Positive numbers scroll downward, bringing the next line from the bottom into full view.

When scrolling up, for example, the method makes the next line fully visible. If the next line is partially obscured and the number of lines specified is 1, the partially obscured line becomes fully visible.

Parameters

| `numLines:int` — The number of lines to scroll.

Returns

| `Number` — the delta amount of space to scroll

### getStyle

()
method

`public function getStyle(styleProp:String):*`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns the value of the style specified by the `styleProp` parameter.

Parameters

| `styleProp:String` — The name of the style property whose value you want.

Returns

| `*` — The current value for the specified style.

### imeStartCompositionHandler

()
method

`public function imeStartCompositionHandler(event:IMEEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `IMEEvent.IME_START_COMPOSITION` event when the client manages events.

Parameters

| `event:IMEEvent` — The IMEEvent object.

Related API Elements

flash.events.IMEEvent.IME_START_COMPOSITION

### invalidateContents

()
method

`public function invalidateContents():void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Marks all the text in this container as needing composing.

Example ( How to use this example )
This example checks whether invalidateContents() causes the text flow to be damaged.
Copy

    package flashx.textLayout.container.examples
    {
        import flash.display.Sprite;
        import flashx.textLayout.container.ContainerController;
        import flashx.textLayout.elements.ParagraphElement;
        import flashx.textLayout.elements.SpanElement;
        import flashx.textLayout.elements.TextFlow;
        import flashx.textLayout.conversion.TextConverter;

        public class ContainerController_invalidateContentsExample extends Sprite
        {
            public function ContainerController_invalidateContentsExample()
            {
                // create container, text flow, composer, paragraph, and span
                var container:Sprite = new Sprite();
                var textFlow:TextFlow = new TextFlow();
                var paragraph:ParagraphElement = new ParagraphElement();
                var span:SpanElement = new SpanElement;
                // add container to the stage; create controller and add it to the text flow
                addChild(container);
                container.x = 100;
                container.y = 50;
                var controller:ContainerController = new ContainerController(container, 200, 200);
                textFlow.flowComposer.addController(controller);
                // set font size and add text to the span; add the span to the paragraph
                textFlow.fontSize = 16;
                span.text = "Does invalidateContents() cause this text to be damaged?";
                paragraph.addChild(span);
                textFlow.addChild(paragraph);
                //update controller to display text
                textFlow.flowComposer.updateAllControllers();
                // invalidate the controller contents and check to see if they are damaged
                controller.invalidateContents();
                if(controller.isDamaged())
                    span.text += "\nYes, it does.";
                else
                    span.text += "\nNo, it doesn't";
                textFlow.flowComposer.updateAllControllers();
            }
        }
    }

### isDamaged

()
method

`public function isDamaged():Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Determines whether the container has text that requires composing.

Returns

| `Boolean` — true if the container requires composing.

Example ( How to use this example )
This example checks to see if the text flow is damaged after replacing text in the span.
Copy

    package flashx.textLayout.container.examples
    {
        import flash.display.Sprite;
        import flashx.textLayout.container.ContainerController;
        import flashx.textLayout.elements.ParagraphElement;
        import flashx.textLayout.elements.SpanElement;
        import flashx.textLayout.elements.TextFlow;
        import flashx.textLayout.conversion.TextConverter;

        public class ContainerController_isDamagedExample extends Sprite
        {
            public function ContainerController_isDamagedExample()
            {
                // create container, composer, text flow, paragraph, and span
                var container:Sprite = new Sprite();
                var textFlow:TextFlow = new TextFlow();
                var paragraph:ParagraphElement = new ParagraphElement();
                var span:SpanElement = new SpanElement;
                // add container to the stage; create controller and add it to the text flow
                addChild(container);
                var controller:ContainerController = new ContainerController(container, 200, 700 );
                textFlow.flowComposer.addController(controller);
                //set font size, add text to the span and the paragraph to the text flow
                            textFlow.fontSize = 24;
                span.text = "Does this text flow need to be composed?";
                paragraph.addChild(span);
                textFlow.addChild(paragraph);
                // display the text
                textFlow.flowComposer.updateAllControllers();
                // replace 'this' with 'your' and check to see if text flow is damaged
                span.replaceText(5, 9, "your");
                if(controller.isDamaged())
                {
                    span.text += " Yes it does.";
                }
                textFlow.flowComposer.updateAllControllers();
            }
        }
    }

### keyDownHandler

()
method

`public function keyDownHandler(event:KeyboardEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `KeyboardEvent.KEY_DOWN` event when the client manages events.

Parameters

| `event:KeyboardEvent` — KeyboardEvent object.

Related API Elements

KeyboardEvent.KEY_DOWN

### keyFocusChangeHandler

()
method

`public function keyFocusChangeHandler(event:FocusEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `FocusEvent.KEY_FOCUS_CHANGE` event when the client manages events.

Parameters

| `event:FocusEvent` — The FocusEvent object.

Related API Elements

FocusEvent.KEY_FOCUS_CHANGE

### keyUpHandler

()
method

`public function keyUpHandler(event:KeyboardEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `Keyboard.KEY_UP` event when the client manages events.

Parameters

| `event:KeyboardEvent` — The KeyboardEvent object.

Related API Elements

KeyboardEvent.KEY_UP
Example ( How to use this example )
This example extends ContainerController to override its keyUpHandler() method with a custom keyUpHandler() method. The example requires an application that triggers the keyUpHandler() method.
Copy

    package flashx.textLayout.container.examples
    {
        import flash.events.KeyboardEvent;
        import flash.display.Sprite;
        import flashx.textLayout.container.ContainerController;

        public class ContainerController_keyUpHandlerExample extends ContainerController
        {
            public function ContainerController_keyUpHandlerExample(container:Sprite, compositionWidth:Number=100, compositionHeight:Number=100)
            {
                super(container, compositionWidth, compositionHeight);
            }
            override public function keyUpHandler(event:KeyboardEvent):void
            {
                // run the TLF handler for the KEY_UP event
                super.keyUpHandler(event);
                // and add your own code for the event
                trace("You are in keyUpHandler()");
            }
        }
    }

### menuSelectHandler

()
method

`public function menuSelectHandler(event:ContextMenuEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `ContextMenuEvent.MENU_SELECT` event when the client manages events.

Parameters

| `event:ContextMenuEvent` — ContextMenuEvent object.

Related API Elements

ContextMenuEvent.MENU_SELECT
Example ( How to use this example )
This example extends ContainerController to override its menuSelectHandler() method with a custom menuSelectHandler() method. The example requires an application that triggers the menuSelectHandler() method.
Copy

    package flashx.textLayout.container.examples
    {
        import flash.events.ContextMenuEvent;
        import flash.display.Sprite;
        import flashx.textLayout.container.ContainerController;

        public class ContainerController_menuSelectHandlerExample extends ContainerController
        {
            public function ContainerController_menuSelectHandlerExample(container:Sprite, compositionWidth:Number=100, compositionHeight:Number=100)
             {
                 super(container, compositionWidth, compositionHeight);
             }
            override public function menuSelectHandler(event:ContextMenuEvent):void
            {
                // run the TLF handler for the MENU_SELECT event
                super.menuSelectHandler(event);
                // and add your own code for the event
                trace("You are in menuSelectHandler()");
            }
        }
    }

### mouseDoubleClickHandler

()
method

`public function mouseDoubleClickHandler(event:MouseEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `MouseEvent.DOUBLE_CLICK` event when the client manages events.

Parameters

| `event:MouseEvent` — The MouseEvent object.

Related API Elements

MouseEvent.DOUBLE_CLICK
Example ( How to use this example )
This example extends ContainerController to override its mouseDoubleClickHandler() method with a custom mouseDoubleClickHandler() method. The example requires an application that triggers the mouseDoubleClickHandler() method.
Copy

    package flashx.textLayout.container.examples
    {
        import flash.events.MouseEvent;
        import flash.display.Sprite;
        import flashx.textLayout.container.ContainerController;

        public class ContainerController_mouseDoubleClickHandlerExample extends ContainerController
        {
            public function ContainerController_mouseDoubleClickHandlerExample(container:Sprite, compositionWidth:Number=100, compositionHeight:Number=100)
            {
                super(container, compositionWidth, compositionHeight);
            }
            override public function mouseDoubleClickHandler(event:MouseEvent):void
            {
                // run the TLF handler for the MOUSE_OVER event
                super.mouseDoubleClickHandler(event);
                // and add your own code for the event
                trace("You are in mouseDoubleClickHandler()");
            }
        }
    }

### mouseDownHandler

()
method

`public function mouseDownHandler(event:MouseEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `MouseEvent.MOUSE_DOWN` event when the client manages events.

Parameters

| `event:MouseEvent` — The MouseEvent object.

Related API Elements

MouseEvent.MOUSE_DOWN

### mouseMoveHandler

()
method

`public function mouseMoveHandler(event:MouseEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `MouseEvent.MOUSE_MOVE` event when the client manages events.

Parameters

| `event:MouseEvent` — The MouseEvent object.

Related API Elements

MouseEvent.MOUSE_MOVE

### mouseMoveSomewhere

()
method

`public function mouseMoveSomewhere(event:Event):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Client call to forward a mouseMove event from outside a security sandbox. Coordinates of the mouse move are not needed.

Parameters

| `event:Event`

### mouseOutHandler

()
method

`public function mouseOutHandler(event:MouseEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `MouseEvent.MOUSE_OUT` event when the client manages events.

Parameters

| `event:MouseEvent` — The MouseEvent object.

Related API Elements

MouseEvent.MOUSE_OUT

### mouseOverHandler

()
method

`public function mouseOverHandler(event:MouseEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `MouseEvent.MOUSE_OVER` event when the client manages events.

Parameters

| `event:MouseEvent` — The MouseEvent object.

Related API Elements

MouseEvent.MOUSE_OVER
Example ( How to use this example )
This example extends ContainerController to override its mouseOverHandler() method with a custom mouseOverHandler() method. The example requires an application that triggers the mouseOverHandler() method.
Copy

    package flashx.textLayout.container.examples
    {
        import flash.events.MouseEvent;
        import flash.display.Sprite;
        import flashx.textLayout.container.ContainerController;

        public class ContainerController_mouseOverHandlerExample extends ContainerController
        {
            public function ContainerController_mouseOverHandlerExample(container:Sprite, compositionWidth:Number=100, compositionHeight:Number=100)
            {
                super(container, compositionWidth, compositionHeight);
            }
            override public function mouseOverHandler(event:MouseEvent):void
            {
                // run the TLF handler for the MOUSE_OVER event
                super.mouseOverHandler(event);
                // and add your own code for the event
                trace("You are in mouseOverHandler()");
            }
        }
    }

### mouseUpHandler

()
method

`public function mouseUpHandler(event:MouseEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `MouseEvent.MOUSE_UP` event when the client manages events.

Parameters

| `event:MouseEvent` — The MouseEvent object.

Related API Elements

MouseEvent.MOUSE_UP

### mouseUpSomewhere

()
method

`public function mouseUpSomewhere(event:Event):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Client call to forward a mouseUp event from outside a security sandbox. Coordinates of the mouse up are not needed.

Parameters

| `event:Event`

### mouseWheelHandler

()
method

`public function mouseWheelHandler(event:MouseEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `MouseEvent.MOUSE_WHEEL` event when the client manages events.

Parameters

| `event:MouseEvent` — The MouseEvent object.

Related API Elements

MouseEvent.MOUSE_WHEEL

### removeBackgroundShape

()
method

`protected function removeBackgroundShape(shape:Shape):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Removes a `flash.display.Shape` object on which background shapes (such as background color) are drawn. The default implementation of this method, which may be overriden, removes the object from its `parent`.

Parameters

| `shape:Shape` — `flash.display.Shape` object to remove

Related API Elements

flash.display.Shape
flash.text.engine.TextLine
container

### removeInlineGraphicElement

()
method

`protected function removeInlineGraphicElement(parent:DisplayObjectContainer, inlineGraphicElement:DisplayObject):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 2.0

Removes a `flash.display.DisplayObject` object from its parent. The default implementation of this method, which may be overriden, removes the object from `container` if it is a direct child of the latter. This method may be called even if the object is not a descendant of `parent`. Any implementation of this method must ensure that no action is taken in this case.

Parameters

| `parent:DisplayObjectContainer` — the `flash.display.DisplayObject` object to remove
| `inlineGraphicElement:DisplayObject`

Related API Elements

flash.display.DisplayObjectContainer
flash.display.DisplayObject
container

### removeSelectionContainer

()
method

`protected function removeSelectionContainer(selectionContainer:DisplayObjectContainer):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Removes the `flash.display.DisplayObjectContainer` object which contains selection shapes (such as block selection highlight, cursor etc.). The default implementation of this method, which may be overriden, removes the object from its parent if one exists.

Parameters

| `selectionContainer:DisplayObjectContainer` — `flash.display.DisplayObjectContainer` object to remove

Related API Elements

flash.display.DisplayObjectContainer
container

### removeTextLine

()
method

`protected function removeTextLine(textLine:flash.text.engine:TextLine):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Removes a `flash.text.engine.TextLine` object from its parent. The default implementation of this method, which may be overriden, removes the object from `container` if it is a direct child of the latter. This method may be called even if the object is not a descendant of `container`. Any implementation of this method must ensure that no action is taken in this case.

Parameters

| `textLine:flash.text.engine:TextLine` — the `flash.text.engine.TextLine` object to remove

Related API Elements

flash.text.engine.TextLine
container

### scrollToRange

()
method

`public function scrollToRange(activePosition:int, anchorPosition:int):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Scrolls so that the text range is visible in the container.

Parameters

| `activePosition:int` — The end of the selection that is changed when you extend the selection. It can be either the start or the end of the selection, expressed as an offset from the start of the text flow.
| `anchorPosition:int` — The stable end of the selection when you extend the selection. It can be either the start or the end of the selection.

### selectRange

()
method

`public function selectRange(anchorIndex:int, activeIndex:int):void`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 10.0

Sets the range of selected text in a component implementing ITextSupport. If either of the arguments is out of bounds the selection should not be changed. Components which wish to support inline IME should call into this method.

Parameters

| `anchorIndex:int` — The zero-based index value of the character at the anchor end of the selection
| `activeIndex:int` — The zero-based index value of the character at the active end of the selection.

### setCompositionSize

()
method

`public function setCompositionSize(w:Number, h:Number):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Sets the width and height allowed for text in the container. Width and height can be specified in pixels or `NaN` can be used for either value. `NaN` indicates measure that value. This can be used to find the widest line and/or the total height of all the content. When NaN is specified as the width lines are broken with a maximum width of `TextLine.MAX_LINE_WIDTH`. When `NaN` is specified as the height the container is assumed to have unlimited height. The actual measured values can be ready back in `getContentBounds`. When the computed `blockProgression` property of `TextFlow` is `BlockProgression.RL` the meanings of width and height are exchanged.

Parameters

| `w:Number` — The width in pixels that's available for text in the container. `NaN` indicates no specified width.
| `h:Number` — The height in pixels that's available for text in the container. `NaN` indicates no specified height.

Related API Elements

flash.text.engine.TextLine.MAX_LINE_WIDTH
flashx.textLayout.formats.BlockProgression
getContentBounds()
Example ( How to use this example )
This example sets the composition width and height with `setCompositionSize()`.
Copy

    package flashx.textLayout.container.examples
    {
        import flash.display.Sprite;
        import flashx.textLayout.container.ContainerController;
        import flashx.textLayout.elements.ParagraphElement;
        import flashx.textLayout.elements.SpanElement;
        import flashx.textLayout.elements.TextFlow;
        import flashx.textLayout.conversion.TextConverter;

        public class ContainerController_setCompositionSizeExample extends Sprite
        {
            public function ContainerController_setCompositionSizeExample()
            {
                // create container, text flow, composer, paragraph, and span
                var container:Sprite = new Sprite();
                var textFlow:TextFlow = new TextFlow();
                var paragraph:ParagraphElement = new ParagraphElement();
                var span:SpanElement = new SpanElement;
                // add container to the stage; create controller and add it to the text flow
                addChild(container);
                container.x = 100;
                container.y = 50;
                var controller:ContainerController = new ContainerController(container);
                textFlow.flowComposer.addController(controller);
                // set font size and add text to the span; add the span to the paragraph
                textFlow.fontSize = 12;
                controller.setCompositionSize(250, 200);
                span.text = "This example uses setCompositionSize() to set compositionWidth (";
                span.text += controller.compositionWidth;
                span.text += ") and compositionHeight ("
                span.text += controller.compositionHeight;
                span.text += "), rather than setting them with:\nnew ContainerController()";
                paragraph.addChild(span);
                // add paragraph to text flow, and display text
                textFlow.addChild(paragraph);
                textFlow.flowComposer.updateAllControllers();
            }
        }
    }

### setStyle

()
method

`public function setStyle(styleProp:String, newValue:*):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Sets the value of the style specified by the `styleProp` parameter to the value specified by the `newValue` parameter.

Parameters

| `styleProp:String` — The name of the style property whose value you want to set.
| `newValue:*` — The value that you want to assign to the style.

### softKeyboardActivatingHandler

()
method

`public function softKeyboardActivatingHandler(event:Event):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.2, AIR 1.5

Processes the `SoftKeyboardEvent.SOFT_KEYBOARD_ACTIVATING` event when the client manages events.

Parameters

| `event:Event` — The SoftKeyboardEvent object.

Related API Elements

SoftKeyboardEvent.SOFT_KEYBOARD_ACTIVATING

### textInputHandler

()
method

`public function textInputHandler(event:flash.events:TextEvent):void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Processes the `TextEvent.TEXT_INPUT` event when the client manages events.

Parameters

| `event:flash.events:TextEvent` — The TextEvent object.

Related API Elements

TextEvent.TEXT_INPUT
Example ( How to use this example )
This example extends ContainerController to override its textInputHandler() method with a custom textInputHandler() method. The example requires an application that triggers the textInputHandler() method.
Copy

    package flashx.textLayout.container.examples
    {
        import flash.events.TextEvent;
        import flash.display.Sprite;
        import flashx.textLayout.container.ContainerController;

        public class ContainerController_textInputHandlerExample extends ContainerController
        {
            public function ContainerController_textInputHandlerExample(container:Sprite, compositionWidth:Number=100, compositionHeight:Number=100)
             {
                 super(container, compositionWidth, compositionHeight);
             }
            override public function textInputHandler(event:TextEvent):void
            {
                // run the TLF handler for the textInput event
                super.textInputHandler(event);
                // and add your own code for the event - e.g. only allow alpha characters
                trace("You are in textInputHandler()");

            }
        }
    }

### updateGraphics

()
method

`tlf_internal function updateGraphics(updateStart:int):void`

Parameters

| `updateStart:int`

### updateVisibleRectangle

()
method

`protected function updateVisibleRectangle():void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

If scrolling, sets the scroll rectangle to the container rectangle so that any lines that are halfway in view are clipped to the scrollable region. If not scrolling, clear the scroll rectangle so that no clipping occurs.

Examples How to use this example
ContainerControllerExample1.as
This example displays a text flow in two circles that are linked containers, meaning that the text that overflows the first container automatically flows into the second container. Notice that there are two containers and controllers but one text flow.
Copy

    package flashx.textLayout.container.examples
    {
        import flash.display.Sprite;
        import flashx.textLayout.compose.StandardFlowComposer;
        import flashx.textLayout.container.ContainerController;
        import flashx.textLayout.conversion.TextConverter;
        import flashx.textLayout.elements.TextFlow;

        public class ContainerControllerExample1 extends Sprite
        {
            private const textMarkup:String = "<flow:TextFlow xmlns:flow='http://ns.adobe.com/textLayout/2008' fontSize='8' " +
                    "textIndent='10' paragraphSpaceBefore='6' paddingTop='8' paddingLeft='8' paddingRight='8'>" +
                "<flow:p paragraphSpaceBefore='inherit'>" +
                    "<flow:span>There are many </flow:span>" +
                    "<flow:span fontStyle='italic'>such</flow:span>" +
                    "<flow:span> lime-kilns in that tract of country, for the purpose of burning the white" +
                        " marble which composes a large part of the substance of the hills. Some of them, built " +
                        "years ago, and long deserted, with weeds growing in the vacant round of the interior, " +
                        "which is open to the sky, and grass and wild-flowers rooting themselves into the chinks" +
                        "of the stones, look already like relics of antiquity, and may yet be overspread with the" +
                        " lichens of centuries to come. Others, where the lime-burner still feeds his daily and " +
                        "nightlong fire, afford points of interest to the wanderer among the hills, who seats " +
                        "himself on a log of wood or a fragment of marble, to hold a chat with the solitary man. " +
                        "It is a lonesome, and, when the character is inclined to thought, may be an intensely " +
                        "thoughtful occupation; as it proved in the case of Ethan Brand, who had mused to such " +
                        "strange purpose, in days gone by, while the fire in this very kiln was burning.</flow:span>" +
                "</flow:p>" +
                "<flow:p paragraphSpaceBefore='inherit'>" +
                    "<flow:span>" +
                        "The man who now watched the fire was of a different order, and troubled himself with no " +
                        "thoughts save the very few that were requisite to his business. At frequent intervals, " +
                        "he flung back the clashing weight of the iron door, and, turning his face from the " +
                        "insufferable glare, thrust in huge logs of oak, or stirred the immense brands with a " +
                        "long pole. Within the furnace were seen the curling and riotous flames, and the burning " +
                        "marble, almost molten with the intensity of heat; while without, the reflection of the " +
                        "fire quivered on the dark intricacy of the surrounding forest, and showed in the " +
                        "foreground a bright and ruddy little picture of the hut, the spring beside its door, the " +
                        "athletic and coal-begrimed figure of the lime-burner, and the halffrightened child, " +
                        "shrinking into the protection of his father's shadow. And when again the iron door was " +
                        "closed, then reappeared the tender light of the half-full moon, which vainly strove to" +
                        "trace out the indistinct shapes of the neighboring mountains; and, in the upper sky, " +
                        "there was a flitting congregation of clouds, still faintly tinged with the rosy sunset, " +
                        "though thus far down into the valley the sunshine had vanished long and long ago.</flow:span>" +
                "</flow:p>" +
            "</flow:TextFlow>";
            public function ContainerControllerExample1()
            {
                // create the TextFlow, containers, and container controllers
                var textFlow:TextFlow;
                var container:Sprite = new Sprite();
                var container2:Sprite = new Sprite();
                var controllerOne:ContainerController = new ContainerController(container, 200, 210);
                var controllerTwo:ContainerController = new ContainerController(container2, 200, 220);
                // import the text flow from markup using TextConverter and assign a StandardFlowComposer
                textFlow = TextConverter.importToFlow(textMarkup, TextConverter.TEXT_LAYOUT_FORMAT);
                textFlow.flowComposer = new StandardFlowComposer();
                // draw the container circles, add them to the stage and position them
                container.graphics.beginFill(0xFFCC00);
                container.graphics.drawCircle(100, 100, 140);
                container.graphics.endFill();
                container2.graphics.beginFill(0xFF0000);
                container2.graphics.drawCircle(100, 100, 140);
                container2.graphics.endFill();
                addChild(container);
                addChild(container2);
                container.x = 25;
                container.y = 100;
                container2.x = 280;
                container2.y = 100;
                // add the controllers to the text flow and update them to display the text
                textFlow.flowComposer.addController(controllerOne);
                textFlow.flowComposer.addController(controllerTwo);
                textFlow.flowComposer.updateAllControllers();
            }
        }
    }

ContainerControllerExample2.as
This example displays two text flows, headings and body text, in two containers. The example creates columns for the body text and implements scrolling. The resizeHandler() method resizes the containers and composes the text flows when changes occur to the size of the stage.
Copy

    package flashx.textLayout.container.examples
    {
        import flash.display.Sprite;
        import flash.display.StageAlign;
        import flash.events.Event;
        import flash.geom.Rectangle;

        import flashx.textLayout.container.ContainerController;
        import flashx.textLayout.container.ScrollPolicy;
        import flashx.textLayout.conversion.TextConverter;
        import flashx.textLayout.edit.SelectionManager;
        import flashx.textLayout.elements.TextFlow;
        import flashx.textLayout.formats.TextLayoutFormat;

        public class ContainerControllerExample2 extends Sprite
        {
            // these variables are accessible to both methods in the class
            private var headingFlow:TextFlow;
            private var bodyFlow:TextFlow;
            private var headController:ContainerController;
            private var bodyController:ContainerController;

            private const headingMarkup:String = "<flow:TextFlow xmlns:flow='http://ns.adobe.com/textLayout/2008'>" +
                    "<flow:p textAlign='center'>" +
                        "<flow:span fontFamily='Georgia' fontSize='36'>Ethan Brand</flow:span><flow:br/>" +
                        "<flow:span fontSize='8' fontStyle='italic'>by </flow:span>" +
                        "<flow:span fontSize='12' fontStyle='italic'>Nathaniel Hawthorne</flow:span>" +
                    "</flow:p>" +
                "</flow:TextFlow>";
            private const bodyMarkup:String = "<flow:TextFlow xmlns:flow='http://ns.adobe.com/textLayout/2008' fontSize='8' " +
                    "textIndent='10' paragraphSpaceBefore='6' paddingTop='8' paddingBottom='8' paddingLeft='8' paddingRight='8'>" +
                "<flow:p paragraphSpaceBefore='inherit' >" +
                    "<flow:span>There are many </flow:span>" +
                    "<flow:span fontStyle='italic'>such</flow:span>" +
                    "<flow:span> lime-kilns in that tract of country, for the purpose of burning the white" +
                        " marble which composes a large part of the substance of the hills. Some of them, built " +
                        "years ago, and long deserted, with weeds growing in the vacant round of the interior, " +
                        "which is open to the sky, and grass and wild-flowers rooting themselves into the chinks " +
                        "of the stones, look already like relics of antiquity, and may yet be overspread with the" +
                        " lichens of centuries to come. Others, where the lime-burner still feeds his daily and " +
                        "nightlong fire, afford points of interest to the wanderer among the hills, who seats " +
                        "himself on a log of wood or a fragment of marble, to hold a chat with the solitary man. " +
                        "It is a lonesome, and, when the character is inclined to thought, may be an intensely " +
                        "thoughtful occupation; as it proved in the case of Ethan Brand, who had mused to such " +
                        "strange purpose, in days gone by, while the fire in this very kiln was burning.</flow:span>" +
                "</flow:p>" +
                "<flow:p paragraphSpaceBefore='inherit'>" +
                    "<flow:span>" +
                        "The man who now watched the fire was of a different order, and troubled himself with no " +
                        "thoughts save the very few that were requisite to his business. At frequent intervals, " +
                        "he flung back the clashing weight of the iron door, and, turning his face from the " +
                        "insufferable glare, thrust in huge logs of oak, or stirred the immense brands with a " +
                        "long pole. Within the furnace were seen the curling and riotous flames, and the burning " +
                        "marble, almost molten with the intensity of heat; while without, the reflection of the " +
                        "fire quivered on the dark intricacy of the surrounding forest, and showed in the " +
                        "foreground a bright and ruddy little picture of the hut, the spring beside its door, the " +
                        "athletic and coal-begrimed figure of the lime-burner, and the halffrightened child, " +
                        "shrinking into the protection of his father's shadow. And when again the iron door was " +
                        "closed, then reappeared the tender light of the half-full moon, which vainly strove to " +
                        "trace out the indistinct shapes of the neighboring mountains; and, in the upper sky, " +
                        "there was a flitting congregation of clouds, still faintly tinged with the rosy sunset, " +
                        "though thus far down into the valley the sunshine had vanished long and long ago.</flow:span>" +
                "</flow:p>" +
            "</flow:TextFlow>";
            public function ContainerControllerExample2()
            {
                // align the stage and add a listener (resizeHandler) for RESIZE events
                stage.align = StageAlign.TOP_LEFT;
                stage.addEventListener(flash.events.Event.RESIZE, resizeHandler);
                // create heading text flow, import heading text, and assign composer
                headingFlow = new TextFlow();
                headingFlow = TextConverter.importToFlow(headingMarkup, TextConverter.TEXT_LAYOUT_FORMAT);
                // create body text flow, import body text, and assign flow composer
                bodyFlow = new TextFlow();
                bodyFlow = TextConverter.importToFlow(bodyMarkup, TextConverter.TEXT_LAYOUT_FORMAT);
                // create heading container, add controller, position container and add to stage
                var headContainer:Sprite = new Sprite();
                headController = new ContainerController(headContainer, 300, 50);
                headingFlow.flowComposer.addController(headController);
                headContainer.x = 120;
                headContainer.y = 20;
                addChild(headContainer);
                // update controller to display heading text
                headingFlow.flowComposer.updateAllControllers();
                // create container for body text and position it
                var bodyContainer:Sprite = new Sprite();
                bodyController = new ContainerController(bodyContainer, 300, 200);
                bodyContainer.x = 125;
                bodyContainer.y = 85;
                // create container format to specify columns
                var bodyContainerFormat:TextLayoutFormat = new TextLayoutFormat();
                bodyContainerFormat.columnWidth = 120;
                bodyContainerFormat.columnGap = 15;
                bodyController.format = bodyContainerFormat;
                // enable scrolling
                bodyController.verticalScrollPolicy = ScrollPolicy.AUTO;
                bodyFlow.interactionManager = new SelectionManager();
                // add controller, add container to stage, and display body text
                bodyFlow.flowComposer.addController(bodyController);
                addChild(bodyContainer);
                bodyFlow.flowComposer.updateAllControllers();
            }

            private function resizeHandler(event:Event):void
            {
                const verticalGap:Number = 25;
                const stagePadding:Number = 16;
                var stageWidth:Number = stage.stageWidth - stagePadding;
                var stageHeight:Number = stage.stageHeight - stagePadding;
                var headlineWidth:Number = stageWidth;
                var headlineContainerHeight:Number = stageHeight;
                // Initial compose to get height of headline after resize
                headController.setCompositionSize(headlineWidth, headlineContainerHeight);
                headingFlow.flowComposer.compose();
                var rect:Rectangle = headController.getContentBounds();
                headlineContainerHeight = rect.height;
                // Resize and place headline text container
                // Call setCompositionSize() again with updated headline height
                headController.setCompositionSize(headlineWidth, headlineContainerHeight );
                headController.container.x = stagePadding / 2;
                headController.container.y = stagePadding / 2;
                headingFlow.flowComposer.updateAllControllers();
                // Resize and place body text container
                var bodyContainerHeight:Number = (stageHeight - verticalGap -
                headlineContainerHeight);
                bodyController.setCompositionSize(stageWidth, bodyContainerHeight );
                bodyController.container.x = (stagePadding/2);
                bodyController.container.y = (stagePadding/2) + headlineContainerHeight +
                    verticalGap;
                bodyFlow.flowComposer.updateAllControllers();
            }
        }
    }

© 2015 Adobe Systems Incorporated. All rights reserved.
Mon Apr 10 2017, 12:28 PM -07:00