http://www.jwz.org/xscreensaver/xscreensaver-5.07.tar.gz
[xscreensaver] / hacks / glx / gltrackball.c
index e3c0cd42402fdb781b03a48a0be8e502d4c7f9c9..d02e316ae62e85a1b9f1cade3f3055bcca0b7013 100644 (file)
@@ -12,6 +12,7 @@
 
 #include <math.h>
 #include <stdlib.h>
+#include <string.h>
 
 #ifdef HAVE_CONFIG_H
 # include "config.h"
@@ -43,6 +44,15 @@ gltrackball_init (void)
   return ts;
 }
 
+/* Reset the trackball to the default unrotated state.
+ */
+void
+gltrackball_reset (trackball_state *ts)
+{
+  memset (ts, 0, sizeof(*ts));
+  trackball (ts->q, 0, 0, 0, 0);
+}
+
 /* Begin tracking the mouse: Call this when the mouse button goes down.
    x and y are the mouse position relative to the window.
    w and h are the size of the window.