From 119759ca6d331bb8d527b0e271aac7023cc8726f Mon Sep 17 00:00:00 2001 From: Chris Toshok Date: Tue, 29 Apr 2003 21:33:46 +0000 Subject: [ for bug #41211 ] 2003-04-24 Chris Toshok [ for bug #41211 ] * e-gui-utils.h (e_button_new_with_stock_icon): add prototype. * e-gui-utils.c (e_button_new_with_stock_icon): new function, allow us to create a custom labeled button with a stock icon. svn path=/trunk/; revision=21022 --- e-util/ChangeLog | 9 +++++++++ e-util/e-gui-utils.c | 37 ++++++++++++++++++++++++++++++++++--- e-util/e-gui-utils.h | 6 +++++- 3 files changed, 48 insertions(+), 4 deletions(-) diff --git a/e-util/ChangeLog b/e-util/ChangeLog index d66bca35bf..47fb77a0f7 100644 --- a/e-util/ChangeLog +++ b/e-util/ChangeLog @@ -1,3 +1,12 @@ +2003-04-24 Chris Toshok + + [ for bug #41211 ] + + * e-gui-utils.h (e_button_new_with_stock_icon): add prototype. + + * e-gui-utils.c (e_button_new_with_stock_icon): new function, + allow us to create a custom labeled button with a stock icon. + 2003-04-28 Jeffrey Stedfast * e-host-utils.c: Added #include for the diff --git a/e-util/e-gui-utils.c b/e-util/e-gui-utils.c index f7c2e2a458..03f1dfa4c2 100644 --- a/e-util/e-gui-utils.c +++ b/e-util/e-gui-utils.c @@ -2,11 +2,12 @@ /* * GUI utility functions * - * Author: + * Authors: * Miguel de Icaza (miguel@ximian.com) + * Chris Toshok (toshok@ximian.com) * - * (C) 1999 Miguel de Icaza - * (C) 2000 Ximian, Inc. + * Copyright (C) 1999 Miguel de Icaza + * Copyright (C) 2000-2003 Ximian, Inc. */ #include @@ -15,6 +16,9 @@ #include #include #include +#include +#include +#include GtkWidget *e_create_image_widget(gchar *name, gchar *string1, gchar *string2, @@ -46,3 +50,30 @@ GtkWidget *e_create_image_widget(gchar *name, return alignment; } + +GtkWidget * +e_button_new_with_stock_icon (const char *label_str, const char *stockid) +{ + GtkWidget *button, *hbox, *label, *align, *image; + + button = gtk_button_new (); + + label = gtk_label_new_with_mnemonic (label_str); + + gtk_label_set_mnemonic_widget (GTK_LABEL (label), button); + + image = gtk_image_new_from_stock (stockid, GTK_ICON_SIZE_BUTTON); + hbox = gtk_hbox_new (FALSE, 2); + + align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0); + + gtk_box_pack_start (GTK_BOX (hbox), image, FALSE, FALSE, 0); + gtk_box_pack_end (GTK_BOX (hbox), label, FALSE, FALSE, 0); + + gtk_container_add (GTK_CONTAINER (button), align); + gtk_container_add (GTK_CONTAINER (align), hbox); + gtk_widget_show_all (align); + + return button; +} + diff --git a/e-util/e-gui-utils.h b/e-util/e-gui-utils.h index 9cbb64fbf6..1edb412733 100644 --- a/e-util/e-gui-utils.h +++ b/e-util/e-gui-utils.h @@ -2,7 +2,11 @@ #define E_GUI_UTILS_H #include +#include +#include -GtkWidget *e_create_image_widget (gchar *name, gchar *string1, gchar *string2, gint int1, gint int2); +GtkWidget *e_create_image_widget (gchar *name, gchar *string1, gchar *string2, gint int1, gint int2); + +GtkWidget *e_button_new_with_stock_icon (const char *label_str, const char *stockid); #endif /* E_GUI_UTILS_H */ -- cgit v1.2.3