Added RPM package building. Configure with --enable-gtk-doc --enable-rpm and then...
[rodin/chimara.git] / libchimara / chimara-glk-private.h
index 5ea1e54a51853274826aff1775c9a6d15d642926..33e8ebf5b8ea20d26d4a1658a006f697bf870df1 100644 (file)
@@ -36,6 +36,8 @@ struct _ChimaraGlkPrivate {
        struct StyleSet *current_styles;
 
        /* *** Threading data *** */
+       /* Whether program is running */
+       gboolean running;
     /* Glk program loaded in widget */
     GModule *program;
     /* Thread in which Glk program is run */
@@ -53,6 +55,9 @@ struct _ChimaraGlkPrivate {
        GCond *rearranged;
        gboolean needs_rearrange;
        gboolean ignore_next_arrange_event;
+       /* Input queues */
+       GAsyncQueue *char_input_queue;
+       GAsyncQueue *line_input_queue;
 
        /* *** Glk library data *** */
     /* User-defined interrupt handler */
@@ -76,6 +81,8 @@ struct _ChimaraGlkPrivate {
        void (*unregister_obj)(void *, glui32, gidispatch_rock_t);
        gidispatch_rock_t (*register_arr)(void *, glui32, char *);
        void (*unregister_arr)(void *, glui32, char *, gidispatch_rock_t);
+       /* Have styles been initialized */
+       gboolean style_initialized;
 
        /* *** Platform-dependent Glk library data *** */
        /* Flag for functions to find out if they are being called from startup code */
@@ -84,8 +91,8 @@ struct _ChimaraGlkPrivate {
        gchar *current_dir;
 };
 
-#define CHIMARA_GLK_PRIVATE(obj) \
-       (G_TYPE_INSTANCE_GET_PRIVATE((obj), CHIMARA_TYPE_GLK, ChimaraGlkPrivate))
+#define CHIMARA_GLK_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE((obj), CHIMARA_TYPE_GLK, ChimaraGlkPrivate))
+#define CHIMARA_GLK_USE_PRIVATE(o, n) ChimaraGlkPrivate *n = CHIMARA_GLK_PRIVATE(o)
        
 G_END_DECLS