Using MouseAppearance
one can change the cursor image when passing over an expression.
Is it possible to change the cursor image for the entire notebook front end (not just one expression within it)?
One can change the default cursor for all Output by setting up $Post
with something like the following.
mouseApp[expr_] :=
MouseAppearance[expr, Graphics[{Red, Disk[]}, ImageSize -> 10]]
$Post = mouseApp;
I'm not sure this answers your question though since it doesn't change the appearance of the mouse cursor for Input.
FrontEndExecute@FrontEnd`SetMouseAppearance[literally_anything]
does it for you.
It seems to just rasterize the expression and then set it as the mouse cursor. Works until something tries to change the cursor (like a resize grip as you leave the window).
Clicking also makes it disappear, although I bet with more testing we can find an option that makes that not be the case.
Here's a way to make your cursor caffeine:
FrontEndExecute@FrontEnd`SetMouseAppearance[
ChemicalData["Caffeine", "SpaceFillingMoleculePlot"]]
Note that text doesn't make for great cursors due to something about the rasterization.
(Beware the twin packet FrontEnd`GetMouseAppearance
. It crashes the system if you don't pass it an object. Seems as if it's used for getting icon images. Try: FrontEnd`Execute@FrontEnd`GetMouseAppearance@"Hand"
).
None
andAutomatic
however. I haven't been able to make it acceptGraphics
for example. $\endgroup$MouseAppearance
to busy expression while the file is being written and then change it back toAutomatic
. $\endgroup$