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 Dialog wrapper. */
38 /*===========================================================================*/
40 #define GL_TYPE_HIG_DIALOG (gl_hig_dialog_get_type ())
41 #define GL_HIG_DIALOG(obj) \
42 (GTK_CHECK_CAST((obj), GL_TYPE_HIG_DIALOG, glHigDialog ))
43 #define GL_HIG_DIALOG_CLASS(klass) \
44 (GTK_CHECK_CLASS_CAST ((klass), GL_TYPE_HIG_DIALOG, glHigDialogClass))
45 #define GL_IS_HIG_DIALOG(obj) \
46 (GTK_CHECK_TYPE ((obj), GL_TYPE_HIG_DIALOG))
47 #define GL_IS_HIG_DIALOG_CLASS(klass) \
48 (GTK_CHECK_CLASS_TYPE ((klass), GL_TYPE_HIG_DIALOG))
50 typedef struct _glHigDialog glHigDialog;
51 typedef struct _glHigDialogClass glHigDialogClass;
54 GtkDialog parent_widget;
59 struct _glHigDialogClass {
60 GtkDialogClass parent_class;
63 GType gl_hig_dialog_get_type (void) G_GNUC_CONST;
65 GtkWidget *gl_hig_dialog_new (void);
67 GtkWidget *gl_hig_dialog_new_with_buttons (const gchar *title,
70 const gchar *first_button_text,
73 void gl_hig_dialog_add_widget (glHigDialog *dialog,
77 /*===========================================================================*/
78 /* HIG Category (analogous to a gtk_frame). */
79 /*===========================================================================*/
81 #define GL_TYPE_HIG_CATEGORY (gl_hig_category_get_type ())
82 #define GL_HIG_CATEGORY(obj) \
83 (GTK_CHECK_CAST((obj), GL_TYPE_HIG_CATEGORY, glHigCategory ))
84 #define GL_HIG_CATEGORY_CLASS(klass) \
85 (GTK_CHECK_CLASS_CAST ((klass), GL_TYPE_HIG_CATEGORY, glHigCategoryClass))
86 #define GL_IS_HIG_CATEGORY(obj) \
87 (GTK_CHECK_TYPE ((obj), GL_TYPE_HIG_CATEGORY))
88 #define GL_IS_HIG_CATEGORY_CLASS(klass) \
89 (GTK_CHECK_CLASS_TYPE ((klass), GL_TYPE_HIG_CATEGORY))
91 typedef struct _glHigCategory glHigCategory;
92 typedef struct _glHigCategoryClass glHigCategoryClass;
94 struct _glHigCategory {
95 GtkVBox parent_widget;
101 struct _glHigCategoryClass {
102 GtkVBoxClass parent_class;
105 GType gl_hig_category_get_type (void) G_GNUC_CONST;
107 GtkWidget *gl_hig_category_new (const gchar *header);
109 void gl_hig_category_add_widget (glHigCategory *cat,
113 /*===========================================================================*/
114 /* HIG VBOX wrapper. */
115 /*===========================================================================*/
122 #define GL_TYPE_HIG_VBOX (gl_hig_vbox_get_type ())
123 #define GL_HIG_VBOX(obj) \
124 (GTK_CHECK_CAST((obj), GL_TYPE_HIG_VBOX, glHigVBox ))
125 #define GL_HIG_VBOX_CLASS(klass) \
126 (GTK_CHECK_CLASS_CAST ((klass), GL_TYPE_HIG_VBOX, glHigVBoxClass))
127 #define GL_IS_HIG_VBOX(obj) \
128 (GTK_CHECK_TYPE ((obj), GL_TYPE_HIG_VBOX))
129 #define GL_IS_HIG_VBOX_CLASS(klass) \
130 (GTK_CHECK_CLASS_TYPE ((klass), GL_TYPE_HIG_VBOX))
132 typedef struct _glHigVBox glHigVBox;
133 typedef struct _glHigVBoxClass glHigVBoxClass;
136 GtkVBox parent_widget;
139 struct _glHigVBoxClass {
140 GtkVBoxClass parent_class;
143 GType gl_hig_vbox_get_type (void) G_GNUC_CONST;
145 GtkWidget *gl_hig_vbox_new (glHigVBoxType type);
147 void gl_hig_vbox_add_widget (glHigVBox *hig_vbox,
151 /*===========================================================================*/
152 /* HIG HBOX wrapper. */
153 /*===========================================================================*/
155 #define GL_TYPE_HIG_HBOX (gl_hig_hbox_get_type ())
156 #define GL_HIG_HBOX(obj) \
157 (GTK_CHECK_CAST((obj), GL_TYPE_HIG_HBOX, glHigHBox ))
158 #define GL_HIG_HBOX_CLASS(klass) \
159 (GTK_CHECK_CLASS_CAST ((klass), GL_TYPE_HIG_HBOX, glHigHBoxClass))
160 #define GL_IS_HIG_HBOX(obj) \
161 (GTK_CHECK_TYPE ((obj), GL_TYPE_HIG_HBOX))
162 #define GL_IS_HIG_HBOX_CLASS(klass) \
163 (GTK_CHECK_CLASS_TYPE ((klass), GL_TYPE_HIG_HBOX))
165 typedef struct _glHigHBox glHigHBox;
166 typedef struct _glHigHBoxClass glHigHBoxClass;
169 GtkHBox parent_widget;
172 struct _glHigHBoxClass {
173 GtkHBoxClass parent_class;
176 GType gl_hig_hbox_get_type (void) G_GNUC_CONST;
178 GtkWidget *gl_hig_hbox_new (void);
180 void gl_hig_hbox_add_widget (glHigHBox *hig_hbox,
183 void gl_hig_hbox_add_widget_justify (glHigHBox *hig_hbox,
189 #endif /* __HIG_H__ */