flashx.textLayout.events

# StatusChangeEvent - AS3

Package | flashx.textLayout.events
Class | public class StatusChangeEvent
Inheritance | StatusChangeEvent Event Object

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

A TextFlow instance dispatches this event when the status of a FlowElement changes. This event can be used to detect when an inline graphic element has completed loading. You can use your event handler to recompose the text flow based on the presence of the newly loaded inline graphic element.

View the examples

Public Properties
Hide Inherited Public Properties
Show Inherited Public Properties

| Property | Defined By
--- | --- | ---
|  | bubbles : Boolean [read-only] Indicates whether an event is a bubbling event. | Event
|  | cancelable : Boolean [read-only] Indicates whether the behavior associated with the event can be prevented. | Event
|  | constructor : Object A reference to the class object or constructor function for a given object instance. | Object
|  | currentTarget : Object [read-only] The object that is actively processing the Event object with an event listener. | Event
|  | element : FlowElement The FlowElement instance that has experienced a change in status. | StatusChangeEvent
|  | errorEvent : ErrorEvent The ErrorEvent object that was dispatched as a result of the status change. | StatusChangeEvent
|  | eventPhase : uint [read-only] The current phase in the event flow. | Event
|  | status : String The FlowElement's new status. | StatusChangeEvent
|  | target : Object [read-only] The event target. | Event
|  | type : String [read-only] The type of event. | Event

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | StatusChangeEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, element:FlowElement = null, status:String = null, errorEvent:ErrorEvent = null) Creates an event object that contains information about a status change. | StatusChangeEvent
|  | clone():Event Duplicates an instance of an Event subclass. | Event
|  | formatToString(className:String, ... arguments):String A utility function for implementing the toString() method in custom ActionScript 3.0 Event classes. | Event
|  | hasOwnProperty(name:String):Boolean Indicates whether an object has a specified property defined. | Object
|  | isDefaultPrevented():Boolean Checks whether the preventDefault() method has been called on the event. | Event
|  | 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
|  | preventDefault():void Cancels an event's default behavior if that behavior can be canceled. | Event
|  | 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
|  | stopImmediatePropagation():void Prevents processing of any event listeners in the current node and any subsequent nodes in the event flow. | Event
|  | stopPropagation():void Prevents processing of any event listeners in nodes subsequent to the current node in the event flow. | Event
|  | toLocaleString():String Returns the string representation of this object, formatted according to locale-specific conventions. | Object
|  | toString():String Returns a string containing all the properties of the Event object. | Event
|  | valueOf():Object Returns the primitive value of the specified object. | Object

Public Constants
Hide Inherited Public Constants
Show Inherited Public Constants

| Constant | Defined By
--- | --- | ---
|  | INLINE_GRAPHIC_STATUS_CHANGE : String = "inlineGraphicStatusChange" [static] Defines the value of the type property of a inlineGraphicStatusChanged event object. | StatusChangeEvent

Property Detail

### element

property

`element:FlowElement`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The FlowElement instance that has experienced a change in status.

Implementation
`public function get element():FlowElement`
`public function set element(value:FlowElement):void`

Related API Elements

flashx.textLayout.elements.FlowElement

### errorEvent

property

`errorEvent:ErrorEvent`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The ErrorEvent object that was dispatched as a result of the status change.

Implementation
`public function get errorEvent():ErrorEvent`
`public function set errorEvent(value:ErrorEvent):void`

Related API Elements

flash.events.ErrorEvent

### status

property

`status:String`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The FlowElement's new status. The possible values of this property are defined by the InlineGraphicElementStatus class. There are five static constants available in the InlineGraphicElementStatus class:

- ERROR : String = "error". An error occurred during loading of a referenced graphic.
- LOADING : String = "loading". Load has been initiated (but not completed) on a graphic element that is a URL.
- LOAD_PENDING : String = "loadPending". Graphic element is an URL that has not been loaded.
- READY : String = "ready". Graphic is completely loaded and properly sized.
- SIZE_PENDING : String = "sizePending". Graphic element with auto or percentage width/height has completed loading but has not been recomposed.

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

Related API Elements

flashx.textLayout.elements.InlineGraphicElementStatus
Constructor Detail

### StatusChangeEvent

()
Constructor

`public function StatusChangeEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, element:FlowElement = null, status:String = null, errorEvent:ErrorEvent = null)`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Creates an event object that contains information about a status change.

Parameters

| `type:String` — The type of the event. Event listeners can access this information through the inherited `type` property. There is only one type of StatusChangeEvent: `StatusChangeEvent.INLINE_GRAPHIC_STATUS_CHANGE`;
| `bubbles:Boolean` (default = `false`)`` — Indicates whether an event is a bubbling event.This event does not bubble.
| `cancelable:Boolean` (default = `false`)`` — Indicates whether the behavior associated with the event can be prevented. This event cannot be cancelled.
| `element:FlowElement` (default = `null`)`` — The FlowElement instance that has experienced a change in status.
| `status:String` (default = `null`)`` — The FlowElement instance's new status.
| `errorEvent:ErrorEvent` (default = `null`)`` — The ErrorEvent object, if any, associated with the status.

Constant Detail

### INLINE_GRAPHIC_STATUS_CHANGE

Constant

`public static const INLINE_GRAPHIC_STATUS_CHANGE:String = "inlineGraphicStatusChange"`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Defines the value of the `type` property of a `inlineGraphicStatusChanged` event object.

Examples How to use this example
StatusChangeEvent_example.as
This example shows how to create an event handler that listens for the successful loading of an InlineGraphicElement object. The two key steps are to call the `addEventListener()` method on the text flow and to create an event handler function.

Call the `addEventListener()` method on the TextFlow instance. You can use the simple string `"inlineGraphicsStatusChanged"`, but it is safer to use the static constant `StatusChangeEvent.INLINE_GRAPHIC_STATUS_CHANGE`

The event handler function in this example is named `statusChangeHandler()`. The event handler first checks to see whether the graphic is loaded. If the graphic is loaded, the event handler adjusts the height of the graphic to match that of the text. Finally, the event handler calls `updateAllcontrollers()` on the text flow to recompose and display the text and inline graphic.

Copy

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

        import flashx.textLayout.container.ContainerController;
        import flashx.textLayout.elements.InlineGraphicElement;
        import flashx.textLayout.elements.InlineGraphicElementStatus;
        import flashx.textLayout.elements.ParagraphElement;
        import flashx.textLayout.elements.SpanElement;
        import flashx.textLayout.elements.TextFlow;
        import flashx.textLayout.events.StatusChangeEvent;

        public class StatusChangeEvent_example extends Sprite
        {
            private var _textFlow:TextFlow;
            private var _inlineGraphic:InlineGraphicElement;
            private var graphicHeight:Number;

            public function StatusChangeEvent_example()
            {
                _textFlow = new TextFlow();
                _textFlow.fontSize = 48;
                graphicHeight = 48
                var p:ParagraphElement = new ParagraphElement();
                _textFlow.addChild(p);

                var span:SpanElement = new SpanElement();
                span.text = "Text ";
                p.addChild(span);

                _inlineGraphic = new InlineGraphicElement();
                _inlineGraphic.source = "../../images/textLayout_TextFlow.gif";
                p.addChild(_inlineGraphic);

                var span2:SpanElement = new SpanElement();
                span2.text = " Flow";
                p.addChild(span2);

                _textFlow.addEventListener(StatusChangeEvent.INLINE_GRAPHIC_STATUS_CHANGE,statusChangeHandler);
                _textFlow.flowComposer.addController(new ContainerController(this,400,200));
                _textFlow.flowComposer.updateAllControllers();
            }

            private function statusChangeHandler(e:StatusChangeEvent):void
            {
                // if the graphic has loaded update the display
                // set the loaded graphic's height to match text height
                if (e.status == InlineGraphicElementStatus.READY || e.status == InlineGraphicElementStatus.SIZE_PENDING)
                {
                    _inlineGraphic.height = graphicHeight;
                    _textFlow.flowComposer.updateAllControllers();
                }
            }
        }
    }

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