Beachball cursor Help
Richard Gaskin
ambassador at fourthworld.com
Tue Nov 9 11:12:13 EST 2010
Devin Asay wrote:
> I'm not sure exactly what's going on behind the scenes with the
> 'busy' cursor. I got curious and looked into it. The cursor icons
> are in a stack called "revCursors" for Windows and *nix, and a
> stack called "revMacCursors" for Mac OS. They're just image objects.
> I would think you could just replace the existing images with your
> own colorized ones, making sure the image ids match, and it should
> "just work".
Yep - they're image IDs 16 through 23.
> That said, LiveCard 4.5 is supposed to have enhanced cursor
> support, including cursors with alpha blending. So it seems like
> you could just set the cursor to the image id of your choosing,
> and increment it in a repeat loop, just like 'set cursor to busy'.
> Not tested:
>
> put 67890,67891,67892,67893,67894,67895,67896,67897 into tAnimCursor
> repeat with i = 1 to 100
> put item i wrap (the number of items in tAnimCursor) of tAnimCursor
> into tCurrentCursor
> set the cursor to tCurrentCursor
> wait 10
> end repeat
>
> Seems like this ought to work.
Or for reuse you could put that into a custom command that emulates the
way the "busy" token works, internally incrementing it like this (note
that this is off the cuff and as untested as yesterday's progress bar
stuff, so it may need similar fixes <g>:
-- Main app code:
on DoSomething
repeat with i = 1 to 1000
SetCustomBusyCursor
--
DoMainStuffHere
end repeat
end DoSomething
-- Somewhere in your libraries:
local sCustomBusyCursors, sCurBusyCursor
on SetCustomBusyCursor
-- Initialize if needed:
if sCustomBusyCursors is empty then
put "67890,67891,67892,67893,67894,67895,67896,67897" \
into sCustomBusyCursors
end if
-- Increment the cursor ID:
add 1 to sCurBusyCursor
if sCurBusyCursor > the number of items of sCustomBusyCursors then
put 1 into sCurBusyCursor
end if
-- Do the deed:
set the cursor to (item sCurBusyCursor of sCustomBusyCursors)
end SetCustomBusyCursor
--
Richard Gaskin
Fourth World
LiveCode training and consulting: http://www.fourthworld.com
Webzine for LiveCode developers: http://www.LiveCodeJournal.com
LiveCode Journal blog: http://LiveCodejournal.com/blog.irv
More information about the use-livecode
mailing list