Wrote platform-dependent dispatch code
[rodin/chimara.git] / libchimara / chimara-glk.h
1 /* Copyright / licensing information here. */
2
3 #ifndef __CHIMARA_GLK_H__
4 #define __CHIMARA_GLK_H__
5
6 #include <glib-object.h>
7 #include <gtk/gtk.h>
8 #include <pango/pango.h>
9
10 G_BEGIN_DECLS
11
12 #define CHIMARA_TYPE_GLK            (chimara_glk_get_type())
13 #define CHIMARA_GLK(obj)            (G_TYPE_CHECK_INSTANCE_CAST((obj), \
14                                      CHIMARA_TYPE_GLK, ChimaraGlk))
15 #define CHIMARA_GLK_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST((klass), \
16                                      CHIMARA_TYPE_GLK, ChimaraGlkClass))
17 #define CHIMARA_IS_GLK(obj)         (G_TYPE_CHECK_INSTANCE_TYPE((obj), \
18                                      CHIMARA_TYPE_GLK))
19 #define CHIMARA_IS_GLK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), \
20                                      CHIMARA_TYPE_GLK))
21 #define CHIMARA_GLK_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS((obj), \
22                                      CHIMARA_TYPE_GLK, ChimaraGlkClass))
23
24 /**
25  * ChimaraGlk:
26  * 
27  * This structure contains no public members.
28  */
29 typedef struct _ChimaraGlk {
30         GtkContainer parent_instance;
31     
32         /*< public >*/
33 } ChimaraGlk;
34
35 typedef struct _ChimaraGlkClass {
36         GtkContainerClass parent_class;
37         /* Signals */
38         void(* stopped) (ChimaraGlk *self);
39         void(* started) (ChimaraGlk *self);
40 } ChimaraGlkClass;
41
42 GType chimara_glk_get_type(void) G_GNUC_CONST;
43 GtkWidget *chimara_glk_new(void);
44 void chimara_glk_set_interactive(ChimaraGlk *glk, gboolean interactive);
45 gboolean chimara_glk_get_interactive(ChimaraGlk *glk);
46 void chimara_glk_set_protect(ChimaraGlk *glk, gboolean protect);
47 gboolean chimara_glk_get_protect(ChimaraGlk *glk);
48 void chimara_glk_set_default_font_description(ChimaraGlk *glk, PangoFontDescription *font);
49 void chimara_glk_set_default_font_string(ChimaraGlk *glk, const gchar *font);
50 PangoFontDescription *chimara_glk_get_default_font_description(ChimaraGlk *glk);
51 void chimara_glk_set_monospace_font_description(ChimaraGlk *glk, PangoFontDescription *font);
52 void chimara_glk_set_monospace_font_string(ChimaraGlk *glk, const gchar *font);
53 PangoFontDescription *chimara_glk_get_monospace_font_description(ChimaraGlk *glk);
54 void chimara_glk_set_spacing(ChimaraGlk *glk, guint spacing);
55 guint chimara_glk_get_spacing(ChimaraGlk *glk);
56 gboolean chimara_glk_run(ChimaraGlk *glk, gchar *plugin, int argc, char *argv[], GError **error);
57 void chimara_glk_stop(ChimaraGlk *glk);
58 void chimara_glk_wait(ChimaraGlk *glk);
59
60 G_END_DECLS
61
62 #endif /* __CHIMARA_GLK_H__ */