]> git.street.me.uk Git - andy/viking.git/commitdiff
Enable the escape key to remove/reset the ruler tool.
authorRob Norris <rw_norris@hotmail.com>
Mon, 31 Jan 2011 02:58:42 +0000 (02:58 +0000)
committerRob Norris <rw_norris@hotmail.com>
Wed, 13 Jul 2011 19:10:22 +0000 (20:10 +0100)
src/vikwindow.c

index c06fc07f0f45416ed564a560002d425bd5b64bd0..8e8fa89d88c9d1803943f6281fb3ded82594d0bf 100644 (file)
@@ -997,6 +997,16 @@ static void ruler_deactivate (VikLayer *vl, ruler_tool_state_t *s)
   draw_update ( s->vw );
 }
 
+static gboolean ruler_key_press (VikLayer *vl, GdkEventKey *event, ruler_tool_state_t *s)
+{
+  if (event->keyval == GDK_Escape) {
+    s->has_oldcoord = FALSE;
+    ruler_deactivate ( vl, s );
+    return TRUE;
+  }
+  return FALSE;
+}
+
 static VikToolInterface ruler_tool = 
   { "Ruler", 
     (VikToolConstructorFunc) ruler_create,
@@ -1006,7 +1016,7 @@ static VikToolInterface ruler_tool =
     (VikToolMouseFunc) ruler_click, 
     (VikToolMouseMoveFunc) ruler_move, 
     (VikToolMouseFunc) ruler_release,
-    NULL,
+    (VikToolKeyFunc) ruler_key_press,
     GDK_CURSOR_IS_PIXMAP,
     &cursor_ruler_pixbuf };
 /*** end ruler code ********************************************************/