]> Pileus Git - grits/blob - src/aweather-gui.h
site and time selection for both ridge and radar
[grits] / src / aweather-gui.h
1 #ifndef __AWEATHER_GUI_H__
2 #define __AWEATHER_GUI_H__
3
4 #include <gtk/gtk.h>
5 #include <glib-object.h>
6 #include "aweather-view.h"
7
8 /* Type macros */
9 #define AWEATHER_TYPE_GUI            (aweather_gui_get_type())
10 #define AWEATHER_GUI(obj)            (G_TYPE_CHECK_INSTANCE_CAST((obj),   AWEATHER_TYPE_GUI, AWeatherGui))
11 #define AWEATHER_IS_GUI(obj)         (G_TYPE_CHECK_INSTANCE_TYPE((obj),   AWEATHER_TYPE_GUI))
12 #define AWEATHER_GUI_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST   ((klass), AWEATHER_TYPE_GUI, AWeatherGuiClass))
13 #define AWEATHER_IS_GUI_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE   ((klass), AWEATHER_TYPE_GUI))
14 #define AWEATHER_GUI_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj),   AWEATHER_TYPE_GUI, AWeatherGuiClass))
15
16 typedef struct _AWeatherGui      AWeatherGui;
17 typedef struct _AWeatherGuiClass AWeatherGuiClass;
18
19 struct _AWeatherGui {
20         GObject parent_instance;
21
22         /* instance members */
23         AWeatherView   *view;
24         GtkBuilder     *builder;
25         GtkWindow      *window;
26         GtkNotebook    *tabs;
27         GtkDrawingArea *drawing;
28 };
29
30 struct _AWeatherGuiClass {
31         GObjectClass parent_class;
32         
33         /* class members */
34 };
35
36 GType aweather_gui_get_type(void);
37
38 /* Methods */
39 AWeatherGui    *aweather_gui_new();
40 AWeatherView   *aweather_gui_get_view(AWeatherGui *gui);
41 GtkWidget      *aweather_gui_get_widget(AWeatherGui *gui, const gchar *name);
42 void            aweather_gui_gl_begin(AWeatherGui *gui);
43 void            aweather_gui_gl_end(AWeatherGui *gui);
44 void            aweather_gui_gl_flush(AWeatherGui *gui);
45
46 //void aweather_gui_register_plugin(AWeatherGui *gui, AWeatherPlugin *plugin);
47
48 #endif