summaryrefslogtreecommitdiffstats
path: root/src/pen-context.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/pen-context.cpp')
-rw-r--r--src/pen-context.cpp30
1 files changed, 20 insertions, 10 deletions
diff --git a/src/pen-context.cpp b/src/pen-context.cpp
index 2c045f8ad..333f9ef87 100644
--- a/src/pen-context.cpp
+++ b/src/pen-context.cpp
@@ -95,27 +95,29 @@ static void sp_pen_context_class_init(SPPenContextClass *klass)
object_class->dispose = sp_pen_context_dispose;
- event_context_class->setup = sp_pen_context_setup;
- event_context_class->finish = sp_pen_context_finish;
- event_context_class->set = sp_pen_context_set;
- event_context_class->root_handler = sp_pen_context_root_handler;
- event_context_class->item_handler = sp_pen_context_item_handler;
+// event_context_class->setup = sp_pen_context_setup;
+// event_context_class->finish = sp_pen_context_finish;
+// event_context_class->set = sp_pen_context_set;
+// event_context_class->root_handler = sp_pen_context_root_handler;
+// event_context_class->item_handler = sp_pen_context_item_handler;
}
CPenContext::CPenContext(SPPenContext* pencontext) : CDrawContext(pencontext) {
this->sppencontext = pencontext;
}
-/**
- * Callback to initialize SPPenContext object.
- */
-static void sp_pen_context_init(SPPenContext *pc)
-{
+SPPenContext::SPPenContext() : SPDrawContext() {
+ SPPenContext* pc = this;
+
pc->cpencontext = new CPenContext(pc);
delete pc->cdrawcontext;
pc->cdrawcontext = pc->cpencontext;
pc->ceventcontext = pc->cpencontext;
+ pc->polylines_only = false;
+ pc->polylines_paraxial = false;
+ pc->expecting_clicks_for_LPE = 0;
+
SPEventContext *event_context = SP_EVENT_CONTEXT(pc);
event_context->cursor_shape = cursor_pen_xpm;
@@ -139,6 +141,14 @@ static void sp_pen_context_init(SPPenContext *pc)
}
/**
+ * Callback to initialize SPPenContext object.
+ */
+static void sp_pen_context_init(SPPenContext *pc)
+{
+ new (pc) SPPenContext();
+}
+
+/**
* Callback to destroy the SPPenContext object's members and itself.
*/
static void sp_pen_context_dispose(GObject *object)