ソース:MousePointer-5.zip
CGSGetGlobalCursorData ( ) を使ったコードは以前紹介したものをそのまま使っているので、解説は割愛する。
するとこんな感じ。

なかなかいい。
- - - -
でも CGSGetGlobalCursorData( ) はプライベート関数。使うべきではないと分かっていても他に代替手段が無いと。。
例えば、デフォルトはグラブ (Grab.app)方式として、プリファレンスでこちらに切り替えられるようにするのはどうだろうか。
分かるユーザにだけ使ってもらう。また将来突然使えなくなったときの応急処置としてグラブ方式に切り替えてもらうことができる。