refactor
[pspp] / src / ui / gui / psppire-window-base.h
1 /* PSPPIRE - a graphical user interface for PSPP.
2    Copyright (C) 2012  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  This is an abstract base class upon which all (well almost all) windows in
19  psppire are based.   The exceptions are transient windows such as the
20  splash screen and popups.
21 */
22
23 #ifndef __PSPPIRE_WINDOW_BASE_H__
24 #define __PSPPIRE_WINDOW_BASE_H__
25
26
27 #include <glib.h>
28 #include <glib-object.h>
29 #include <gtk/gtk.h>
30
31 G_BEGIN_DECLS
32
33
34 #define PSPPIRE_TYPE_WINDOW_BASE            (psppire_window_base_get_type ())
35
36 #define PSPPIRE_WINDOW_BASE(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
37     PSPPIRE_TYPE_WINDOW_BASE, PsppireWindowBase))
38
39 #define PSPPIRE_WINDOW_BASE_CLASS(class)    (G_TYPE_CHECK_CLASS_CAST ((class), \
40     PSPPIRE_TYPE_WINDOW_BASE, PsppireWindowBaseClass))
41
42 #define PSPPIRE_IS_WINDOW_BASE(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
43     PSPPIRE_TYPE_WINDOW_BASE))
44
45 #define PSPPIRE_IS_WINDOW_BASE_CLASS(class) (G_TYPE_CHECK_CLASS_TYPE ((class), \
46     PSPPIRE_TYPE_WINDOW_BASE))
47
48
49 typedef struct _PsppireWindowBase       PsppireWindowBase;
50 typedef struct _PsppireWindowBaseClass  PsppireWindowBaseClass;
51
52
53 struct _PsppireWindowBase
54 {
55   GtkApplicationWindow parent;
56
57   /* <private> */
58 };
59
60
61 struct _PsppireWindowBaseClass
62 {
63   GtkApplicationWindowClass parent_class;
64 };
65
66
67
68 GType      psppire_window_base_get_type        (void);
69 GType      psppire_window_base_model_get_type        (void);
70
71 G_END_DECLS
72
73 #endif /* __PSPPIRE_WINDOW_BASE_H__ */