-/* gltrackball, Copyright (c) 2002 Jamie Zawinski <jwz@jwz.org>
+/* gltrackball, Copyright (c) 2002-2008 Jamie Zawinski <jwz@jwz.org>
* GL-flavored wrapper for trackball.c
*
* Permission to use, copy, modify, distribute, and sell this software and its
*/
extern void gltrackball_rotate (trackball_state *);
+/* Call this when a mouse-wheel click is detected.
+ Clicks act like horizontal or vertical drags.
+ Percent is the length of the drag as a percentage of the screen size.
+ Button is 'Button4' or 'Button5' (for the vertical wheel)
+ or 'Button5' or 'Button6' (for the horizontal wheel).
+ If `flip_p' is true, swap the horizontal and vertical axes.
+ */
+void gltrackball_mousewheel (trackball_state *ts,
+ int button, int percent, int flip_p);
+
+/* Return the quaternion encapsulated by the trackball state.
+ */
+extern void gltrackball_get_quaternion (trackball_state *ts, float q[4]);
+
#endif /* __GLTRACKBALL_H__ */