Well, I suppose I just got lucky since the only two dojo widgets that I've
used from Tacos were exactly the MenuBar and the TabContainer ;)
I finally gave up on since I didn't really *need* it, just would be nice to
have it.
I agree, MenuBar leaves much to be desired but since in my case it's use
will be limited it was a very cost-effective solution, really easy to
implement. I got my whole menu structure working in a few minutes (well,
except for the ajax part).

About sam's e-mail, 2 things:
1) I saw the bug in IE in which the menu items appear at the very top. From
what I could test it happens because the menu items are always placed at the
beginning of their parent tags, for instance:

<div>
 ... some stuff here
 My menu here
</div>
This wouldn't work because the menu items would appear at the same place as
the other stuff. A workaround would be:

<div>
 ... some stuff here
</div>
<div>
 My menu here
</div>
At least worked for me...

2) I'm not sure I fully understand the menubar/ajax problem. I thought the
problem was that the request was executing the javascript code again, when
it shouldn't, thus creating a new menubar. I searched the Tacos dev list
like you told me to find a "new dojo tapestry widgets" thread but I really
wasn't very much enlightened by it.
Anyway, please correct me if I'm wrong. I looked at the Tacos source code
and the way I see it now, in order to make it work, I'd have to replace the
DojoMenuBar2 component with a slightly altered version that will check if
the menu (with the same name) already exists before creating it, i.e., not
call dojo.widget.CreateWidget when it's not necessary.
I'm no expert on javascript, and I don't know exactly if that's what you
were thinking. Any ideas?

Denis


-----Original Message-----
From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] 
Sent: segunda-feira, 18 de setembro de 2006 21:54
To: Tapestry users
Subject: Re: Re: Tacos MenuBar and Ajax

Two small thoughts on this.

-) WRT the javascript not getting executed, this is annoying but not really
a "bug" in dojo. If you look at some of the other tacos components you'll
find that their script templates use the ResponseBuilder to determine if
they are in an ajax request and respond appropriately..(Ie either execute
immediately or execute upon window/package load depending..)

-) The Menu widget ~is~ horribly slow..It was written by some of the same
people involved in writing the TabContainer. I hope it doesn't give people a
bad impression of dojo devs as this is only one part of the community. I
recently added a new "tab like" widget which should be extremely fast..It
can do a lot more than just "tabs" as it is very generic, but there is at
least an alternative. .

http://archive.dojotoolkit.org/nightly/tests/widget/test_RadioGroup_tabs.htm
l

In fact - the same widget could probably handle dynamic menus + tabs with
equal ease as it's based on a UL/OL and css class names. No images/css
templates/etc are loaded by the widget. It works completely off of what you
give it so there shouldn't be any hidden css behaviour to drive you nuts.


On 9/18/06, Sam Gendler <[EMAIL PROTECTED]> wrote:
>
> Yeah.  Currently, the dojo components don't handle ajax updates well.
> I was new to tacos and wasn't aware of the problem until I wrote code
> that triggers it.  Due to the nature of the structure of our page,
> however, the extra menu bar shows up in a part of the page which is
> never visible, so I've been able to ignore it during a schedule
> crunch.  We've almost released, after which I can devote some time to
> improving all the dojo widgets I contributed.  The others all send
> javascript during ajax requests, even when not being updated, but
> because of the way I structured them, the 2nd javascript just doesn't
> do anything.  Andreas or Jesse described a fix to me on the tacos-dev
> mailing list, if you want to search for it.  It shouldn't be too
> difficult to fix (just search for 'sgendler').
>
> Personally, I find that the menubar, as implemented in dojo, leaves a
> TON to be desired.  It renders itself really slowly and causes massive
> delays in the rendering of other dojo code on the page.  It also shows
> all menu items stacked on top of each other before finally spreading
> them out, and in IE, if your menu isn't at the very top of the page,
> the menu items appear at the very top of the page until you mouse over
> the area where they are supposed to be, at which point, they drop down
> to where they are supposed to be.  In short, it is basically
> unworkably in a production quality app. We finally ditched it for a
> CSS solution which is about 1,000 times faster.  Incidentally, those
> are all dojo issues, not tap/tacos ones.  The same problems occur in
> our page mockups.
>
> --sam
>
> On 9/19/06, andyhot <[EMAIL PROTECTED]> wrote:
> > Denis Souza wrote:
> > > Hi,
> > >
> > I think the original contributor of those components described such
> > a behaviour at
> > http://thread.gmane.org/gmane.comp.java.tacos.devel/2040/
> >
> > If this is indeed the cause, we'll try to resolve it before the (soon to
> > come) next release
> > >
> > >
> > > I'm using Tacos' DojoMenuBar component to create a menu in my
> application
> > > but whenever I use ajax on the same page as the menu I get strange
> behavior
> > > in Firefox 1.5 (IE 6 works fine). After the ajax request loads another
> menu,
> > > identical to the original, is created near the updated part of the
> page. I'm
> > > guessing Firefox is executing all "onload" javascript methods after
> each
> > > ajax request, thus, repeating the menu creation.
> > >
> > > Anyone know if there's an easy way out of this?
> > >
> > >
> > >
> > > Denis
> > >
> > >
> > >
> > >
> > >
> >
> >
> > --
> > Andreas Andreou - [EMAIL PROTECTED] - http://andyhot.di.uoa.gr
> > Tapestry / Tacos developer
> > Open Source / J2EE Consulting
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


-- 
Jesse Kuhnert
Tapestry/Dojo/(and a dash of TestNG), team member/developer

Open source based consulting work centered around
dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to