diff options
| author | Markus Engel <markus.engel@tum.de> | 2013-04-09 20:12:07 +0000 |
|---|---|---|
| committer | Markus Engel <markus.engel@tum.de> | 2013-04-09 20:12:07 +0000 |
| commit | 1d8f1753cd8cab38d19fcc26a4ad70ba2e794ac8 (patch) | |
| tree | b010ac32dcfd9923c2ec38dff3b70955242dfa70 /src/lpe-tool-context.cpp | |
| parent | Started conversion of SPEventContext tree; added virtual pads to all classes. (diff) | |
| download | inkscape-1d8f1753cd8cab38d19fcc26a4ad70ba2e794ac8.tar.gz inkscape-1d8f1753cd8cab38d19fcc26a4ad70ba2e794ac8.zip | |
Added constructors to EventContext tree / some missing virtual pads.
(bzr r11608.1.90)
Diffstat (limited to 'src/lpe-tool-context.cpp')
| -rw-r--r-- | src/lpe-tool-context.cpp | 30 |
1 files changed, 21 insertions, 9 deletions
diff --git a/src/lpe-tool-context.cpp b/src/lpe-tool-context.cpp index ddea7a579..3d81efc00 100644 --- a/src/lpe-tool-context.cpp +++ b/src/lpe-tool-context.cpp @@ -74,25 +74,29 @@ sp_lpetool_context_class_init(SPLPEToolContextClass *klass) object_class->dispose = sp_lpetool_context_dispose; - event_context_class->setup = sp_lpetool_context_setup; - event_context_class->set = sp_lpetool_context_set; - event_context_class->root_handler = sp_lpetool_context_root_handler; - event_context_class->item_handler = sp_lpetool_context_item_handler; +// event_context_class->setup = sp_lpetool_context_setup; +// event_context_class->set = sp_lpetool_context_set; +// event_context_class->root_handler = sp_lpetool_context_root_handler; +// event_context_class->item_handler = sp_lpetool_context_item_handler; } CLPEToolContext::CLPEToolContext(SPLPEToolContext* lpetoolcontext) : CPenContext(lpetoolcontext) { this->splpetoolcontext = lpetoolcontext; } -static void -sp_lpetool_context_init(SPLPEToolContext *lc) -{ +SPLPEToolContext::SPLPEToolContext() : SPPenContext() { + SPLPEToolContext* lc = this; + lc->clpetoolcontext = new CLPEToolContext(lc); delete lc->cpencontext; lc->cpencontext = lc->clpetoolcontext; lc->cdrawcontext = lc->clpetoolcontext; lc->ceventcontext = lc->clpetoolcontext; + lc->mode = Inkscape::LivePathEffect::BEND_PATH; + lc->shape_editor = 0; + lc->_lpetool_message_context = 0; + lc->cursor_shape = cursor_crosshairs_xpm; lc->hot_x = 7; lc->hot_y = 7; @@ -104,6 +108,12 @@ sp_lpetool_context_init(SPLPEToolContext *lc) } static void +sp_lpetool_context_init(SPLPEToolContext *lc) +{ + new (lc) SPLPEToolContext(); +} + +static void sp_lpetool_context_dispose(GObject *object) { SPLPEToolContext *lc = SP_LPETOOL_CONTEXT(object); @@ -263,7 +273,8 @@ gint CLPEToolContext::root_handler(GdkEvent* event) { if (sp_pen_context_has_waiting_LPE(lc)) { // quit when we are waiting for a LPE to be applied - ret = ((SPEventContextClass *) sp_lpetool_context_parent_class)->root_handler(event_context, event); + //ret = ((SPEventContextClass *) sp_lpetool_context_parent_class)->root_handler(event_context, event); + ret = event_context->ceventcontext->root_handler(event); return ret; } @@ -295,7 +306,8 @@ gint CLPEToolContext::root_handler(GdkEvent* event) { sp_pen_context_wait_for_LPE_mouse_clicks(lc, type, Inkscape::LivePathEffect::Effect::acceptsNumClicks(type)); // we pass the mouse click on to pen tool as the first click which it should collect - ret = ((SPEventContextClass *) sp_lpetool_context_parent_class)->root_handler(event_context, event); + //ret = ((SPEventContextClass *) sp_lpetool_context_parent_class)->root_handler(event_context, event); + ret = event_context->ceventcontext->root_handler(event); } break; |
