[Newbies] addDeferredUIMessage: Documentation

Sean P. DeNigris sean at clipperadams.com
Fri May 14 04:44:58 UTC 2010


I'm trying to add some documentation to addDeferredUIMessage:.  What's a good
summary on this method?

I collected the following snippets from the web...

If you want to run something that accesses the Morphic UI, even though you
are not running from somewhere that the UI is in a sane state, you should
normally use addDeferredUIMessage:. Otherwise, you can put Morphic into
extremely confused states....

Per Ned Konz @ http://wiki.squeak.org/squeak/528:
Deferred UI messages are processed in the middle of the Morphic event loop,
just after responding to events, and before doing other step methods and
displaying the world. Look for implementors of #addDeferredUIMessage:, look
at the one in WorldState, look for senders of #deferredUIMessages, and
you'll see WorldState>>runStepMethodsIn: which empties the queue. And it's
called from doOneCycleNowFor: which is the body of the main Morphic event
loop.

Per http://wiki.squeak.org/squeak/5689:
If you want to run something that accesses the Morphic UI, even though you
are not running from somewhere that the UI is in a sane state, you should
normally use addDeferredUIMessage:. Otherwise, you can put Morphic into
extremely confused states....

Per Wilhelm K Schwab @
http://forum.world.st/Fwd-MouseOverHandler-td1300474.html#a1300474:
provides a clean way to interact with the GUI from background threads

Per http://www.visoracle.com/squeak/faq/containerless.html:
As it is now, it's quite simple to put long-running computations in 
background threads; you just don't let the background threads call methods 
directly on Morphs. We have addDeferredUIMessage: to queue up action from 
the background threads for later execution in the UI thread during the 
next window cycle.

Sean
-- 
View this message in context: http://forum.world.st/addDeferredUIMessage-Documentation-tp2216105p2216105.html
Sent from the Squeak - Beginners mailing list archive at Nabble.com.


More information about the Beginners mailing list