summaryrefslogtreecommitdiffstats
path: root/src/ui/context-menu.cpp
diff options
context:
space:
mode:
authorNicolas Dufour <nicoduf@yahoo.fr>2010-10-19 17:01:11 +0000
committerJazzyNico <nicoduf@yahoo.fr>2010-10-19 17:01:11 +0000
commit78837a8959c79864102f9d36058b50b1dbf840b7 (patch)
tree74011865e0b5947d4ec98f7b1efc2d0f592657c4 /src/ui/context-menu.cpp
parentUnified and cleaned up locating icc profiles, including adding missing OS X l... (diff)
downloadinkscape-78837a8959c79864102f9d36058b50b1dbf840b7.tar.gz
inkscape-78837a8959c79864102f9d36058b50b1dbf840b7.zip
Context menu. Fix for Bug #170806 (Add Fill&stroke to right-click menu for texts).
Fixed bugs: - https://launchpad.net/bugs/170806 (bzr r9835)
Diffstat (limited to 'src/ui/context-menu.cpp')
-rw-r--r--src/ui/context-menu.cpp37
1 files changed, 30 insertions, 7 deletions
diff --git a/src/ui/context-menu.cpp b/src/ui/context-menu.cpp
index 98ad9dc7b..43de518c6 100644
--- a/src/ui/context-menu.cpp
+++ b/src/ui/context-menu.cpp
@@ -46,6 +46,7 @@ sp_object_menu(SPObject *object, SPDesktop *desktop, GtkMenu *menu)
#include "sp-anchor.h"
#include "sp-image.h"
+#include "sp-text.h"
#include "document.h"
#include "desktop-handles.h"
@@ -64,6 +65,7 @@ static void sp_group_menu(SPObject *object, SPDesktop *desktop, GtkMenu *menu);
static void sp_anchor_menu(SPObject *object, SPDesktop *desktop, GtkMenu *menu);
static void sp_image_menu(SPObject *object, SPDesktop *desktop, GtkMenu *menu);
static void sp_shape_menu(SPObject *object, SPDesktop *desktop, GtkMenu *menu);
+static void sp_text_menu(SPObject *object, SPDesktop *desktop, GtkMenu *menu);
static void
sp_object_type_menu(GType type, SPObject *object, SPDesktop *desktop, GtkMenu *menu)
@@ -77,6 +79,7 @@ sp_object_type_menu(GType type, SPObject *object, SPDesktop *desktop, GtkMenu *m
g_hash_table_insert(t2m, GUINT_TO_POINTER(SP_TYPE_ANCHOR), (void*)sp_anchor_menu);
g_hash_table_insert(t2m, GUINT_TO_POINTER(SP_TYPE_IMAGE), (void*)sp_image_menu);
g_hash_table_insert(t2m, GUINT_TO_POINTER(SP_TYPE_SHAPE), (void*)sp_shape_menu);
+ g_hash_table_insert(t2m, GUINT_TO_POINTER(SP_TYPE_TEXT), (void*)sp_text_menu);
}
handler = (void (*)(SPObject*, SPDesktop*, GtkMenu*))g_hash_table_lookup(t2m, GUINT_TO_POINTER(type));
if (handler) handler(object, desktop, menu);
@@ -102,7 +105,7 @@ sp_item_menu(SPObject *object, SPDesktop *desktop, GtkMenu *m)
item = (SPItem *) object;
/* Item dialog */
- w = gtk_menu_item_new_with_mnemonic(_("Object _Properties"));
+ w = gtk_menu_item_new_with_mnemonic(_("_Object Properties..."));
gtk_object_set_data(GTK_OBJECT(w), "desktop", desktop);
gtk_signal_connect(GTK_OBJECT(w), "activate", GTK_SIGNAL_FUNC(sp_item_properties), item);
gtk_widget_show(w);
@@ -343,7 +346,7 @@ sp_anchor_menu(SPObject *object, SPDesktop *desktop, GtkMenu *m)
item = (SPItem *) object;
/* Link dialog */
- w = gtk_menu_item_new_with_mnemonic(_("Link _Properties"));
+ w = gtk_menu_item_new_with_mnemonic(_("Link _Properties..."));
gtk_object_set_data(GTK_OBJECT(w), "desktop", desktop);
gtk_signal_connect(GTK_OBJECT(w), "activate", GTK_SIGNAL_FUNC(sp_anchor_link_properties), item);
gtk_widget_show(w);
@@ -402,7 +405,7 @@ sp_image_menu(SPObject *object, SPDesktop *desktop, GtkMenu *m)
GtkWidget *w;
/* Link dialog */
- w = gtk_menu_item_new_with_mnemonic(_("Image _Properties"));
+ w = gtk_menu_item_new_with_mnemonic(_("Image _Properties..."));
gtk_object_set_data(GTK_OBJECT(w), "desktop", desktop);
gtk_signal_connect(GTK_OBJECT(w), "activate", GTK_SIGNAL_FUNC(sp_image_image_properties), item);
gtk_widget_show(w);
@@ -473,10 +476,10 @@ static void sp_image_image_edit(GtkMenuItem *menuitem, SPAnchor *anchor)
g_free(editorBin);
}
-/* SPShape */
+/* Fill and Stroke entry */
static void
-sp_shape_fill_settings(GtkMenuItem *menuitem, SPItem *item)
+sp_fill_settings(GtkMenuItem *menuitem, SPItem *item)
{
SPDesktop *desktop;
@@ -492,6 +495,8 @@ sp_shape_fill_settings(GtkMenuItem *menuitem, SPItem *item)
desktop->_dlg_mgr->showDialog("FillAndStroke");
}
+/* SPShape */
+
static void
sp_shape_menu(SPObject *object, SPDesktop *desktop, GtkMenu *m)
{
@@ -501,14 +506,32 @@ sp_shape_menu(SPObject *object, SPDesktop *desktop, GtkMenu *m)
item = (SPItem *) object;
/* Item dialog */
- w = gtk_menu_item_new_with_mnemonic(_("_Fill and Stroke"));
+ w = gtk_menu_item_new_with_mnemonic(_("_Fill and Stroke..."));
gtk_object_set_data(GTK_OBJECT(w), "desktop", desktop);
- gtk_signal_connect(GTK_OBJECT(w), "activate", GTK_SIGNAL_FUNC(sp_shape_fill_settings), item);
+ gtk_signal_connect(GTK_OBJECT(w), "activate", GTK_SIGNAL_FUNC(sp_fill_settings), item);
gtk_widget_show(w);
gtk_menu_append(GTK_MENU(m), w);
}
+/* SPText */
+
+static void
+sp_text_menu(SPObject *object, SPDesktop *desktop, GtkMenu *m)
+{
+ SPItem *item;
+ GtkWidget *w;
+ item = (SPItem *) object;
+
+ /* Fill and Stroke dialog */
+ w = gtk_menu_item_new_with_mnemonic(_("_Fill and Stroke..."));
+ gtk_object_set_data(GTK_OBJECT(w), "desktop", desktop);
+ gtk_signal_connect(GTK_OBJECT(w), "activate", GTK_SIGNAL_FUNC(sp_fill_settings), item);
+ gtk_widget_show(w);
+ gtk_menu_append(GTK_MENU(m), w);
+
+
+}
/*
Local Variables:
mode:c++