diff options
| author | bulia byak <buliabyak@gmail.com> | 2006-03-27 23:27:14 +0000 |
|---|---|---|
| committer | buliabyak <buliabyak@users.sourceforge.net> | 2006-03-27 23:27:14 +0000 |
| commit | 771b447a0a3066b4cef82f51e18abdb4c8d8f155 (patch) | |
| tree | 412736dd7407fed16a9c43abc7d3d3b63e64c65e /src/widgets/select-toolbar.cpp | |
| parent | obey scale ratio lock (diff) | |
| download | inkscape-771b447a0a3066b4cef82f51e18abdb4c8d8f155.tar.gz inkscape-771b447a0a3066b4cef82f51e18abdb4c8d8f155.zip | |
fix 1367204
(bzr r312)
Diffstat (limited to 'src/widgets/select-toolbar.cpp')
| -rw-r--r-- | src/widgets/select-toolbar.cpp | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/src/widgets/select-toolbar.cpp b/src/widgets/select-toolbar.cpp index 4230c7adb..0e2f25ab3 100644 --- a/src/widgets/select-toolbar.cpp +++ b/src/widgets/select-toolbar.cpp @@ -20,6 +20,8 @@ #include "widgets/spw-utilities.h" #include "widgets/widget-sizes.h" #include "widgets/spinbutton-events.h" +#include "widgets/icon.h" +#include "widgets/sp-widget.h" #include "prefs-utils.h" #include "selection-chemistry.h" @@ -31,10 +33,8 @@ #include "sp-namedview.h" #include "toolbox.h" #include <glibmm/i18n.h> -#include "widgets/sp-widget.h" #include "helper/unit-menu.h" #include "helper/units.h" -#include "widgets/sp-widget.h" #include "inkscape.h" #include "verbs.h" #include "prefs-utils.h" @@ -370,6 +370,22 @@ static void toggle_pattern (GtkWidget *button, gpointer data) { } } +static void toggle_lock (GtkWidget *button, gpointer data) { + + GtkWidget *old_child = gtk_bin_get_child(GTK_BIN(button)); + gtk_container_remove (GTK_CONTAINER(button), old_child); + + if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (button))) { + GtkWidget *child = sp_icon_new (GTK_ICON_SIZE_MENU, "width_height_lock"); + gtk_widget_show (child); + gtk_container_add (GTK_CONTAINER (button), child); + } else { + GtkWidget *child = sp_icon_new (GTK_ICON_SIZE_MENU, "lock_unlocked"); + gtk_widget_show (child); + gtk_container_add (GTK_CONTAINER (button), child); + } +} + GtkWidget * sp_select_toolbox_new(SPDesktop *desktop) { @@ -432,12 +448,13 @@ sp_select_toolbox_new(SPDesktop *desktop) GtkWidget *lock = sp_button_new_from_data( GTK_ICON_SIZE_MENU, SP_BUTTON_TYPE_TOGGLE, NULL, - "width_height_lock", - _("Change both width and height by the same proportion"), + "lock_unlocked", + _("When locked, change both width and height by the same proportion"), tt); gtk_box_pack_start(GTK_BOX(lockbox), lock, TRUE, FALSE, 0); gtk_box_pack_start(GTK_BOX(vb), lockbox, FALSE, FALSE, 0); gtk_object_set_data(GTK_OBJECT(spw), "lock", lock); + g_signal_connect_after (G_OBJECT (lock), "clicked", G_CALLBACK (toggle_lock), desktop); gtk_container_add(GTK_CONTAINER(vb), //TRANSLATORS: only translate "string" in "context|string". |
