Section: C Library Functions (3)
- Sets the mouse-button callback for the current window.
OpenGLUT - input
Fn glutMouseFunc void( *callback )( int button int state int x int y )
Client hook for mouse-buttons.
Whenever a mouse button is pressed or released in an OpenGLUT
window, OpenGLUT checks if that window has a mouse-button
(Mouse) callback registered. If so, OpenGLUT gives the
event to the handler.
is the button number,
starting from 0.
to indicate the button's new state. The other parameters
are the mouse coordinates.
Mouse wheel motion can be reported as buttons. If you
do not request otherwise, a wheel spun forward will
act like a button clicking down, immediately followed
by clicking up. Spinning the same wheel backward
will act like a different button clicking. Mouse wheel
pseudo-buttons are added after all real buttons.
While the button is held and the mouse is dragged,
you receive mouse-motion events (glutMotionFunc()),
even if the mouse is dragged out of the window.
This callback is bound to the
Reporting the wheel as buttons is actually inherited from X. freeglut added code to support this on WIN32. OpenGLUT inherited that support from freeglut.
Old GLUT defines the symbols
However, mice can have more than 3 buttons, so these symbols are deprecated.
Windows created via glutCreateMenuWindow() always cascade keyboard and mouse events to their parent.