summaryrefslogtreecommitdiffstats
path: root/src/event-context.cpp
diff options
context:
space:
mode:
authorKrzysztof Kosi??ski <tweenk.pl@gmail.com>2010-01-10 00:46:28 +0000
committerKrzysztof KosiƄski <tweenk.pl@gmail.com>2010-01-10 00:46:28 +0000
commitb52865a71a9f83da9719a3ec5f50a4a2cd7cdace (patch)
tree6d8def69ad0aa28aa4414dc9d501707444a5419b /src/event-context.cpp
parentImplement selection linear grow (diff)
downloadinkscape-b52865a71a9f83da9719a3ec5f50a4a2cd7cdace.tar.gz
inkscape-b52865a71a9f83da9719a3ec5f50a4a2cd7cdace.zip
* Implement node snapping.
* Fix minor bug in linear grow. * Add --fixes. * Move some node selection-related functions to ControlPointSelection. Fixed bugs: - https://launchpad.net/bugs/170561 - https://launchpad.net/bugs/171893 - https://launchpad.net/bugs/182585 - https://launchpad.net/bugs/446773 (bzr r8846.2.9)
Diffstat (limited to 'src/event-context.cpp')
-rw-r--r--src/event-context.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/event-context.cpp b/src/event-context.cpp
index ec0169573..13e7e9410 100644
--- a/src/event-context.cpp
+++ b/src/event-context.cpp
@@ -57,6 +57,7 @@
#include "rubberband.h"
#include "selcue.h"
#include "lpe-tool-context.h"
+#include "ui/tool/control-point.h"
static void sp_event_context_class_init(SPEventContextClass *klass);
static void sp_event_context_init(SPEventContext *event_context);
@@ -1238,6 +1239,7 @@ void sp_event_context_snap_delay_handler(SPEventContext *ec, SPItem* const item,
gboolean sp_event_context_snap_watchdog_callback(gpointer data)
{
+ if (!data) return FALSE;
// Snap NOW! For this the "postponed" flag will be reset and the last motion event will be repeated
DelayedSnapEvent *dse = reinterpret_cast<DelayedSnapEvent*>(data);
@@ -1276,6 +1278,11 @@ gboolean sp_event_context_snap_watchdog_callback(gpointer data)
}
}
break;
+ case DelayedSnapEvent::CONTROL_POINT_HANDLER: {
+ using Inkscape::UI::ControlPoint;
+ ControlPoint *point = reinterpret_cast<ControlPoint*>(dse->getKnot());
+ point->_eventHandler(dse->getEvent());
+ } break;
default:
g_warning("Origin of snap-delay event has not been defined!;");
break;