Muzak
Tue, 01 Sep 2009 17:07:44 -0700
Works fine here:
ClassA extends ClassC
ClassB extends ClassC
ClassC extends ClassD
ClassD extends MovieClip
// ClassA
package {
import flash.events.Event;
public class ClassA extends ClassC {
public var b:ClassB;
public function ClassA():void {
trace("ClassA ::: CONSTRUCTOR");
addEventListener(ClassC.MOVE_UP, moveUpHandler);
}
protected function moveUpHandler(event:Event):void {
trace("ClassA ::: moveUpHandler");
b = new ClassB();
trace(" - instance 'b': ", b);
}
}
}
// ClassB
package {
public class ClassB extends ClassC {
public function ClassB():void {
trace("ClassB ::: CONSTRUCTOR");
}
}
}
// ClassC
package {
public class ClassC extends ClassD {
public static const MOVE_UP:String = "moveUp";
public function ClassC():void {
trace("ClassC ::: CONSTRUCTOR");
}
}
}
// ClassD
package {
import flash.display.MovieClip;
public class ClassD extends MovieClip {
public function ClassD():void {
trace("ClassD ::: CONSTRUCTOR");
}
}
}
In FLA:
var a = new ClassA();
trace(" - instance 'a': ", a);
trace(" - disptaching MOVE_UP event on 'a'");
a.dispatchEvent(new Event(ClassC.MOVE_UP));
//Output
ClassD ::: CONSTRUCTOR
ClassC ::: CONSTRUCTOR
ClassA ::: CONSTRUCTOR
- instance 'a': [object ClassA]
- disptaching MOVE_UP event on 'a'
ClassA ::: moveUpHandler
ClassD ::: CONSTRUCTOR
ClassC ::: CONSTRUCTOR
ClassB ::: CONSTRUCTOR
- instance 'b': [object ClassB]
Exactly as expected. From what I can tell, it doesn't really matter which class
extends which.
The only thing that matters is that the MOVE_UP event handler (moveUpHandler) in ClassA gets called, which happens when I dispatch a
MOVE_UP event on 'a' in the fla.
regards, Muzak----- Original Message ----- From: "Sajid Saiyed" <sajid.fl...@gmail.com>
To: "Flash Coders List" <flashcoders@chattyfig.figleaf.com> Sent: Tuesday, September 01, 2009 8:12 AM Subject: Re: [Flashcoders] Problem understanding Class heirarchy issue
Ok, Here is a bit more information. ClassA (works pefrectly fine): ----------- package com.folder.subfolder { import flash.display.*; import flash.events.*; import flash.filters.*; import flash.utils.Timer; import com.folder.subfolder.*; public class ClassA extends ClassC { public var myMenu: ClassB; public function ClassA (){ addEventListener(ClassC.moveUP, someFunction); } public function someFunction(){ myMenu = new ClassB(); myMenu.name = "mymenu"; this.addChild(myMenu); } } } ClassB ----------- package com.folder.subfolder { import flash.display.*; import flash.events.*; import flash.filters.*; import flash.utils.Timer; import com.folder.subfolder.*; public class ClassB extends ClassC { public function ClassB (){ // This is not getting called..... } } } Does this explanation help a bit?? Am I looking at the right place for the problem or the problem could be somewhere else? Thanks Sajid On Mon, Aug 31, 2009 at 10:46 PM, jonathan howe<jonathangh...@gmail.com> wrote:Are you defining a subclass constructor and then failing to explicitly call the super() (superclass's constructor)? On Mon, Aug 31, 2009 at 8:37 AM, Sajid Saiyed <sajid.fl...@gmail.com> wrote:I am already importing all the classes in the package. Still cant seem to get my head around this. Maybe later today I will post excerpts of my classes here. That might help. Regards Sajid On Mon, Aug 31, 2009 at 6:14 PM, Cor<c...@chello.nl> wrote: > Not knowing what you are trying to do, you have to import ClassB to > instantiate it in ClassA. > > HTH > Cor > > -----Original Message----- > From: flashcoders-boun...@chattyfig.figleaf.com > [mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Sajid Saiyed > Sent: maandag 31 augustus 2009 12:06 > To: flashcoders@chattyfig.figleaf.com > Subject: [Flashcoders] Problem understanding Class heirarchy issue > > Hi, > I have following Class structure: > > ClassA extends ClassC > > ClassB extends ClassC > > ClassC extends ClassD > > ClassD extends MovieClip > > Now, > If I instantiate ClassB from ClassA, the constructor does not execute. > note: Inside ClassB, I am instantiating another ClassE which extends > MovieClip > > Is there something I am doing wrong? > _______________________________________________ > Flashcoders mailing list > Flashcoders@chattyfig.figleaf.com > http://chattyfig.figleaf.com/mailman/listinfo/flashcoders > > _______________________________________________ > Flashcoders mailing list > Flashcoders@chattyfig.figleaf.com > http://chattyfig.figleaf.com/mailman/listinfo/flashcoders > _______________________________________________ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders-- -jonathan howe _______________________________________________ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders_______________________________________________ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
_______________________________________________ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders