summaryrefslogtreecommitdiffstats
path: root/src/ui/context-menu.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui/context-menu.cpp')
-rw-r--r--src/ui/context-menu.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/ui/context-menu.cpp b/src/ui/context-menu.cpp
index 9e5c65af9..d8d495b1e 100644
--- a/src/ui/context-menu.cpp
+++ b/src/ui/context-menu.cpp
@@ -25,6 +25,8 @@
#include "preferences.h"
#include "verbs.h"
+#include "selection-chemistry.h"
+
using Inkscape::DocumentUndo;
static void sp_object_type_menu(GType type, SPObject *object, SPDesktop *desktop, GtkMenu *menu);
@@ -90,6 +92,7 @@ static void sp_object_type_menu(GType type, SPObject *object, SPDesktop *desktop
static void sp_item_properties(GtkMenuItem *menuitem, SPItem *item);
static void sp_item_select_this(GtkMenuItem *menuitem, SPItem *item);
+static void sp_item_select_same_fill_stroke(GtkMenuItem *menuitem, SPItem *item);
static void sp_item_create_link(GtkMenuItem *menuitem, SPItem *item);
static void sp_set_mask(GtkMenuItem *menuitem, SPItem *item);
static void sp_release_mask(GtkMenuItem *menuitem, SPItem *item);
@@ -124,6 +127,12 @@ static void sp_item_menu(SPObject *object, SPDesktop *desktop, GtkMenu *m)
}
gtk_widget_show(w);
gtk_menu_shell_append(GTK_MENU_SHELL(m), w);
+ /* Select same fill and stroke */
+ w = gtk_menu_item_new_with_mnemonic(_("_Select Same Fill and Stroke"));
+ g_object_set_data(G_OBJECT(w), "desktop", desktop);
+ g_signal_connect(G_OBJECT(w), "activate", G_CALLBACK(sp_item_select_same_fill_stroke), item);
+ gtk_widget_show(w);
+ gtk_menu_shell_append(GTK_MENU_SHELL(m), w);
/* Create link */
w = gtk_menu_item_new_with_mnemonic(_("_Create Link"));
g_object_set_data(G_OBJECT(w), "desktop", desktop);
@@ -258,6 +267,16 @@ static void sp_item_select_this(GtkMenuItem *menuitem, SPItem *item)
sp_desktop_selection(desktop)->set(item);
}
+static void sp_item_select_same_fill_stroke(GtkMenuItem *menuitem, SPItem *item)
+{
+ SPDesktop *desktop;
+ desktop = (SPDesktop*)g_object_get_data(G_OBJECT(menuitem), "desktop");
+ g_return_if_fail(desktop != NULL);
+
+ sp_select_same_fill_stroke(desktop, true, true);
+}
+
+
static void sp_item_create_link(GtkMenuItem *menuitem, SPItem *item)
{
g_assert(SP_IS_ITEM(item));