summaryrefslogtreecommitdiffstats
path: root/src/box3d-context.cpp
diff options
context:
space:
mode:
authorDiederik van Lierop <mailat-signdiedenrezidotnl>2010-09-26 17:25:58 +0000
committerDiederik van Lierop <mailat-signdiedenrezidotnl>2010-09-26 17:25:58 +0000
commit4577a7d8547fb46e924ee31f0157559053a7946a (patch)
tree6b9045112d9593e58aa7c16edbccfa3c2072bee8 /src/box3d-context.cpp
parentExtensions. Fix for bug #647744 ([inx] min/max float values ignored with loca... (diff)
downloadinkscape-4577a7d8547fb46e924ee31f0157559053a7946a.tar.gz
inkscape-4577a7d8547fb46e924ee31f0157559053a7946a.zip
3DBox tool: snap the first point of the drag action
(bzr r9792)
Diffstat (limited to 'src/box3d-context.cpp')
-rw-r--r--src/box3d-context.cpp16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/box3d-context.cpp b/src/box3d-context.cpp
index 37e9e210c..8274ffde7 100644
--- a/src/box3d-context.cpp
+++ b/src/box3d-context.cpp
@@ -283,6 +283,7 @@ static gint sp_box3d_context_root_handler(SPEventContext *event_context, GdkEven
if ( event->button.button == 1 && !event_context->space_panning) {
Geom::Point const button_w(event->button.x,
event->button.y);
+ Geom::Point button_dt(desktop->w2d(button_w));
// save drag origin
event_context->xp = (gint) button_w[Geom::X];
@@ -294,8 +295,12 @@ static gint sp_box3d_context_root_handler(SPEventContext *event_context, GdkEven
dragging = true;
- /* */
- Geom::Point button_dt(desktop->w2d(button_w));
+ SnapManager &m = desktop->namedview->snap_manager;
+ m.setup(desktop, true, bc->item);
+ m.freeSnapReturnByRef(button_dt, Inkscape::SNAPSOURCE_NODE_HANDLE);
+ m.unSetup();
+ bc->center = from_2geom(button_dt);
+
bc->drag_origin = from_2geom(button_dt);
bc->drag_ptB = from_2geom(button_dt);
bc->drag_ptC = from_2geom(button_dt);
@@ -313,13 +318,6 @@ static gint sp_box3d_context_root_handler(SPEventContext *event_context, GdkEven
bc->drag_ptC_proj.normalize();
bc->drag_ptC_proj[Proj::Z] = 0.25;
- /* Snap center */
- SnapManager &m = desktop->namedview->snap_manager;
- m.setup(desktop, true, bc->item);
- m.freeSnapReturnByRef(button_dt, Inkscape::SNAPSOURCE_NODE_HANDLE);
- m.unSetup();
- bc->center = from_2geom(button_dt);
-
sp_canvas_item_grab(SP_CANVAS_ITEM(desktop->acetate),
( GDK_KEY_PRESS_MASK |
GDK_BUTTON_RELEASE_MASK |