flashx.textLayout.elements

# Configuration - AS3

Package | flashx.textLayout.elements
Class | public class Configuration
Inheritance | Configuration Object
Implements | IConfiguration

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The Configuration class is a primary point of integration between the Text Layout Framework and an application. You can include a Configuration object as a parameter to the `TextFlow()` constructor when you create a new TextFlow instance. It allows the application to initially control how the Text Layout Framework behaves.

The Configuration class allows you to specify initial, paragraph and container formats for the text flow through the `textFlowInitialFormat` property. It also allows you to specify initial format attributes for links, selection, scrolling, and for handling the Tab and Enter keys.

View the examples

More examples

Applying styles with the Configuration class

Related API Elements

ITextLayoutFormat
SelectionFormat
TextFlow

Public Properties
Hide Inherited Public Properties
Show Inherited Public Properties

| Property | Defined By
--- | --- | ---
|  | constructor : Object A reference to the class object or constructor function for a given object instance. | Object
|  | defaultLinkActiveFormat : flashx.textLayout.formats:ITextLayoutFormat Specifies the active character format attributes that initially apply for all links (LinkElement objects) in the text flow. | Configuration
|  | defaultLinkHoverFormat : flashx.textLayout.formats:ITextLayoutFormat Specifies the initial character format attributes that apply to a link (LinkElement) in the text flow when the cursor hovers over it. | Configuration
|  | defaultLinkNormalFormat : flashx.textLayout.formats:ITextLayoutFormat Specifies the initial link attributes for all LinkElement objects in the text flow. | Configuration
|  | defaultListMarkerFormat : IListMarkerFormat Specifies the active character format attributes that initially apply for all ListItems in the text flow. | Configuration
|  | enableAccessibility : Boolean Specifies whether accessibility support is turned on or not. | Configuration
|  | flowComposerClass : Class Specifies the type of flow composer to attach to a new TextFlow object by default. | Configuration
|  | focusedSelectionFormat : SelectionFormat The initial selection format (SelectionFormat) for a text flow (TextFlow) when its window has focus. | Configuration
|  | inactiveSelectionFormat : SelectionFormat The initial selection format (SelectionFormat) for a text flow (TextFlow) when its window is inactive. | Configuration
|  | inlineGraphicResolverFunction : Function Specifies the callback used for resolving an inline graphic element. | Configuration
|  | manageEnterKey : Boolean Specifies whether the Enter / Return key is entered as text by Text Layout Framework, to split a paragraph for example, or the client code handles it. | Configuration
|  | manageTabKey : Boolean Specifies whether the TAB key is entered as text by Text Layout Framework, or Flash Player or AIR handles it and turns it into a tabbed panel event. | Configuration
|  | overflowPolicy : String Policy used for deciding whether the last line of a container fits in the container, or whether it overflows. | Configuration
|  | releaseLineCreationData : Boolean Requests that the process of composing text release line creation data after composing each paragraph. | Configuration
|  | scrollDragDelay : Number Specifies a timed delay between one scroll and the next to prevent scrolling from going too fast. | Configuration
|  | scrollDragPixels : Number Specifies the default number of pixels to scroll when the user initiates auto scrolling by dragging the selection. | Configuration
|  | scrollMouseWheelMultiplier : Number Specifies the default number of pixels to scroll for Mouse wheel events. | Configuration
|  | scrollPagePercentage : Number Specifies the default percentage of the text flow to scroll for page scrolls. | Configuration
|  | textFlowInitialFormat : flashx.textLayout.formats:ITextLayoutFormat Specifies the initial format TextLayoutFormat configuration for a text flow (TextFlow object). | Configuration
|  | unfocusedSelectionFormat : SelectionFormat The initial selection format that Text Layout Framework uses to draw the selection when the window is active but none of the containers in the TextFlow have focus. | Configuration

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | Configuration(initializeWithDefaults:Boolean = true) Constructor - creates a default configuration. | Configuration
|  | clone():Configuration Creates a clone of the Configuration object. | Configuration
|  | hasOwnProperty(name:String):Boolean Indicates whether an object has a specified property defined. | Object
|  | 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
|  | propertyIsEnumerable(name:String):Boolean Indicates whether the specified property exists and is enumerable. | Object
|  | setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void Sets the availability of a dynamic property for loop operations. | Object
|  | 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

Property Detail

### defaultLinkActiveFormat

property

`defaultLinkActiveFormat:flashx.textLayout.formats:ITextLayoutFormat`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the active character format attributes that initially apply for all links (LinkElement objects) in the text flow. These are defaults for new LinkElement objects that don't specify values for these attributes.

Default is `null`.

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

Related API Elements

FlowElement.linkActiveFormat
ITextLayoutFormat
LinkElement

### defaultLinkHoverFormat

property

`defaultLinkHoverFormat:flashx.textLayout.formats:ITextLayoutFormat`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the initial character format attributes that apply to a link (LinkElement) in the text flow when the cursor hovers over it. These are defaults for new LinkElement objects that don't specify values for these attributes.

Default is `null`.

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

Related API Elements

FlowElement.linkHoverFormat
ITextLayoutFormat
LinkElement

### defaultLinkNormalFormat

property

`defaultLinkNormalFormat:flashx.textLayout.formats:ITextLayoutFormat`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the initial link attributes for all LinkElement objects in the text flow. These are default values for new LinkElement objects that don't specify values for these attributes. The default normal format displays the link in blue with underlining.

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

Related API Elements

FlowElement.linkNormalFormat
ITextLayoutFormat
LinkElement

### defaultListMarkerFormat

property

`defaultListMarkerFormat:IListMarkerFormat`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the active character format attributes that initially apply for all ListItems in the text flow. These are defaults for new ListItemElements objects that don't specify values for these attributes.

Default is `null`.

Implementation
`public function get defaultListMarkerFormat():IListMarkerFormat`
`public function set defaultListMarkerFormat(value:IListMarkerFormat):void`

Related API Elements

FlowElement.listMarkerFormat
IListMarkerFormat
LinkElement

### enableAccessibility

property

`enableAccessibility:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies whether accessibility support is turned on or not. If `true`, screen readers can read the TextFlow contents.

Default value is `false`.

Implementation
`public function get enableAccessibility():Boolean`
`public function set enableAccessibility(value:Boolean):void`

Related API Elements

TextFlow

### flowComposerClass

property

`flowComposerClass:Class`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the type of flow composer to attach to a new TextFlow object by default. Default value is StandardFlowComposer.

Implementation
`public function get flowComposerClass():Class`
`public function set flowComposerClass(value:Class):void`

Related API Elements

StandardFlowComposer
TextFlow

### focusedSelectionFormat

property

`focusedSelectionFormat:SelectionFormat`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The initial selection format (SelectionFormat) for a text flow (TextFlow) when its window has focus. Text Layout Framework uses `focusedSelectionFormat` to draw the selection when the window is active and one of the containers in the TextFlow has focus. You can override this format using `SelectionManager.focusedSelectionFormat`, if desired.

The SelectionFormat class specifies the default values, which invert the color of the text and its background.

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

Related API Elements

SelectionFormat
SelectionManager.focusedSelectionFormat
TextFlow

### inactiveSelectionFormat

property

`inactiveSelectionFormat:SelectionFormat`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The initial selection format (SelectionFormat) for a text flow (TextFlow) when its window is inactive. Text Layout Framework uses `inactiveSelectionFormat` for drawing the selection when the window is inactive. You can override this format using `SelectionManager.inactiveSelectionFormat`, if desired.

If you do not override `unfocusedSelectionFormat` the SelectionFormat values used are:

- `color = 0xffffff` (white)
- `alpha = 0`
- `blendMode = flash.display.BlendMode.DIFFERENCE`

The result is no selection is displayed.

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

Related API Elements

SelectionFormat
SelectionManager.inactiveSelectionFormat
TextFlow

### inlineGraphicResolverFunction

property

`inlineGraphicResolverFunction:Function`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the callback used for resolving an inline graphic element. The callback takes a `flashx.textLayout.elements.InlineGraphicElement` object and returns the value to be used as the element's `flashx.textLayout.elements.InlineGraphicElement#source`. This callback provides the mechanism to delay providing an inline graphic element's source until just before it is composed.

Note: this callback will be invoked only if a placeholder source of String type is already set. Moreover, it may be invoked multiple times.

Implementation
`public function get inlineGraphicResolverFunction():Function`
`public function set inlineGraphicResolverFunction(value:Function):void`

Related API Elements

InlineGraphicElement

### manageEnterKey

property

`manageEnterKey:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies whether the Enter / Return key is entered as text by Text Layout Framework, to split a paragraph for example, or the client code handles it. The client code might handle it by committing a form that has a default button for that purpose, for example.

Default value is `true`.

Implementation
`public function get manageEnterKey():Boolean`
`public function set manageEnterKey(value:Boolean):void`

### manageTabKey

property

`manageTabKey:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies whether the TAB key is entered as text by Text Layout Framework, or Flash Player or AIR handles it and turns it into a tabbed panel event.

Default value is `false`.

Implementation
`public function get manageTabKey():Boolean`
`public function set manageTabKey(value:Boolean):void`

### overflowPolicy

property

`overflowPolicy:String`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Policy used for deciding whether the last line of a container fits in the container, or whether it overflows. Use the constants of the OverflowPolicy class to set this property.

Default value is OverflowPolicy.FIT_DESCENDERS, which fits the line in the composition area if the area from the top to the baseline fits.

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

Related API Elements

OverflowPolicy

### releaseLineCreationData

property

`releaseLineCreationData:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Requests that the process of composing text release line creation data after composing each paragraph. This request saves memory but slows down the composing process.

Default value is `false`.

Implementation
`public function get releaseLineCreationData():Boolean`
`public function set releaseLineCreationData(value:Boolean):void`

Related API Elements

StandardFlowComposer
TextBlock.releaseLineCreationData()

### scrollDragDelay

property

`scrollDragDelay:Number`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies a timed delay between one scroll and the next to prevent scrolling from going too fast. This value specifies what the delay is in milliseconds. The default value is 35.

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

### scrollDragPixels

property

`scrollDragPixels:Number`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the default number of pixels to scroll when the user initiates auto scrolling by dragging the selection. Default value is 20.

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

### scrollMouseWheelMultiplier

property

`scrollMouseWheelMultiplier:Number`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the default number of pixels to scroll for Mouse wheel events. Default value is 20.

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

### scrollPagePercentage

property

`scrollPagePercentage:Number`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the default percentage of the text flow to scroll for page scrolls. Default value is 7.0 / 8.0, or .875.

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

### textFlowInitialFormat

property

`textFlowInitialFormat:flashx.textLayout.formats:ITextLayoutFormat`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the initial format TextLayoutFormat configuration for a text flow (TextFlow object).

Default is `null`.

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

Related API Elements

TextFlow
ITextLayoutFormat

### unfocusedSelectionFormat

property

`unfocusedSelectionFormat:SelectionFormat`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The initial selection format that Text Layout Framework uses to draw the selection when the window is active but none of the containers in the TextFlow have focus. You can override this format using `SelectionManager.unfocusedSelectionFormat`, if desired.

If you do not override `unfocusedSelectionFormat` the SelectionFormat values used are:

- `color = 0xffffff` (white)
- `alpha = 0`
- `blendMode = flash.display.BlendMode.DIFFERENCE`

The result is no selection is displayed.

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

Related API Elements

SelectionFormat
SelectionManager.unfocusedSelectionFormat
TextFlow
Constructor Detail

### Configuration

()
Constructor

`public function Configuration(initializeWithDefaults:Boolean = true)`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Constructor - creates a default configuration.

Parameters

| `initializeWithDefaults:Boolean` (default = `true`)`` — Specifies whether to initialize the configuration with the default values. Default is `true`. If set to `false`, initializes without default values, thereby saving some objects. The `clone()` method sets this to `false` and copies the properties from the original object.

Related API Elements

SelectionFormat
StandardFlowComposer
Method Detail

### clone

()
method

`public function clone():Configuration`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Creates a clone of the Configuration object.

Returns

| `Configuration`

Constant Detail

### hasTouchScreen

Constant

`tlf_internal static const hasTouchScreen:Boolean`

Examples How to use this example
ConfigurationExample.as
This example creates an initial format configuration that is applied to to a TextFlow that consists of a paragraph and a link.
Copy

    package flashx.textLayout.elements.examples {
        import flash.display.Sprite;
        import flash.text.engine.FontPosture;
        import flash.text.engine.Kerning;

        import flashx.textLayout.container.ContainerController;
        import flashx.textLayout.edit.SelectionFormat;
        import flashx.textLayout.edit.SelectionManager;
        import flashx.textLayout.elements.Configuration;
        import flashx.textLayout.elements.LinkElement;
        import flashx.textLayout.elements.ParagraphElement;
        import flashx.textLayout.elements.SpanElement;
        import flashx.textLayout.elements.TextFlow;
        import flashx.textLayout.formats.TextAlign;
        import flashx.textLayout.formats.TextDecoration;
        import flashx.textLayout.formats.TextLayoutFormat;

        public class ConfigurationExample extends Sprite
        {
            public function ConfigurationExample()
            {
                //create container for the text and add to stage
                var textContainer:Sprite = new Sprite();
                textContainer.x = 50;
                textContainer.y = 20;
                this.stage.addChild( textContainer );

                // create Configuration, set properties for it and add to TextFlow
                var config:Configuration = new Configuration();
                var textLayoutFormat:TextLayoutFormat = new TextLayoutFormat();
                textLayoutFormat.fontFamily = "Arial, Helvetica, _sans";
                textLayoutFormat.fontSize = 16;
                textLayoutFormat.kerning = Kerning.ON;
                textLayoutFormat.fontStyle = FontPosture.ITALIC;
                textLayoutFormat.textAlign = TextAlign.CENTER;
                config.textFlowInitialFormat = textLayoutFormat;
                var linkNormalFormat:TextLayoutFormat = new TextLayoutFormat();
                // make links red and underlined
                linkNormalFormat.color = 0xFF0000;
                linkNormalFormat.textDecoration = TextDecoration.UNDERLINE;
                config.defaultLinkNormalFormat = linkNormalFormat;
                // set selection color to light blue
                  var selectionFormat:SelectionFormat = new SelectionFormat(0x333300);
                  config.focusedSelectionFormat = selectionFormat;
                var textFlow:TextFlow = new TextFlow(config);
                // make text selectable
                var selectionManager:SelectionManager = new SelectionManager();
                textFlow.interactionManager = selectionManager;

                // create paragraph, a span of text, and a link
                var p:ParagraphElement = new ParagraphElement();
                var span:SpanElement = new SpanElement();
                var linkSpan:SpanElement = new SpanElement();
                var link:LinkElement = new LinkElement();
                link.href = "http://www.adobe.com";
                linkSpan.text = "Adobe's website";
                link.addChild(linkSpan);
                span.text = "The best place to go for information about Adobe products is: ";

                // Add span and link to paragraph; add paragraph to TextFlow
                p.addChild(span);
                p.addChild(link);
                textFlow.addChild(p);

                // Add a controller for the container; specify container width and height
                textFlow.flowComposer.addController(new ContainerController(textContainer, 80, 300));
                textFlow.flowComposer.updateAllControllers();
            }
        }
    }

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