diff options
author | Alexander Larsson <alexl@redhat.com> | 2001-03-21 08:56:25 +0000 |
---|---|---|
committer | Alexander Larsson <alexl@src.gnome.org> | 2001-03-21 08:56:25 +0000 |
commit | a24e9b107402d29e8aa3e2fc3c73652e7d3b6575 (patch) | |
tree | 8a3f95f35b8b2950cbafeb6fd309503ad3c73537 | |
parent | 23d5d5291227658df8f1a7d3a1d3b441d9e19bdd (diff) | |
download | gtk+-a24e9b107402d29e8aa3e2fc3c73652e7d3b6575.tar.gz |
Add gtk_image_menu_item_new_from_stock()
2001-03-21 Alexander Larsson <alexl@redhat.com>
* gtk/gtkimagemenuitem.[c]:
Add gtk_image_menu_item_new_from_stock()
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | ChangeLog.pre-2-0 | 5 | ||||
-rw-r--r-- | ChangeLog.pre-2-10 | 5 | ||||
-rw-r--r-- | ChangeLog.pre-2-2 | 5 | ||||
-rw-r--r-- | ChangeLog.pre-2-4 | 5 | ||||
-rw-r--r-- | ChangeLog.pre-2-6 | 5 | ||||
-rw-r--r-- | ChangeLog.pre-2-8 | 5 | ||||
-rw-r--r-- | gtk/gtkimagemenuitem.c | 34 | ||||
-rw-r--r-- | gtk/gtkimagemenuitem.h | 14 |
9 files changed, 77 insertions, 6 deletions
@@ -1,3 +1,8 @@ +2001-03-21 Alexander Larsson <alexl@redhat.com> + + * gtk/gtkimagemenuitem.[c]: + Add gtk_image_menu_item_new_from_stock() + Tue Mar 20 15:00:43 2001 Jonathan Blandford <jrb@webwynk.net> * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index 4173a1618d..117403a328 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,3 +1,8 @@ +2001-03-21 Alexander Larsson <alexl@redhat.com> + + * gtk/gtkimagemenuitem.[c]: + Add gtk_image_menu_item_new_from_stock() + Tue Mar 20 15:00:43 2001 Jonathan Blandford <jrb@webwynk.net> * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 4173a1618d..117403a328 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,8 @@ +2001-03-21 Alexander Larsson <alexl@redhat.com> + + * gtk/gtkimagemenuitem.[c]: + Add gtk_image_menu_item_new_from_stock() + Tue Mar 20 15:00:43 2001 Jonathan Blandford <jrb@webwynk.net> * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index 4173a1618d..117403a328 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,8 @@ +2001-03-21 Alexander Larsson <alexl@redhat.com> + + * gtk/gtkimagemenuitem.[c]: + Add gtk_image_menu_item_new_from_stock() + Tue Mar 20 15:00:43 2001 Jonathan Blandford <jrb@webwynk.net> * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 4173a1618d..117403a328 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,8 @@ +2001-03-21 Alexander Larsson <alexl@redhat.com> + + * gtk/gtkimagemenuitem.[c]: + Add gtk_image_menu_item_new_from_stock() + Tue Mar 20 15:00:43 2001 Jonathan Blandford <jrb@webwynk.net> * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 4173a1618d..117403a328 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,8 @@ +2001-03-21 Alexander Larsson <alexl@redhat.com> + + * gtk/gtkimagemenuitem.[c]: + Add gtk_image_menu_item_new_from_stock() + Tue Mar 20 15:00:43 2001 Jonathan Blandford <jrb@webwynk.net> * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 4173a1618d..117403a328 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,8 @@ +2001-03-21 Alexander Larsson <alexl@redhat.com> + + * gtk/gtkimagemenuitem.[c]: + Add gtk_image_menu_item_new_from_stock() + Tue Mar 20 15:00:43 2001 Jonathan Blandford <jrb@webwynk.net> * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): diff --git a/gtk/gtkimagemenuitem.c b/gtk/gtkimagemenuitem.c index 228e8c111c..51dad6cd83 100644 --- a/gtk/gtkimagemenuitem.c +++ b/gtk/gtkimagemenuitem.c @@ -28,6 +28,9 @@ #include "gtkaccellabel.h" #include "gtksignal.h" #include "gtkintl.h" +#include "gtkstock.h" +#include "gtkiconfactory.h" +#include "gtkimage.h" static void gtk_image_menu_item_class_init (GtkImageMenuItemClass *klass); static void gtk_image_menu_item_init (GtkImageMenuItem *image_menu_item); @@ -359,6 +362,37 @@ gtk_image_menu_item_new (GtkWidget *widget, return GTK_WIDGET(image_menu_item); } +GtkWidget* +gtk_image_menu_item_new_from_stock (const gchar *stock_id, + GtkAccelGroup *accel_group) +{ + GtkWidget *image; + GtkStockItem stock_item; + GtkWidget *item; + + g_return_val_if_fail (stock_id != NULL, NULL); + + image = gtk_image_new_from_stock (stock_id, GTK_ICON_SIZE_MENU); + + if (gtk_stock_lookup (stock_id, &stock_item)) + { + item = gtk_image_menu_item_new (image, stock_item.label); + + if (stock_item.keyval && accel_group) + gtk_widget_add_accelerator (item, + "activate", + accel_group, + stock_item.keyval, + stock_item.modifier, + GTK_ACCEL_VISIBLE); + } + else + item = gtk_image_menu_item_new (image, stock_id); + + gtk_widget_show (image); + return item; +} + void gtk_image_menu_item_add_image (GtkImageMenuItem *image_menu_item, GtkWidget *child) diff --git a/gtk/gtkimagemenuitem.h b/gtk/gtkimagemenuitem.h index 50be055b17..714bcf76cc 100644 --- a/gtk/gtkimagemenuitem.h +++ b/gtk/gtkimagemenuitem.h @@ -62,12 +62,14 @@ struct _GtkImageMenuItemClass }; -GtkType gtk_image_menu_item_get_type (void) G_GNUC_CONST; -GtkWidget* gtk_image_menu_item_new (GtkWidget *widget, - const gchar *label); -void gtk_image_menu_item_add_image (GtkImageMenuItem *image_menu_item, - GtkWidget *child); -GtkWidget* gtk_image_menu_item_get_image (GtkImageMenuItem *image_menu_item); +GtkType gtk_image_menu_item_get_type (void) G_GNUC_CONST; +GtkWidget* gtk_image_menu_item_new (GtkWidget *widget, + const gchar *label); +GtkWidget* gtk_image_menu_item_new_from_stock (const gchar *stock_id, + GtkAccelGroup *accel_group); +void gtk_image_menu_item_add_image (GtkImageMenuItem *image_menu_item, + GtkWidget *child); +GtkWidget* gtk_image_menu_item_get_image (GtkImageMenuItem *image_menu_item); #ifdef __cplusplus } |