diff options
| author | Markus Engel <markus.engel@tum.de> | 2013-04-20 19:16:13 +0000 |
|---|---|---|
| committer | Markus Engel <markus.engel@tum.de> | 2013-04-20 19:16:13 +0000 |
| commit | 1227ca0189590b281116fcc808bdd8c674b2196c (patch) | |
| tree | 9ce1978824c1baaba62865364c7e45aee7b42cd9 /src/arc-context.cpp | |
| parent | Replaced casting macros for EventContext tree; added contructors. (diff) | |
| download | inkscape-1227ca0189590b281116fcc808bdd8c674b2196c.tar.gz inkscape-1227ca0189590b281116fcc808bdd8c674b2196c.zip | |
Further changes to EventContexts; they work without GObject
(bzr r11608.1.97)
Diffstat (limited to 'src/arc-context.cpp')
| -rw-r--r-- | src/arc-context.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/arc-context.cpp b/src/arc-context.cpp index 21fd41a49..31e05a6ca 100644 --- a/src/arc-context.cpp +++ b/src/arc-context.cpp @@ -149,6 +149,28 @@ void CArcContext::finish() { CEventContext::finish(); } +SPArcContext::~SPArcContext() { + SPEventContext *ec = SP_EVENT_CONTEXT(this); + SPArcContext *ac = SP_ARC_CONTEXT(this); + + ec->enableGrDrag(false); + + ac->sel_changed_connection.disconnect(); + ac->sel_changed_connection.~connection(); + + delete ec->shape_editor; + ec->shape_editor = NULL; + + /* fixme: This is necessary because we do not grab */ + if (ac->item) { + sp_arc_finish(ac); + } + + delete ac->_message_context; + + //G_OBJECT_CLASS(sp_arc_context_parent_class)->dispose(object); +} + static void sp_arc_context_dispose(GObject *object) { SPEventContext *ec = SP_EVENT_CONTEXT(object); |
