Reputation: 914
I was just trying to fire an event after the qooxdoo application is ready, so I started with the "Hello World" app and appended the recommendation at the very end of the main function:
main : function(){
// Hello World part...
qx.event.Registration.addListener(window, "ready", function() { alert("application ready"); });
}
but, it didn't appear to fire in chrome or firefox (I didn't test IE), so I dug some more and found this and it worked.
if (qx && qx.event && qx.event.Registration)
{
var manager = qx.event.Registration.getManager(window);
var handler = manager.findHandler(window, "ready");
if (handler.isApplicationReady()) {
alert("application ready");
}
}
Can anyone tell my why the recommended method does not work or am I putting it in the wrong place?
Thanks!
Upvotes: 2
Views: 620
Reputation: 547
More simple!!!
QX Core Widget "appear" event is equal the same as "onReady" event such in other JS Frameworks like YUI, JQuery or whatever....
http://www.qooxdoo.org/5.0.2/api/#qx.ui.core.Widget~appear!event
has the same effect.
best, Tamer
Upvotes: 0
Reputation: 9
override simply the finalize function in the member area of the Application
finalize : function()
{
// Call super class
this.base(arguments);
alert("Hello World");
}
Upvotes: 0
Reputation: 23516
Did you get the "recommendation" from the "From jquery to qooxdoo" document?! (It always helps if you cite your sources).
I think you are mixing things here. First, "window ready" is not the same as "application ready". I think "window ready" (as shown in a linked manual page) is a low-level event of the global JS window object. If you are running a high-level qooxdoo application (as it appears) this event has long passed when you register for it in your main method. So the event handler is never run.
In your second code sample you are not listening for an event, but checking a status with isApplicationReady(). This status can return true long after the event that turned the app from non-ready to ready has passed.
Upvotes: 1