Beachball cursor Help

Devin Asay devin_asay at byu.edu
Tue Nov 9 10:47:57 EST 2010


On Nov 9, 2010, at 6:38 AM, Peter Brigham MD wrote:

> I'm just fooling around with trying out an animated cursor, and I  
> can't get it to work. I tried importing an animated GIF then setting  
> the cursor to it, but I only get what looks like an opaque white mask  
> of the first frame of the GIF and no animation. Do I conclude that I  
> have to cycle through the frames of the GIF explicitly via script? I  
> would have thought that just setting the cursor to the image id number  
> would take care of that. I can do this with a button icon -- just  
> setting the icon of the button to the image ID of the GIF results in a  
> nice animated button image. Why doesn't his work with a cursor?

Peter,

When I have used animated gifs, I've just shown then hidden an image object. Of course, that's not really the same because they don't follow your mouse movement like a mouse cursor.

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".

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.

Regards,

Devin


Devin Asay
Humanities Technology and Research Support Center
Brigham Young University




More information about the Use-livecode mailing list