|
From: Raymond I. <xw...@ya...> - 2003-10-27 13:37:37
|
The problem PanelBar and isClass() is due to fact that
the prototype was not created using
dynapi.setPrototype()
Instead of var p = PanelBar.prototype = new DynLayer
it should be var p =
dynapi.setPrototype('PanelBar','DynLayer');
--
Raymond Irving
--- Peter Romianowski <ant...@gm...> wrote:
> Hi,
>
> I have two problems here. First I cannot subclass
> PanelBar until I
> comment out some stuff in the constructor like that:
>
> function
>
PanelBar(lyrmnu,lyrcnt,mnuheight,x,y,w,h,mnucss,cntcss,minimized)
> {
>
> this.DynLayer = DynLayer;
> this.DynLayer(null,x,y,w,h,null);
>
> if (lyrmnu) {
> this.x = x;
> ...
>
>
this.menu.setHTML(this._mnuhtml.replace('{@min}',this._mnuhtmlmax));
> }
>
> this.onPreCreate(PanelBar.PreCreateEvent);
> this.onCreate(PanelBar.CreateEvent);
> }
> }
>
> Is there any common pattern how to avoid problems
> with subclassing? Or
> am I doing something totally stupid in trying to
> subclass PanelBar?
>
> The next problem is that I can't enable the
> dragevents on my subclass of
> PanelBar until I change dragevent.js line 225
> (enableDragEvents):
>
> if(lyr.isClass('DynLayer'))
> lyr.addEventListener(DragEvent.lyrListener);
>
> to
>
> lyr.addEventListener(DragEvent.lyrListener);
>
> That is bruteforce, I know ;) I just tried to figure
> out where the
> problem is. And I found that
> myPanelBarSubclass.isClass('DynLayer')
> yields false which I consider as wrong - it is a
> DynLayer since it is a
> subclass of PanelBar which is a subclass of
> DynLayer! The quickest fix I
> can imagine is to rewrite the isClass-method to tell
> whether any
> superclass matches the argument. I don't know if
> this breaks something,
> so I didn't try that yet.
>
> If I am trying to do something totally wrong then
> please tell me!
> Otherwise I will gladly help "fixing" the issues.
>
> Regards,
> Peter
>
> default disclaimer: DynAPI rules! ;)
>
>
>
>
-------------------------------------------------------
> This SF.net email is sponsored by: The SF.net
> Donation Program.
> Do you like what SourceForge.net is doing for the
> Open
> Source Community? Make a contribution, and help us
> add new
> features and functionality. Click here:
> http://sourceforge.net/donate/
> _______________________________________________
> Dynapi-Dev mailing list
> Dyn...@li...
>
http://www.mail-archive.com/dyn...@li.../
__________________________________
Do you Yahoo!?
Exclusive Video Premiere - Britney Spears
http://launch.yahoo.com/promos/britneyspears/
|