diff options
| author | Markus Engel <markus.engel@tum.de> | 2013-04-13 16:13:17 +0000 |
|---|---|---|
| committer | Markus Engel <markus.engel@tum.de> | 2013-04-13 16:13:17 +0000 |
| commit | fbdc8b84ff670c684dafc7d7d403ed01e7077e70 (patch) | |
| tree | 964a82e4e94d8d6602e90893ac51ac9e2f7ec362 /src/spiral-context.cpp | |
| parent | Made factory a template. (diff) | |
| download | inkscape-fbdc8b84ff670c684dafc7d7d403ed01e7077e70.tar.gz inkscape-fbdc8b84ff670c684dafc7d7d403ed01e7077e70.zip | |
Replaced casting macros for EventContext tree; added contructors.
(bzr r11608.1.96)
Diffstat (limited to 'src/spiral-context.cpp')
| -rw-r--r-- | src/spiral-context.cpp | 43 |
1 files changed, 15 insertions, 28 deletions
diff --git a/src/spiral-context.cpp b/src/spiral-context.cpp index 7e3aed1b9..2f171ddde 100644 --- a/src/spiral-context.cpp +++ b/src/spiral-context.cpp @@ -47,16 +47,25 @@ using Inkscape::DocumentUndo; static void sp_spiral_context_dispose(GObject *object); -static void sp_spiral_context_setup(SPEventContext *ec); -static void sp_spiral_context_finish(SPEventContext *ec); -static void sp_spiral_context_set(SPEventContext *ec, Inkscape::Preferences::Entry *val); - -static gint sp_spiral_context_root_handler(SPEventContext *event_context, GdkEvent *event); static void sp_spiral_drag(SPSpiralContext *sc, Geom::Point const &p, guint state); static void sp_spiral_finish(SPSpiralContext *sc); static void sp_spiral_cancel(SPSpiralContext *sc); +#include "sp-factory.h" + +namespace { + SPEventContext* createSpiralContext() { + return new SPSpiralContext(); + } + + bool spiralContextRegistered = ToolFactory::instance().registerObject("/tools/shapes/spiral", createSpiralContext); +} + +const std::string& CSpiralContext::getPrefsPath() { + return SPSpiralContext::prefsPath; +} + const std::string SPSpiralContext::prefsPath = "/tools/shapes/spiral"; G_DEFINE_TYPE(SPSpiralContext, sp_spiral_context, SP_TYPE_EVENT_CONTEXT); @@ -85,6 +94,7 @@ SPSpiralContext::SPSpiralContext() : SPEventContext() { spiral_context->cspiralcontext = new CSpiralContext(spiral_context); delete spiral_context->ceventcontext; spiral_context->ceventcontext = spiral_context->cspiralcontext; + types.insert(typeid(SPSpiralContext)); spiral_context->_message_context = 0; @@ -114,11 +124,6 @@ sp_spiral_context_init(SPSpiralContext *spiral_context) new (spiral_context) SPSpiralContext(); } -static void sp_spiral_context_finish(SPEventContext *ec) -{ - ec->ceventcontext->finish(); -} - void CSpiralContext::finish() { SPEventContext* ec = this->speventcontext; @@ -173,12 +178,6 @@ static void sp_spiral_context_selection_changed(Inkscape::Selection *selection, ec->shape_editor->set_item(item, SH_KNOTHOLDER); } -static void -sp_spiral_context_setup(SPEventContext *ec) -{ - ec->ceventcontext->setup(); -} - void CSpiralContext::setup() { SPEventContext* ec = this->speventcontext; @@ -214,12 +213,6 @@ void CSpiralContext::setup() { sc->_message_context = new Inkscape::MessageContext((ec->desktop)->messageStack()); } -static void -sp_spiral_context_set(SPEventContext *ec, Inkscape::Preferences::Entry *val) -{ - ec->ceventcontext->set(val); -} - void CSpiralContext::set(Inkscape::Preferences::Entry* val) { SPEventContext* ec = this->speventcontext; @@ -235,12 +228,6 @@ void CSpiralContext::set(Inkscape::Preferences::Entry* val) { } } -static gint -sp_spiral_context_root_handler(SPEventContext *event_context, GdkEvent *event) -{ - return event_context->ceventcontext->root_handler(event); -} - gint CSpiralContext::root_handler(GdkEvent* event) { SPEventContext* event_context = this->speventcontext; |
