2 * (GLABELS) Label and Business Card Creation program for GNOME
4 * hig.h: HIG inspired dialogs and layout tools
6 * Copyright (C) 2002 Jim Evins <evins@snaught.com>.
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
26 #include <gtk/gtkmessagedialog.h>
27 #include <gtk/gtkvbox.h>
28 #include <gtk/gtkhbox.h>
33 #define GL_HIG_PAD2 12
36 /*===========================================================================*/
37 /* HIG inspired alert. */
38 /*===========================================================================*/
40 #define GL_TYPE_HIG_ALERT (gl_hig_alert_get_type ())
41 #define GL_HIG_ALERT(obj) \
42 (GTK_CHECK_CAST((obj), GL_TYPE_HIG_ALERT, glHigAlert ))
43 #define GL_HIG_ALERT_CLASS(klass) \
44 (GTK_CHECK_CLASS_CAST ((klass), GL_TYPE_HIG_ALERT, glHigAlertClass))
45 #define GL_IS_HIG_ALERT(obj) \
46 (GTK_CHECK_TYPE ((obj), GL_TYPE_HIG_ALERT))
47 #define GL_IS_HIG_ALERT_CLASS(klass) \
48 (GTK_CHECK_CLASS_TYPE ((klass), GL_TYPE_HIG_ALERT))
50 typedef struct _glHigAlert glHigAlert;
51 typedef struct _glHigAlertClass glHigAlertClass;
54 GtkDialog parent_widget;
57 struct _glHigAlertClass {
58 GtkDialogClass parent_class;
61 GType gl_hig_alert_get_type (void) G_GNUC_CONST;
63 GtkWidget *gl_hig_alert_new (GtkWindow *parent,
66 GtkButtonsType buttons,
67 const gchar *primary_text,
68 const gchar *secondary_text);
71 /*===========================================================================*/
72 /* HIG Dialog wrapper. */
73 /*===========================================================================*/
75 #define GL_TYPE_HIG_DIALOG (gl_hig_dialog_get_type ())
76 #define GL_HIG_DIALOG(obj) \
77 (GTK_CHECK_CAST((obj), GL_TYPE_HIG_DIALOG, glHigDialog ))
78 #define GL_HIG_DIALOG_CLASS(klass) \
79 (GTK_CHECK_CLASS_CAST ((klass), GL_TYPE_HIG_DIALOG, glHigDialogClass))
80 #define GL_IS_HIG_DIALOG(obj) \
81 (GTK_CHECK_TYPE ((obj), GL_TYPE_HIG_DIALOG))
82 #define GL_IS_HIG_DIALOG_CLASS(klass) \
83 (GTK_CHECK_CLASS_TYPE ((klass), GL_TYPE_HIG_DIALOG))
85 typedef struct _glHigDialog glHigDialog;
86 typedef struct _glHigDialogClass glHigDialogClass;
89 GtkDialog parent_widget;
94 struct _glHigDialogClass {
95 GtkDialogClass parent_class;
98 GType gl_hig_dialog_get_type (void) G_GNUC_CONST;
100 GtkWidget *gl_hig_dialog_new (void);
102 GtkWidget *gl_hig_dialog_new_with_buttons (const gchar *title,
104 GtkDialogFlags flags,
105 const gchar *first_button_text,
108 void gl_hig_dialog_add_widget (glHigDialog *dialog,
112 /*===========================================================================*/
113 /* HIG Category (analogous to a gtk_frame). */
114 /*===========================================================================*/
116 #define GL_TYPE_HIG_CATEGORY (gl_hig_category_get_type ())
117 #define GL_HIG_CATEGORY(obj) \
118 (GTK_CHECK_CAST((obj), GL_TYPE_HIG_CATEGORY, glHigCategory ))
119 #define GL_HIG_CATEGORY_CLASS(klass) \
120 (GTK_CHECK_CLASS_CAST ((klass), GL_TYPE_HIG_CATEGORY, glHigCategoryClass))
121 #define GL_IS_HIG_CATEGORY(obj) \
122 (GTK_CHECK_TYPE ((obj), GL_TYPE_HIG_CATEGORY))
123 #define GL_IS_HIG_CATEGORY_CLASS(klass) \
124 (GTK_CHECK_CLASS_TYPE ((klass), GL_TYPE_HIG_CATEGORY))
126 typedef struct _glHigCategory glHigCategory;
127 typedef struct _glHigCategoryClass glHigCategoryClass;
129 struct _glHigCategory {
130 GtkVBox parent_widget;
136 struct _glHigCategoryClass {
137 GtkVBoxClass parent_class;
140 GType gl_hig_category_get_type (void) G_GNUC_CONST;
142 GtkWidget *gl_hig_category_new (const gchar *header);
144 void gl_hig_category_add_widget (glHigCategory *cat,
148 /*===========================================================================*/
149 /* HIG VBOX wrapper. */
150 /*===========================================================================*/
157 #define GL_TYPE_HIG_VBOX (gl_hig_vbox_get_type ())
158 #define GL_HIG_VBOX(obj) \
159 (GTK_CHECK_CAST((obj), GL_TYPE_HIG_VBOX, glHigVBox ))
160 #define GL_HIG_VBOX_CLASS(klass) \
161 (GTK_CHECK_CLASS_CAST ((klass), GL_TYPE_HIG_VBOX, glHigVBoxClass))
162 #define GL_IS_HIG_VBOX(obj) \
163 (GTK_CHECK_TYPE ((obj), GL_TYPE_HIG_VBOX))
164 #define GL_IS_HIG_VBOX_CLASS(klass) \
165 (GTK_CHECK_CLASS_TYPE ((klass), GL_TYPE_HIG_VBOX))
167 typedef struct _glHigVBox glHigVBox;
168 typedef struct _glHigVBoxClass glHigVBoxClass;
171 GtkVBox parent_widget;
174 struct _glHigVBoxClass {
175 GtkVBoxClass parent_class;
178 GType gl_hig_vbox_get_type (void) G_GNUC_CONST;
180 GtkWidget *gl_hig_vbox_new (glHigVBoxType type);
182 void gl_hig_vbox_add_widget (glHigVBox *hig_vbox,
186 /*===========================================================================*/
187 /* HIG HBOX wrapper. */
188 /*===========================================================================*/
190 #define GL_TYPE_HIG_HBOX (gl_hig_hbox_get_type ())
191 #define GL_HIG_HBOX(obj) \
192 (GTK_CHECK_CAST((obj), GL_TYPE_HIG_HBOX, glHigHBox ))
193 #define GL_HIG_HBOX_CLASS(klass) \
194 (GTK_CHECK_CLASS_CAST ((klass), GL_TYPE_HIG_HBOX, glHigHBoxClass))
195 #define GL_IS_HIG_HBOX(obj) \
196 (GTK_CHECK_TYPE ((obj), GL_TYPE_HIG_HBOX))
197 #define GL_IS_HIG_HBOX_CLASS(klass) \
198 (GTK_CHECK_CLASS_TYPE ((klass), GL_TYPE_HIG_HBOX))
200 typedef struct _glHigHBox glHigHBox;
201 typedef struct _glHigHBoxClass glHigHBoxClass;
204 GtkHBox parent_widget;
207 struct _glHigHBoxClass {
208 GtkHBoxClass parent_class;
211 GType gl_hig_hbox_get_type (void) G_GNUC_CONST;
213 GtkWidget *gl_hig_hbox_new (void);
215 void gl_hig_hbox_add_widget (glHigHBox *hig_hbox,
218 void gl_hig_hbox_add_widget_justify (glHigHBox *hig_hbox,
224 #endif /* __HIG_H__ */