Re: [MacPerl-Toolbox] The Camel and his confounded Ball
[email protected] (Alan Fry) Wed, 12 Jun 2002 16:01:32 +0100
| Newsgroups | perl.macperl.toolbox |
|---|---|
| Message-ID | <p05100302b92d064567be@[158.152.146.73]> |
At 6:59 am -0400 12/06/02, Chris Nandor wrote:
>Sure.
>
>I have no idea offhand what to do about it, so anyone else with an idea is
>more than welcome to submit a patch. :)
I think -- but am far from sure -- that it all happens is in this
part of the MainEvent loop in MPMain.c
......
now = LMGetTicks();
if (spinning = busy) {
if (now - lastNonBusy < (
gInBackground ? BACK_BUSY_WAIT : FRONT_BUSY_WAIT))
spinning = false;
} else
lastNonBusy = now;
if (gMacPerl_InModalDialog) {
events = activMask | updateMask | highLevelEventMask | osMask;
spinning = false;
}
MaintainMenuBar();
if (spinning) {
if (now-lastBusySpin < 3)
return;
lastBusySpin = now;
RotateCursor(32);
if (now - lastWNE < (
gInBackground ? BACK_FREQUENCY : FRONT_FREQUENCY))
return;
} else
MaintainCursor();
lastWNE = now;
gGotEof = nil;
......
'FRONT_BUSY_WAIT' is defined as 120 (presumably 'ticks'?) which
stacks up with the 2 second delay before the spin-cursor kicks in.
Any ideas on how to tackle this?
Alan Fry