aboutsummaryrefslogtreecommitdiffstats
path: root/e-util/e-dialog-utils.c
diff options
context:
space:
mode:
authorJP Rosevear <jpr@ximian.com>2002-01-03 03:11:03 +0800
committerJP Rosevear <jpr@src.gnome.org>2002-01-03 03:11:03 +0800
commit178c7af85fac11d8ae0c4bf5c4ae2396731396e9 (patch)
tree88527bee1142a8f70932397fdb7b8f361428bb5e /e-util/e-dialog-utils.c
parent5df4d0a321a1890780f43c715681176c64f01594 (diff)
downloadgsoc2013-evolution-178c7af85fac11d8ae0c4bf5c4ae2396731396e9.tar.gz
gsoc2013-evolution-178c7af85fac11d8ae0c4bf5c4ae2396731396e9.tar.zst
gsoc2013-evolution-178c7af85fac11d8ae0c4bf5c4ae2396731396e9.zip
remove e_gnome_dialog util functions and use e-util ones instead
2002-01-02 JP Rosevear <jpr@ximian.com> * mail-callbacks.c: remove e_gnome_dialog util functions and use e-util ones instead 2002-01-02 JP Rosevear <jpr@ximian.com> * e-dialog-utils.c (e_gnome_dialog_set_parent): util function moved from mail-callbacks, also destroys the dialog if the parent is destroyed (e_gnome_warning_dialog_parented): similarly (e_gnome_ok_cancel_dialog_parented): ditto * e-dialog-utils.h: new protos svn path=/trunk/; revision=15225
Diffstat (limited to 'e-util/e-dialog-utils.c')
-rw-r--r--e-util/e-dialog-utils.c42
1 files changed, 42 insertions, 0 deletions
diff --git a/e-util/e-dialog-utils.c b/e-util/e-dialog-utils.c
index 45a57d42fc..f155b83145 100644
--- a/e-util/e-dialog-utils.c
+++ b/e-util/e-dialog-utils.c
@@ -32,6 +32,8 @@
#include <gtk/gtksignal.h>
+#include <libgnomeui/gnome-dialog-util.h>
+
#include <bonobo/bonobo-control.h>
#include <bonobo/bonobo-property-bag.h>
@@ -162,3 +164,43 @@ e_set_dialog_parent_from_xid (GtkWindow *dialog,
set_transient_for_gdk (dialog, gdk_window_foreign_new (xid));
}
+
+static void
+e_gnome_dialog_parent_destroyed (GtkWidget *parent, GtkWidget *dialog)
+{
+ gnome_dialog_close (GNOME_DIALOG (dialog));
+}
+
+void
+e_gnome_dialog_set_parent (GnomeDialog *dialog, GtkWindow *parent)
+{
+ gnome_dialog_set_parent (dialog, parent);
+ gtk_signal_connect_while_alive (GTK_OBJECT (parent), "destroy",
+ e_gnome_dialog_parent_destroyed,
+ dialog, GTK_OBJECT (dialog));
+}
+
+GtkWidget *
+e_gnome_warning_dialog_parented (const char *warning, GtkWindow *parent)
+{
+ GtkWidget *dialog;
+
+ dialog = gnome_warning_dialog_parented (warning, parent);
+ gtk_signal_connect (GTK_OBJECT (parent), "destroy",
+ e_gnome_dialog_parent_destroyed, dialog);
+
+ return dialog;
+}
+
+GtkWidget *
+e_gnome_ok_cancel_dialog_parented (const char *message, GnomeReplyCallback callback,
+ gpointer data, GtkWindow *parent)
+{
+ GtkWidget *dialog;
+
+ dialog = gnome_ok_cancel_dialog_parented (message, callback, data, parent);
+ gtk_signal_connect (GTK_OBJECT (parent), "destroy",
+ e_gnome_dialog_parent_destroyed, dialog);
+
+ return dialog;
+}