Filter file choosers by mimetype instead of file name
[pspp-builds.git] / src / ui / gui / psppire-buttonbox.h
1 /* PSPPIRE - a graphical user interface for PSPP.
2    Copyright (C) 2007, 2010, 2011  Free Software Foundation
3
4    This program is free software: you can redistribute it and/or modify
5    it under the terms of the GNU General Public License as published by
6    the Free Software Foundation, either version 3 of the License, or
7    (at your option) any later version.
8
9    This program is distributed in the hope that it will be useful,
10    but WITHOUT ANY WARRANTY; without even the implied warranty of
11    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12    GNU General Public License for more details.
13
14    You should have received a copy of the GNU General Public License
15    along with this program.  If not, see <http://www.gnu.org/licenses/>. */
16
17
18 #ifndef __PSPPIRE_BUTTONBOX_H__
19 #define __PSPPIRE_BUTTONBOX_H__
20
21
22 #include <glib.h>
23 #include <glib-object.h>
24 #include <gtk/gtk.h>
25
26 G_BEGIN_DECLS
27
28 #define PSPPIRE_BUTTONBOX_TYPE            (psppire_button_box_get_type ())
29 #define PSPPIRE_BUTTONBOX(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), PSPPIRE_BUTTONBOX_TYPE, PsppireButtonBox))
30 #define PSPPIRE_BUTTONBOX_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), PSPPIRE_BUTTONBOX_TYPE, PsppireButtonBoxClass))
31 #define PSPPIRE_IS_BUTTONBOX(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PSPPIRE_BUTTONBOX_TYPE))
32 #define PSPPIRE_IS_BUTTONBOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PSPPIRE_BUTTONBOX_TYPE))
33
34
35 typedef struct _PsppireButtonBox       PsppireButtonBox;
36 typedef struct _PsppireButtonBoxClass  PsppireButtonBoxClass;
37
38 enum
39   {
40     PSPPIRE_BUTTON_OK = 0,
41     PSPPIRE_BUTTON_GOTO,
42     PSPPIRE_BUTTON_CONTINUE,
43     PSPPIRE_BUTTON_CANCEL,
44     PSPPIRE_BUTTON_HELP,
45     PSPPIRE_BUTTON_RESET,
46     PSPPIRE_BUTTON_PASTE,
47     n_PsppireButtonBoxButtons
48   };
49
50 struct _PsppireButtonBox
51 {
52   GtkButtonBox parent;
53
54   /* <private> */
55   GtkWidget *button[n_PsppireButtonBoxButtons];
56   guint def;
57 };
58
59 struct _PsppireButtonBoxClass
60 {
61   GtkButtonBoxClass parent_class;
62 };
63
64 GType          psppire_button_box_get_type        (void);
65
66
67 /* Internal function.  Do not use */
68 void
69 _psppire_button_box_child_requisition (GtkWidget *widget,
70                                        int       *nvis_children,
71                                        int       *nvis_secondaries,
72                                        int       *width,
73
74
75 #define PSPPIRE_TYPE_BUTTON_MASK \
76   (psppire_button_flags_get_type())
77                                        int       *height);
78
79 G_END_DECLS
80
81 #endif /* __PSPPIRE_BUTTONBOX_H__ */
82