GLUTMOUSEFUNC

Section: C Library Functions (3)
Updated: LOCAL
Index Return to Main Contents

BSD mandoc
 

NAME

glutMouseFunc - Sets the mouse-button callback for the current window.  

LIBRARY

OpenGLUT - input  

SYNOPSIS

In openglut.h Ft void Fn glutMouseFunc void( *callback )( int button int state int x int y )  

PARAMETERS

Bf Em
 callback Ef
    Client hook for mouse-buttons.  

DESCRIPTION

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. Bf Sy
 button Ef
 is the button number, starting from 0. Bf Sy
 state Ef
 is  Bf Sy
 GLUT_UP Ef
 or  Bf Sy
 GLUT_DOWN Ef
  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 Bf Li
 current window Ef
 .

 

CAVEATS

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 Bf Sy
 GLUT_LEFT_BUTTON, Ef
  Bf Sy
 GLUT_RIGHT_BUTTON, Ef
 and  Bf Sy
 GLUT_MIDDLE_BUTTON. Ef
 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.

 

SEE ALSO

glutMotionFunc(3) glutPassiveMotionFunc(3) glutMouseWheelFunc(3)