summaryrefslogtreecommitdiffstats
path: root/src/box3d-context.cpp
diff options
context:
space:
mode:
authorMarkus Engel <markus.engel@tum.de>2013-04-13 16:13:17 +0000
committerMarkus Engel <markus.engel@tum.de>2013-04-13 16:13:17 +0000
commitfbdc8b84ff670c684dafc7d7d403ed01e7077e70 (patch)
tree964a82e4e94d8d6602e90893ac51ac9e2f7ec362 /src/box3d-context.cpp
parentMade factory a template. (diff)
downloadinkscape-fbdc8b84ff670c684dafc7d7d403ed01e7077e70.tar.gz
inkscape-fbdc8b84ff670c684dafc7d7d403ed01e7077e70.zip
Replaced casting macros for EventContext tree; added contructors.
(bzr r11608.1.96)
Diffstat (limited to 'src/box3d-context.cpp')
-rw-r--r--src/box3d-context.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/box3d-context.cpp b/src/box3d-context.cpp
index a5b8c6e2f..5fee83bbb 100644
--- a/src/box3d-context.cpp
+++ b/src/box3d-context.cpp
@@ -64,6 +64,21 @@ static gint sp_box3d_context_item_handler(SPEventContext *event_context, SPItem
static void sp_box3d_drag(Box3DContext &bc, guint state);
static void sp_box3d_finish(Box3DContext *bc);
+
+#include "sp-factory.h"
+
+namespace {
+ SPEventContext* createBox3dContext() {
+ return new Box3DContext();
+ }
+
+ bool box3dContextRegistered = ToolFactory::instance().registerObject("/tools/shapes/3dbox", createBox3dContext);
+}
+
+const std::string& CBox3DContext::getPrefsPath() {
+ return Box3DContext::prefsPath;
+}
+
const std::string Box3DContext::prefsPath = "/tools/shapes/3dbox";
G_DEFINE_TYPE(Box3DContext, sp_box3d_context, SP_TYPE_EVENT_CONTEXT);
@@ -91,6 +106,7 @@ Box3DContext::Box3DContext() : SPEventContext() {
box3d_context->cbox3dcontext = new CBox3DContext(box3d_context);
delete box3d_context->ceventcontext;
box3d_context->ceventcontext = box3d_context->cbox3dcontext;
+ types.insert(typeid(Box3DContext));
box3d_context->_message_context = 0;