From fbdc8b84ff670c684dafc7d7d403ed01e7077e70 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 13 Apr 2013 18:13:17 +0200 Subject: Replaced casting macros for EventContext tree; added contructors. (bzr r11608.1.96) --- src/spray-context.cpp | 32 ++++++++++++++------------------ 1 file changed, 14 insertions(+), 18 deletions(-) (limited to 'src/spray-context.cpp') diff --git a/src/spray-context.cpp b/src/spray-context.cpp index 7d4980355..bb9f05530 100644 --- a/src/spray-context.cpp +++ b/src/spray-context.cpp @@ -80,9 +80,19 @@ using namespace std; static void sp_spray_context_dispose(GObject *object); -static void sp_spray_context_setup(SPEventContext *ec); -static void sp_spray_context_set(SPEventContext *ec, Inkscape::Preferences::Entry *val); -static gint sp_spray_context_root_handler(SPEventContext *ec, GdkEvent *event); +#include "sp-factory.h" + +namespace { + SPEventContext* createSprayContext() { + return new SPSprayContext(); + } + + bool sprayContextRegistered = ToolFactory::instance().registerObject("/tools/spray", createSprayContext); +} + +const std::string& CSprayContext::getPrefsPath() { + return SPSprayContext::prefsPath; +} const std::string SPSprayContext::prefsPath = "/tools/spray"; @@ -145,6 +155,7 @@ SPSprayContext::SPSprayContext() : SPEventContext() { tc->cspraycontext = new CSprayContext(tc); delete tc->ceventcontext; tc->ceventcontext = tc->cspraycontext; + types.insert(typeid(SPSprayContext)); tc->usetilt = 0; tc->_message_context = 0; @@ -248,11 +259,6 @@ static void sp_spray_update_cursor(SPSprayContext *tc, bool /*with_shift*/) g_free(sel_message); } -static void sp_spray_context_setup(SPEventContext *ec) -{ - ec->ceventcontext->setup(); -} - void CSprayContext::setup() { SPEventContext* ec = this->speventcontext; @@ -307,11 +313,6 @@ void CSprayContext::setup() { } } -static void sp_spray_context_set(SPEventContext *ec, Inkscape::Preferences::Entry *val) -{ - ec->ceventcontext->set(val); -} - void CSprayContext::set(Inkscape::Preferences::Entry* val) { SPEventContext* ec = this->speventcontext; @@ -648,11 +649,6 @@ static void sp_spray_switch_mode(SPSprayContext *tc, gint mode, bool with_shift) sp_spray_update_cursor(tc, with_shift); } -gint sp_spray_context_root_handler(SPEventContext *event_context, GdkEvent *event) -{ - return event_context->ceventcontext->root_handler(event); -} - gint CSprayContext::root_handler(GdkEvent* event) { SPEventContext* event_context = this->speventcontext; -- cgit v1.2.3