Backend support for using dynamic styles. See also Ticket #49.
[rodin/chimara.git] / libchimara / chimara-glk-private.h
index 903d3530705f93f2dd163692e50e35d2a6e4b3f3..44a2a49988ede5de56f680b913d80312fbc5ce62 100644 (file)
@@ -23,20 +23,18 @@ struct _ChimaraGlkPrivate {
     gboolean interactive;
     /* Whether file operations are allowed */
     gboolean protect;
-       /* Font description of proportional font */
-       PangoFontDescription *default_font_desc;
-       /* Font description of monospace font */
-       PangoFontDescription *monospace_font_desc;
        /* Spacing between Glk windows */
        guint spacing;
        /* The CSS file to read style defaults from */
        gchar *css_file;
-       /* Hashtable containing the default and current style */
-       struct StyleSet *default_styles;
-       struct StyleSet *current_styles;
-       gboolean style_initialized; /* Have styles been initialized */
+       /* Hashtable containing the current styles set by CSS and GLK */
+       struct StyleSet *styles;
+       struct StyleSet *glk_styles;
+       PangoAttrList *pager_attr_list;
        /* Final message displayed when game exits */
        gchar *final_message;
+       /* Image cache */
+       GSList *image_cache;
 
        /* *** Threading data *** */
        /* Whether program is running */
@@ -64,8 +62,17 @@ struct _ChimaraGlkPrivate {
        /* Input queues */
        GAsyncQueue *char_input_queue;
        GAsyncQueue *line_input_queue;
+       /* Resource loading locks */
+       GMutex *resource_lock;
+       GCond *resource_loaded;
+       GCond *resource_info_available;
+       guint32 resource_available;
 
        /* *** Glk library data *** */
+       /* Info about current plugin */
+       gchar *program_name;
+       gchar *program_info;
+       gchar *story_name;
     /* User-defined interrupt handler */
     void (*interrupt_handler)(void);
     /* Global tree of all windows */