From a020c2bd2ff5b6f417fb836c3b461ca7aaa915f2 Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Mon, 25 Mar 2002 19:33:20 +0000 Subject: Added widgets/e-option-menu.lo. 2002-03-25 Christopher James Lahey * gal/Makefile.am (libgal_la_LIBADD): Added widgets/e-option-menu.lo. * gal/util/e-util.c, gal/util/e-util.h (e_strdupv): Copied this function from glib2. (GET_STRING_ARRAY_FROM_ELLIPSIS, GET_DUPLICATED_STRING_ARRAY_FROM_ELLIPSIS): Added these macros to automate getting a NULL terminated array off of the stack. * gal/widgets/Makefile.am (libwidgets_la_SOURCES): Added e-option-menu.c. (libwidgetsinclude_HEADERS): Added e-option-menu.h. * gal/widgets/e-canvas.c (e_canvas_class_init): Reformatted this function. * gal/widgets/e-gui-utils.c, gal/widgets/e-gui-utils.h (e_glade_xml_connect_widget, e_glade_xml_set_sensitive): Two new functions to automate pulling a widget from a GladeXML and either connecting a signal or setting the sensitivity. * gal/widgets/e-option-menu.c, gal/widgets/e-option-menu.h: New class to simplify the interface to GtkOptionMenu. svn path=/trunk/; revision=16246 --- widgets/misc/e-gui-utils.c | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'widgets/misc/e-gui-utils.c') diff --git a/widgets/misc/e-gui-utils.c b/widgets/misc/e-gui-utils.c index 122d0a86d9..d70bb829a6 100644 --- a/widgets/misc/e-gui-utils.c +++ b/widgets/misc/e-gui-utils.c @@ -229,3 +229,34 @@ e_container_focus_nth_entry(GtkContainer *container, int n) if (data.widget) gtk_widget_grab_focus(data.widget); } + +gboolean +e_glade_xml_connect_widget (GladeXML *gui, char *name, char *signal, GtkSignalFunc cb, gpointer closure) +{ + GtkWidget *widget; + + widget = glade_xml_get_widget (gui, name); + + if (widget) { + gtk_signal_connect (GTK_OBJECT (widget), signal, + cb, closure); + return TRUE; + } + + return FALSE; +} + +gboolean +e_glade_xml_set_sensitive (GladeXML *gui, char *name, gboolean sensitive) +{ + GtkWidget *widget; + + widget = glade_xml_get_widget (gui, name); + + if (widget) { + gtk_widget_set_sensitive (widget, sensitive); + return TRUE; + } + + return FALSE; +} -- cgit