/*
** 1999-03-13 -	Header for the new (and, hopefully, improved) dialog module. The old was
**		getting long in the tooth. Sounds scary.
*/

typedef struct _Dialog	Dialog;

#define	DLG_POSITIVE	(0U)

typedef void	(*DlgFunc)(Dialog *dlg, guint button, gpointer user);

Dialog *	dlg_dialog(GtkWidget *body, const gchar *title, const gchar *buttons, DlgFunc func, gpointer user);
Dialog *	dlg_dialog_hidden(GtkWidget *body, const gchar *title, const gchar *buttons, DlgFunc func, gpointer user);
Dialog *	dlg_dialog_simple(const gchar *body, const gchar *title, const gchar *buttons, DlgFunc func, gpointer user);
Dialog *	dlg_dialog_error(const gchar *msg);

void		dlg_dialog_hide(Dialog *dlg);
void		dlg_dialog_set_keep(Dialog *dlg, gboolean keep);
void		dlg_dialog_set_size(Dialog *dlg, gint width, gint height);
void		dlg_dialog_close_left(Dialog *dlg);
void		dlg_dialog_close_right(Dialog *dlg);
void		dlg_dialog_destroy(Dialog *dlg);

guint		dlg_dialog_wait(Dialog *dlg);
guint		dlg_dialog_simple_wait(const gchar *body, const gchar *title, const gchar *buttons);
