Code

Merge and cleanup of GSoC C++-ification project.
[inkscape.git] / src / gradient-context.cpp
index 2e6544b637a975162e2401cf6eb6f287ce7bf89e..d37e9b02270ba0e21149dda51c2842161893f18e 100644 (file)
@@ -1,11 +1,10 @@
-#define __SP_GRADIENT_CONTEXT_C__
-
 /*
  * Gradient drawing and editing tool
  *
  * Authors:
  *   bulia byak <buliabyak@users.sf.net>
  *   Johan Engelen <j.b.c.engelen@ewi.utwente.nl>
+ *   Abhishek Sharma
  *
  * Copyright (C) 2007 Johan Engelen
  * Copyright (C) 2005 Authors
@@ -47,6 +46,7 @@
 #include "sp-namedview.h"
 #include "rubberband.h"
 
+using Inkscape::DocumentUndo;
 
 
 static void sp_gradient_context_class_init(SPGradientContextClass *klass);
@@ -386,7 +386,7 @@ sp_gradient_context_add_stops_between_selected_stops (SPGradientContext *rc)
     }
 
     if (g_slist_length(these_stops) > 0 && doc) {
-        SPDocumentUndo::done (doc, SP_VERB_CONTEXT_GRADIENT, _("Add gradient stop"));
+        DocumentUndo::done(doc, SP_VERB_CONTEXT_GRADIENT, _("Add gradient stop"));
         drag->updateDraggers();
         // so that it does not automatically update draggers in idle loop, as this would deselect
         drag->local_change = true;
@@ -454,7 +454,7 @@ sp_gradient_simplify(SPGradientContext *rc, double tolerance)
     }
 
     if (g_slist_length(todel) > 0) {
-        SPDocumentUndo::done (doc, SP_VERB_CONTEXT_GRADIENT, _("Simplify gradient"));
+        DocumentUndo::done(doc, SP_VERB_CONTEXT_GRADIENT, _("Simplify gradient"));
         drag->local_change = true;
         drag->updateDraggers();
         drag->selectByCoords(coords);
@@ -478,8 +478,8 @@ sp_gradient_context_add_stop_near_point (SPGradientContext *rc, SPItem *item,  G
 
     ec->get_drag()->addStopNearPoint (item, mouse_p, tolerance/desktop->current_zoom());
 
-    SPDocumentUndo::done (sp_desktop_document (desktop), SP_VERB_CONTEXT_GRADIENT,
-                      _("Add gradient stop"));
+    DocumentUndo::done(sp_desktop_document (desktop), SP_VERB_CONTEXT_GRADIENT,
+                       _("Add gradient stop"));
 
     ec->get_drag()->updateDraggers();
 }
@@ -530,8 +530,8 @@ sp_gradient_context_root_handler(SPEventContext *event_context, GdkEvent *event)
                     sp_gradient_reset_to_userspace(priv, item);
                 }
 
-                SPDocumentUndo::done (sp_desktop_document (desktop), SP_VERB_CONTEXT_GRADIENT,
-                                  _("Create default gradient"));
+                DocumentUndo::done(sp_desktop_document (desktop), SP_VERB_CONTEXT_GRADIENT,
+                                   _("Create default gradient"));
             }
             ret = TRUE;
         }
@@ -559,6 +559,7 @@ sp_gradient_context_root_handler(SPEventContext *event_context, GdkEvent *event)
                 SnapManager &m = desktop->namedview->snap_manager;
                 m.setup(desktop);
                 m.freeSnapReturnByRef(button_dt, Inkscape::SNAPSOURCE_NODE_HANDLE);
+                m.unSetup();
                 rc->origin = from_2geom(button_dt);
             }
 
@@ -599,7 +600,9 @@ sp_gradient_context_root_handler(SPEventContext *event_context, GdkEvent *event)
 
                 Geom::Point const motion_w(event->motion.x, event->motion.y);
                 Geom::Point const motion_dt = event_context->desktop->w2d(motion_w);
+
                 m.preSnap(Inkscape::SnapCandidatePoint(motion_dt, Inkscape::SNAPSOURCE_NODE_HANDLE));
+                m.unSetup();
             }
 
             bool over_line = false;
@@ -812,8 +815,8 @@ sp_gradient_context_root_handler(SPEventContext *event_context, GdkEvent *event)
                     }
                 }
                 // we did an undoable action
-                SPDocumentUndo::done (sp_desktop_document (desktop), SP_VERB_CONTEXT_GRADIENT,
-                                  _("Invert gradient"));
+                DocumentUndo::done(sp_desktop_document (desktop), SP_VERB_CONTEXT_GRADIENT,
+                                   _("Invert gradient"));
                 ret = TRUE;
             }
             break;
@@ -948,4 +951,4 @@ static void sp_gradient_drag(SPGradientContext &rc, Geom::Point const pt, guint
   fill-column:99
   End:
 */
-// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :