From 458da60f5bea195b68c4dad5f9b5055572fc39b3 Mon Sep 17 00:00:00 2001 From: Tavmjong Bah Date: Mon, 8 Jan 2018 14:10:34 +0100 Subject: Restore ability to switch mode while using spray tool (is this even useful?). --- src/widgets/desktop-widget.cpp | 6 +++++- src/widgets/spray-toolbar.cpp | 3 ++- 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/widgets/desktop-widget.cpp b/src/widgets/desktop-widget.cpp index 0f5d8b973..fd5fd5de6 100644 --- a/src/widgets/desktop-widget.cpp +++ b/src/widgets/desktop-widget.cpp @@ -49,6 +49,7 @@ #include "ui/dialog/swatches.h" #include "ui/icon-names.h" #include "ui/widget/dock.h" +#include "ui/widget/ink-select-one-action.h" #include "ui/widget/layer-selector.h" #include "ui/widget/selected-style.h" #include "ui/uxmanager.h" @@ -1557,9 +1558,12 @@ void SPDesktopWidget::setToolboxSelectOneValue (gchar const *id, int value) { gpointer hb = sp_search_by_data_recursive(aux_toolbox, (gpointer) id); - if (hb) { + if (IS_EGE_SELECT_ONE_ACTION(hb)) { ege_select_one_action_set_active(EGE_SELECT_ONE_ACTION(hb), value); } + if (static_cast(hb)) { + static_cast(hb)->set_active( value ); + } } diff --git a/src/widgets/spray-toolbar.cpp b/src/widgets/spray-toolbar.cpp index 140c60ef6..37b529482 100644 --- a/src/widgets/spray-toolbar.cpp +++ b/src/widgets/spray-toolbar.cpp @@ -162,7 +162,7 @@ static void sp_spray_standard_deviation_value_changed( GtkAdjustment *adj, GObje gtk_adjustment_get_value(adj)); } -static void sp_spray_mode_changed( GObject * tbl, int mode ) +static void sp_spray_mode_changed( GObject *tbl, int mode ) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setInt("/tools/spray/mode", mode); @@ -397,6 +397,7 @@ void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj act->set_active( mode ); gtk_action_group_add_action( mainActions, GTK_ACTION( act->gobj() )); + g_object_set_data( holder, "spray_tool_mode", act ); act->signal_changed().connect(sigc::bind<0>(sigc::ptr_fun(&sp_spray_mode_changed), holder)); } -- cgit v1.2.3