Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I lock the cursor to the inside of a window on Mac OS X?

I'm trying to put together a game for Mac OS X which involves a lot of fast action and flinging around of the mouse cursor. If the user wants to play in windowed mode, I'd quite like to lock the cursor to the inside of the window to avoid accidentally changing programs in the heat of battle (obviously this will cancel itself if the user changes programs or hits escape for the pause menu.)

On Windows, this can be accomplished easily with ClipCursor(). I can't find an equivalent on Mac OS X. Is there one?

like image 453
ZorbaTHut Avatar asked Jan 10 '11 00:01

ZorbaTHut


1 Answers

Have a look at CGWarpMouseCursorPosition, CGAssociateMouseAndMouseCursorPosition and CGGetLastMouseDelta (part of ApplicationServices).

See http://developer.apple.com/library/mac/#documentation/GraphicsImaging/Reference/Quartz_Services_Ref/Reference/reference.html

like image 106
ttvd Avatar answered Oct 26 '22 17:10

ttvd