//////////////////////////////////////////////////////////////////////////////// // // Licensed to the Apache Software Foundation (ASF) under one or more // contributor license agreements. See the NOTICE file distributed with // this work for additional information regarding copyright ownership. // The ASF licenses this file to You under the Apache License, Version 2.0 // (the "License"); you may not use this file except in compliance with // the License. You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // //////////////////////////////////////////////////////////////////////////////// package mx.events { import flash.events.Event; import flash.events.ProgressEvent; import mx.modules.IModuleInfo; /** * The ModuleEvent class represents the event object passed to the event listener * for events related to dynamically-loaded modules. * * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ public class ModuleEvent extends ProgressEvent { include "../core/Version.as"; //-------------------------------------------------------------------------- // // Class constants // //-------------------------------------------------------------------------- /** * Dispatched when there is an error downloading the module. * The ModuleEvent.ERROR constant defines the value of the * type property of the event object for an error event. * *

The properties of the event object have the following values:

* * * * * * * * * *
PropertyValue
bubblesfalse
bytesLoadedEmpty
bytesTotalEmpty
cancelablefalse
currentTargetThe Object that defines the * event listener that handles the event. For example, if you use * myButton.addEventListener() to register an event listener, * myButton is the value of the currentTarget.
errorTextThe error message.
targetThe Object that dispatched the event; * it is not always the Object listening for the event. * Use the currentTarget property to always access the * Object listening for the event.
* * @eventType error * * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ public static const ERROR:String = "error"; /** * Dispatched when the module is in the process of downloading. This module is * dispatched at regular intervals during the download process. * The ModuleEvent.PROGRESS constant defines the value of the * type property of the event object for a progress event. * *

The properties of the event object have the following values:

* * * * * * * * * *
PropertyValue
bubblesfalse
bytesLoadedThe number of bytes loaded.
bytesTotalThe total number of bytes to load.
cancelablefalse
currentTargetThe Object that defines the * event listener that handles the event. For example, if you use * myButton.addEventListener() to register an event listener, * myButton is the value of the currentTarget.
errorTextEmpty
targetThe Object that dispatched the event; * it is not always the Object listening for the event. * Use the currentTarget property to always access the * Object listening for the event.
* * @eventType progress * * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ public static const PROGRESS:String = "progress"; /** * Dispatched when the module has finished downloading. * The ModuleEvent.READY constant defines the value of the * type property of the event object for a complete event. * *

The properties of the event object have the following values:

* * * * * * * * * *
PropertyValue
bubblesfalse
bytesLoadedThe number of bytes loaded.
bytesTotalThe total number of bytes to load.
cancelablefalse
currentTargetThe Object that defines the * event listener that handles the event. For example, if you use * myButton.addEventListener() to register an event listener, * myButton is the value of the currentTarget.
errorTextEmpty
targetThe Object that dispatched the event; * it is not always the Object listening for the event. * Use the currentTarget property to always access the * Object listening for the event.
* * @eventType ready * * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ public static const READY:String = "ready"; /** * Dispatched when enough of a module has been downloaded that you can get information * about the module. You do this by calling the IFlexModuleFactory.info() * method on the module. * The ModuleEvent.SETUP constant defines the value of the * type property of the event object for a setup event. * *

The properties of the event object have the following values:

* * * * * * * * * *
PropertyValue
bubblesfalse
bytesLoadedEmpty
bytesTotalEmpty
cancelablefalse
currentTargetThe Object that defines the * event listener that handles the event. For example, if you use * myButton.addEventListener() to register an event listener, * myButton is the value of the currentTarget.
errorTextAn error message.
targetThe Object that dispatched the event; * it is not always the Object listening for the event. * Use the currentTarget property to always access the * Object listening for the event.
* * @eventType setup * * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ public static const SETUP:String = "setup"; /** * Dispatched when the module is unloaded. * * The ModuleEvent.UNLOAD constant defines the value of the * type property of the event object for an unload event. * *

The properties of the event object have the following values:

* * * * * * * * * *
PropertyValue
bubblesfalse
bytesLoadedEmpty
bytesTotalEmpty
cancelablefalse
currentTargetThe Object that defines the * event listener that handles the event. For example, if you use * myButton.addEventListener() to register an event listener, * myButton is the value of the currentTarget.
errorTextAn error message.
targetThe Object that dispatched the event; * it is not always the Object listening for the event. * Use the currentTarget property to always access the * Object listening for the event.
* * @eventType unload * * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ public static const UNLOAD:String = "unload"; //-------------------------------------------------------------------------- // // Constructor // //-------------------------------------------------------------------------- /** * Constructor. * * @param type The type of event. Possible values are: * * * @param bubbles Determines whether the Event object * participates in the bubbling stage of the event flow. * * @param cancelable Determines whether the Event object can be cancelled * during event propagation. * * @param bytesLoaded The number of bytes loaded * at the time the listener processes the event. * * @param bytesTotal The total number of bytes * that will be loaded if the loading process succeeds. * * @param errorText The error message when the event type * is ModuleEvent.ERROR. * * @param module An instance of an interface for a particular module. . * * @tiptext Constructor for ModuleEvent objects. * * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ public function ModuleEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, bytesLoaded:uint = 0, bytesTotal:uint = 0, errorText:String = null, module:IModuleInfo = null) { super(type, bubbles, cancelable, bytesLoaded, bytesTotal); this.errorText = errorText; this._module = module; } //-------------------------------------------------------------------------- // // Properties // //-------------------------------------------------------------------------- //---------------------------------- // errorText //---------------------------------- /** * The error message if the type is ModuleEvent.ERROR; * otherwise, it is null. * * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ public var errorText:String; //---------------------------------- // module //---------------------------------- private var _module:IModuleInfo; /** * The target, which is an instance of an * interface for a particular module. * * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ public function get module():IModuleInfo { if (_module) return _module; return target as IModuleInfo; } //-------------------------------------------------------------------------- // // Overridden properties: Event // //-------------------------------------------------------------------------- /** * @private */ override public function clone():Event { return new ModuleEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText, module); } } }