Code

Give SPNamedView a SnapManager instance and use it for all management of snapping...
[inkscape.git] / src / draw-context.cpp
index d33a33f7b12f2d740f293c97b7ad941dd336c3db..aa1480c675d4d335aa1e337876e7ae042024ecdc 100644 (file)
@@ -39,7 +39,7 @@
 #include "selection-chemistry.h"
 #include "snap.h"
 #include "sp-path.h"
-
+#include "sp-namedview.h"
 
 static void sp_draw_context_class_init(SPDrawContextClass *klass);
 static void sp_draw_context_init(SPDrawContext *dc);
@@ -372,7 +372,7 @@ void spdc_endpoint_snap_rotation(SPEventContext const *const ec, NR::Point &p, N
         p = o + bdot * best;
 
         /* Snap it along best vector */
-        SnapManager const m(SP_EVENT_CONTEXT_DESKTOP(ec)->namedview);
+        SnapManager const &m = SP_EVENT_CONTEXT_DESKTOP(ec)->namedview->snap_manager;
         p = m.constrainedSnap(Inkscape::Snapper::SNAP_POINT | Inkscape::Snapper::BBOX_POINT,
                               p, best, NULL).getPoint();
     }
@@ -387,7 +387,7 @@ void spdc_endpoint_snap_free(SPEventContext const * const ec, NR::Point& p, guin
     }
 
     /* FIXME: this should be doing bbox snap as well */
-    SnapManager const m(SP_EVENT_CONTEXT_DESKTOP(ec)->namedview);
+    SnapManager const &m = SP_EVENT_CONTEXT_DESKTOP(ec)->namedview->snap_manager;
     p = m.freeSnap(Inkscape::Snapper::BBOX_POINT | Inkscape::Snapper::SNAP_POINT, p, NULL).getPoint();
 }