I have some projects containing a PasteUpMorph that is bigger than the screen. (Navigation is via a custom class of my own, where dragging a portal border drags the underlying PasteUpMorph.) When a project containing one of these is first entered, it takes a long time to render. This is OK -- I can live with this -- but I want to show Cursor wait while it's happening. I thought I had this problem nailed -- in a method for the parent project, the button that triggers entry to the "slow" project has Cursor wait show before entering the project, and then Cursor normal show in a block executed with WorldState addDeferredUIMessage:. On my desktop system, which is a 1.6G Atom 330 running Linux, this seemed to be working fine. But when I tried it on my G4 PowerBook, it came out all wrong. The hourglass cursor appeared, as I wanted, but after only a second or so the Cursor normal show method kicked in, even though the "parent" project was still showing, and the long delay rendering the target project happened *afterward*. How do I do a deferred UI message that will only be invoked once the project is rendered?
(I tried preceding the Cursor normal show with
Project current world doOneCycle
in the deferred UI message block. This gives every appearance of working perfectly under Linux, but made no difference on my PowerBook -- the hourglass has gone away while the computation is done to render the project. Is this a Mac VM issue?)
-Thanks, Jim
--- Jim Rosenberg http://www.well.com/user/jer/ Internet: jr@amanue.com
squeak-dev@lists.squeakfoundation.org