3 #include <libgnome/gnome-macros.h>
4 #include "gpdf-hig-dialog.h"
7 GNOME_CLASS_BOILERPLATE (GpdfHigDialog,
13 gpdf_hig_dialog_class_init (GpdfHigDialogClass *klass)
18 gpdf_hig_dialog_instance_init (GpdfHigDialog *dlg)
24 gpdf_hig_dialog_new (const char *stock_id, const char *header, const char *body, gboolean modal)
35 g_return_val_if_fail (stock_id != NULL, NULL);
36 g_return_val_if_fail (header != NULL, NULL);
38 dlg = gtk_widget_new (GPDF_TYPE_HIG_DIALOG,
41 "has-separator", FALSE,
46 hbox = gtk_widget_new (GTK_TYPE_HBOX,
52 image = gtk_widget_new (GTK_TYPE_IMAGE,
54 "icon-size", GTK_ICON_SIZE_DIALOG,
57 gtk_container_add (GTK_CONTAINER (hbox), image);
60 header_len = strlen (header);
61 body_len = body ? strlen (body) : 0;
62 message_len = header_len + body_len + 64;
64 message = g_new0 (char, message_len);
67 g_snprintf (message, message_len,
68 "<span weight=\"bold\" size=\"larger\">%s</span>\n\n%s", header, body);
71 g_snprintf (message, message_len,
72 "<span weight=\"bold\" size=\"larger\">%s</span>\n", header);
75 label = gtk_label_new (message);
76 g_object_set (G_OBJECT (label),
82 gtk_container_add (GTK_CONTAINER (hbox), label);
83 gtk_widget_show_all (hbox);
85 gtk_container_add (GTK_CONTAINER (GTK_DIALOG (dlg)->vbox), hbox);
86 g_object_set (G_OBJECT (GTK_DIALOG (dlg)->vbox), "spacing", 12, NULL);