package HTools { import flash.display.Sprite; import flash.display.MovieClip; import flash.display.Loader; import flash.events.Event; import flash.utils.ByteArray; import mx.core.ByteArrayAsset; public class SwfLoader extends Sprite { /** * Swf loader class, wraps the loading of a bytearray from an embeded symbol * Copyright Henke37 2008 * Just give credit when it's due. */ private var loader:Loader; private var data:ByteArray; public function SwfLoader(data:ByteArray) { super(); loader=new Loader(); loader.loadBytes(data); addEventListener(Event.ENTER_FRAME,onEnterFrame,false,0,true); } public function get content ():MovieClip { if(loader.content) { return MovieClip(loader.content); } else { return null; } } private function onEnterFrame(e:Event):void { if(loader.content) { dispatchEvent(new Event(Event.COMPLETE)); removeEventListener(Event.ENTER_FRAME,onEnterFrame); } } } }