From 2bfff771506abafd54060c63e5bbc8ce4fe67af0 Mon Sep 17 00:00:00 2001 From: Nathan Lee <2431820-nathanal@users.noreply.gitlab.com> Date: Tue, 16 Apr 2019 01:56:42 +1000 Subject: Restore select toolbar lock button Connection to other code (e.g. drag selection, pasting width) restored (dropped in GtkAction migration). Fixes https://gitlab.com/inkscape/inkscape/issues/161 Fixes https://gitlab.com/inkscape/inkscape/issues/173 --- src/ui/toolbar/select-toolbar.cpp | 1 + src/widgets/desktop-widget.cpp | 3 +++ 2 files changed, 4 insertions(+) (limited to 'src') diff --git a/src/ui/toolbar/select-toolbar.cpp b/src/ui/toolbar/select-toolbar.cpp index ed0634d94..e405b914f 100644 --- a/src/ui/toolbar/select-toolbar.cpp +++ b/src/ui/toolbar/select-toolbar.cpp @@ -153,6 +153,7 @@ SelectToolbar::SelectToolbar(SPDesktop *desktop) : _lock_btn->set_tooltip_text(_("When locked, change both width and height by the same proportion")); _lock_btn->set_icon_name(INKSCAPE_ICON("object-unlocked")); _lock_btn->signal_toggled().connect(sigc::mem_fun(*this, &SelectToolbar::toggle_lock)); + set_data("lock", _lock_btn->gobj()); add(*_lock_btn); // height-value control diff --git a/src/widgets/desktop-widget.cpp b/src/widgets/desktop-widget.cpp index 6a021312f..7386f2fa5 100644 --- a/src/widgets/desktop-widget.cpp +++ b/src/widgets/desktop-widget.cpp @@ -1588,6 +1588,9 @@ SPDesktopWidget::isToolboxButtonActive (const gchar* id) } else if ( GTK_IS_TOGGLE_ACTION(thing) ) { GtkToggleAction* act = GTK_TOGGLE_ACTION(thing); isActive = gtk_toggle_action_get_active( act ) != 0; + } else if ( GTK_IS_TOGGLE_TOOL_BUTTON(thing) ) { + GtkToggleToolButton *b = GTK_TOGGLE_TOOL_BUTTON(thing); + isActive = gtk_toggle_tool_button_get_active( b ) != 0; } else { //g_message( "Item for {%s} is of an unsupported type", id ); } -- cgit v1.2.3