1  
     8  
     9  import com.sekati.events.AbstractEventBroadcaster;
    10  import com.sekati.load.LoaderEvent;
    11  
    12  
    15  class com.sekati.load.Loader extends AbstractEventBroadcaster {
    16  
    17  	private var _url:String;
    18  	private var _rawURL:String;
    19  	private var _reloads:Number;
    20  	private var _reloadCount:Number;
    21  	private var _isReady:Boolean;
    22  	private var _d:Function;
    23  	private var _child:Object;
    24  
    25  	
    28  	public function Loader() {
    29  		super( );
    30  		_child = Object( this );
    31  		_isReady = false;
    32  		_reloadCount = 0;		
    33  	}
    34  
    35  	public function reload():Void {
    36  		_child.unload( );
    37  		_child.load( );
    38  	}
    39  
    40  	public function getPercent():Number {
    41  		var percent:Number = _child._container.getBytesLoaded( ) / _child._container.getBytesTotal( ) * 100;
    42  		return ( !(percent >= 0) || isNaN( percent ) ) ? 0 : Math.round( percent );
    43  	}
    44  
    45  	public function getRetryCount():Number {
    46  		return _reloadCount;
    47  	}
    48  
    49  	public function isReady():Boolean {
    50  		return _isReady;
    51  	}
    52  
    53  	public function getContainerRef():Object {
    54  		return _child._container;
    55  	}
    56  
    57  	private function onProgress():Void {
    58  		broadcastEvent( LoaderEvent.PROGRESS, _child );
    59  	}
    60  
    61  	
    64  	public function getRawURL():String {
    65  		return _rawURL;
    66  	}
    67  
    68  	
    71  	public function getURL():String {
    72  		return _url;
    73  	}	
    74  }
    75