[osflash] Class definitions

Niels Wolf niels.wolf at mediacatalyst.com
Fri May 9 09:46:57 PDT 2008


Thanks for the comments. I guess I have enough right now.

Niels

On 5/9/08 6:10 PM, "Ian Thomas" <ian at eirias.net> wrote:

> The simplest answer - use packages.
> 
> e.g.
> Classes for SWF A should be in package com.mediacatalyst.a
> Classes for SWF B should be in package com.mediacatalyst.b
> 
> Without using packages - In AS3/AVM2, you can use different
> applicationDomains to separate that sort of thing, but then if you do
> so it's difficult to talk between the movies at all.
> 
> HTH,
>   Ian
> 
> 
> On Fri, May 9, 2008 at 4:50 PM, Niels Wolf <niels.wolf at mediacatalyst.com>
> wrote:
>> Hey.
>> 
>>  I am looking into following scenario:
>> 
>>  SWF A loads other SWF B.
>> 
>>  A defines class C.
>>  B defines class C.
>> 
>>  If B calls on C it gets C from A!
>> 
>>  example:
>> 
>>  B.swf
>>  package{
>>     import flash.text.TextField;
>>     import flash.display.Sprite;
>>     import flash.display.Loader;
>>     import flash.net.URLRequest;
>> 
>>     public class C extends Sprite{
>>         private var variable:String = "I am C from B";
>> 
>>         public function C(){
>>             trace(variable);
>>             var txt:TextField = new TextField();
>>             txt.text = variable;
>>             addChild(txt);
>>         }
>> 
>>     }
>>  }
>> 
>>  A.swf
>>  package{
>>     import flash.text.TextField;
>>     import flash.display.Sprite;
>>     import flash.display.Loader;
>>     import flash.net.URLRequest;
>> 
>>     public class C extends Sprite{
>>         private var variable:String = "I am C from A";
>> 
>>         public function C(){
>>             trace(variable);
>>             var txt:TextField = new TextField();
>>             txt.text = variable;
>>             addChild(txt);
>> 
>>             var loader:Loader = new Loader();
>>             loader.load(new URLRequest("B.swf"));
>>         }
>> 
>>     }
>>  }
>> 
>>  RUN A.swf outputs:
>>  I am C from A
>>  I am C from A
>>  I am C from A
>>  I am C from A
>>  ...
>> 
>> 
>>  Even as it sounds natural it implies mayor restrictions if your project
>>  requires nested swf loading.
>> 
>>  Is there a way to seal class definitions from each other but not objects (as
>>  the nested swfs have to talk to each other.. Though localconnection could be
>>  an awkward answer).
>> 
>>  Comments are welcome.
>> 
>>  Thanks
>> 
>>  \n
>> 
>> 
>>  _______________________________________________
>>  osflash mailing list
>>  osflash at osflash.org
>>  http://osflash.org/mailman/listinfo/osflash_osflash.org
>> 
> 
> _______________________________________________
> osflash mailing list
> osflash at osflash.org
> http://osflash.org/mailman/listinfo/osflash_osflash.org




More information about the osflash mailing list