Wie alle Definitionen in einer Anwendungsdomäne einer geladenen SWF-Datei?

Beim laden eines SWF in ein anderes, wird das loader-SWF-Datei kann eine bestimmte Definitionen aus der geladenen SWF-Datei mit ApplicationDomain.getDefinition(name:String). Zum Beispiel:

package 
{
    //... imports

    public class SWFLoader extends Sprite
    {
        private var loadedAppDomain:ApplicationDomain;

        public function SWFLoader()
        {
            var request:URLRequest = new URLRequest("test.swf");
            var loader:Loader = new Loader();
            loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onTestLoadComplete);
            loader.load(request);
        }

        private function onTestLoadComplete(event:Event):void
        {
            var loaderInfo:LoaderInfo = LoaderInfo(event.target);
            loadedAppDomain = loaderInfo.applicationDomain;

            //Here we can get ANY defined symbol (class, namespace or function according to Adobe Flash help)
            var someSymbolClass:Class = Class(loadedAppDomain.getDefinition("SomeSymbol"));
            var someSymbolSprite:Sprite = Sprite(new someSymbolClass());

            addChild(sprite);
        }
    }
}

Wie bekomme ich alle Definitionen in einer SWF-Datei, ohne jede Angabe ausdrücklich?

Schreibe einen Kommentar