X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?p=xscreensaver;a=blobdiff_plain;f=hacks%2Fglx%2Fantmaze.c;h=6258fb9e6603663a7e5ae54ac9f9be1622530589;hp=0f18e15fe8dc9f49843dccb276e2fb05012f5c98;hb=6afd6db0ae9396cd7ff897ade597cd5483f49b0e;hpb=dba664f31aa87285db4d76cf8c5e66335299703a diff --git a/hacks/glx/antmaze.c b/hacks/glx/antmaze.c index 0f18e15f..6258fb9e 100644 --- a/hacks/glx/antmaze.c +++ b/hacks/glx/antmaze.c @@ -1304,55 +1304,30 @@ ENTRYPOINT Bool antmaze_handle_event (ModeInfo *mi, XEvent *event) { antmazestruct *mp = &antmaze[MI_SCREEN(mi)]; - switch(event->xany.type) { - case ButtonPress: + if (gltrackball_event_handler (event, mp->trackball, + MI_WIDTH (mi), MI_HEIGHT (mi), + &mp->button_down_p)) + return True; - switch(event->xbutton.button) { - - case Button1: - mp->button_down_p = True; - gltrackball_start(mp->trackball, - event->xbutton.x, event->xbutton.y, - MI_WIDTH (mi), MI_HEIGHT (mi)); - break; + if (event->xany.type == ButtonPress) + { + switch(event->xbutton.button) { - case Button3: - mp->focus = (mp->focus + 1) % ANTCOUNT; - break; + case Button3: + mp->focus = (mp->focus + 1) % ANTCOUNT; + return True; - case Button4: - mp->mag = max(mp->mag-1, 1); - break; - - case Button5: - mp->mag = min(mp->mag+1, MAX_MAGNIFICATION); - break; - } + case Button4: + mp->mag = max(mp->mag-1, 1); + return True; - break; - - case ButtonRelease: - - switch(event->xbutton.button) { - case Button1: - mp->button_down_p = False; - break; + case Button5: + mp->mag = min(mp->mag+1, MAX_MAGNIFICATION); + return True; + } } - break; - - case MotionNotify: - if(mp->button_down_p) - gltrackball_track(mp->trackball, - event->xmotion.x, event->xmotion.y, - MI_WIDTH (mi), MI_HEIGHT (mi)); - break; - - default: - return False; - } - - return True; + return False; } ENTRYPOINT void init_antmaze(ModeInfo * mi) @@ -1433,7 +1408,7 @@ ENTRYPOINT void init_antmaze(ModeInfo * mi) mp->mag = 4.0; mp->rot = make_rotator (rot_speed, rot_speed, rot_speed, 1, 0, True); - mp->trackball = gltrackball_init (); + mp->trackball = gltrackball_init (False); if ((mp->glx_context = init_GL(mi)) != NULL) { reshape_antmaze(mi, MI_WIDTH(mi), MI_HEIGHT(mi));