summaryrefslogtreecommitdiff
path: root/gtk/gtkimagemenuitem.c
diff options
context:
space:
mode:
Diffstat (limited to 'gtk/gtkimagemenuitem.c')
-rw-r--r--gtk/gtkimagemenuitem.c32
1 files changed, 32 insertions, 0 deletions
diff --git a/gtk/gtkimagemenuitem.c b/gtk/gtkimagemenuitem.c
index e56f26b05f..68c020407f 100644
--- a/gtk/gtkimagemenuitem.c
+++ b/gtk/gtkimagemenuitem.c
@@ -353,6 +353,38 @@ gtk_image_menu_item_new_with_label (const gchar *label)
return GTK_WIDGET(image_menu_item);
}
+
+/**
+ * gtk_image_menu_item_new_with_mnemonic:
+ * @label: The text of the button, with an underscore in front of the
+ * mnemonic character
+ * @returns: a new #GtkImageMenuItem
+ *
+ * Creates a new #GtkImageMenuItem containing a label. The label
+ * will be created using gtk_label_new_with_mnemonic(), so underscores
+ * in @label indicate the mnemonic for the menu item.
+ **/
+GtkWidget*
+gtk_image_menu_item_new_with_mnemonic (const gchar *label)
+{
+ GtkImageMenuItem *image_menu_item;
+ GtkWidget *accel_label;
+
+ image_menu_item = GTK_IMAGE_MENU_ITEM (g_object_new (GTK_TYPE_IMAGE_MENU_ITEM,
+ NULL));
+
+ accel_label = gtk_type_new (GTK_TYPE_ACCEL_LABEL);
+ gtk_label_set_text_with_mnemonic (GTK_LABEL (accel_label), label);
+ gtk_misc_set_alignment (GTK_MISC (accel_label), 0.0, 0.5);
+
+ gtk_container_add (GTK_CONTAINER (image_menu_item), accel_label);
+ gtk_accel_label_set_accel_widget (GTK_ACCEL_LABEL (accel_label),
+ GTK_WIDGET (image_menu_item));
+ gtk_widget_show (accel_label);
+
+ return GTK_WIDGET(image_menu_item);
+}
+
GtkWidget*
gtk_image_menu_item_new_from_stock (const gchar *stock_id,
GtkAccelGroup *accel_group)