X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=libchimara%2Fchimara-glk.c;h=b3d414678d20f950c925266d810bf368bb180e1c;hb=476e8909f7b56201452e6c967fc6839a64fa92b0;hp=aca2f212e8c47d6d02443ff899898c8ecd6cb045;hpb=80feedc081ae20491c20123467ef7a72130855ba;p=projects%2Fchimara%2Fchimara.git diff --git a/libchimara/chimara-glk.c b/libchimara/chimara-glk.c index aca2f21..b3d4146 100644 --- a/libchimara/chimara-glk.c +++ b/libchimara/chimara-glk.c @@ -32,7 +32,6 @@ * SECTION:chimara-glk * @short_description: Widget which executes a Glk program * @stability: Unstable - * @include: libchimara/chimara-glk.h * * The #ChimaraGlk widget opens and runs a Glk program. The program must be * compiled as a plugin module, with a function glk_main() @@ -180,8 +179,6 @@ chimara_glk_init(ChimaraGlk *self) priv->line_input_queue = g_async_queue_new(); /* Should be g_async_queue_new_full(g_free); but only in GTK >= 2.16 */ priv->resource_map = NULL; - priv->open_external_blorb = FALSE; - priv->external_blorb_pathname = NULL; priv->resource_lock = g_mutex_new(); priv->resource_loaded = g_cond_new(); priv->resource_info_available = g_cond_new(); @@ -815,7 +812,7 @@ chimara_glk_class_init(ChimaraGlkClass *klass) _chimara_marshal_VOID__UINT_STRING, G_TYPE_NONE, 2, G_TYPE_UINT, G_TYPE_STRING); /** - * ChimaraGlk::iliad-update-screen: + * ChimaraGlk::iliad-screen-update: * @self: The widget that received the signal * @typing: Whether to perform a typing or full screen update * @@ -1065,8 +1062,9 @@ chimara_glk_set_css_from_file(ChimaraGlk *glk, const gchar *filename, GError **e int fd = open(filename, O_RDONLY); if(fd == -1) { - *error = g_error_new(G_IO_ERROR, g_io_error_from_errno(errno), - _("Error opening file \"%s\": %s"), filename, g_strerror(errno)); + if(error) + *error = g_error_new(G_IO_ERROR, g_io_error_from_errno(errno), + _("Error opening file \"%s\": %s"), filename, g_strerror(errno)); return FALSE; } @@ -1076,8 +1074,9 @@ chimara_glk_set_css_from_file(ChimaraGlk *glk, const gchar *filename, GError **e scan_css_file(scanner, glk); if(close(fd) == -1) { - *error = g_error_new(G_IO_ERROR, g_io_error_from_errno(errno), - _("Error closing file \"%s\": %s"), filename, g_strerror(errno)); + if(error) + *error = g_error_new(G_IO_ERROR, g_io_error_from_errno(errno), + _("Error closing file \"%s\": %s"), filename, g_strerror(errno)); return FALSE; } return TRUE; @@ -1172,18 +1171,6 @@ glk_enter(struct StartupData *startup) if(!result) return NULL; } - - /* Open external Blorb file if specified */ - if(startup->glk_data->open_external_blorb) { - glkunix_set_base_file(startup->glk_data->external_blorb_pathname); - gchar *basename = g_path_get_basename(startup->glk_data->external_blorb_pathname); - frefid_t blorbref = glk_fileref_create_by_name(fileusage_BinaryMode | fileusage_Data, basename, 0); - g_free(basename); - strid_t blorbfile = glk_stream_open_file(blorbref, filemode_Read, 0); - giblorb_set_resource_map(blorbfile); - glk_fileref_destroy(blorbref); - g_printerr("Opening external blorb file\n"); - } /* Run main function */ glk_main_t glk_main = startup->glk_main; @@ -1429,16 +1416,16 @@ chimara_glk_is_line_input_pending(ChimaraGlk *glk) /** * chimara_glk_get_tag: - * @glk: a #ChimarGlk widget + * @glk: a #ChimaraGlk widget * @window: The type of window to retrieve the tag for * @name: The name of the tag to retrieve * * Use this function to get a #GtkTextTag so style properties can be changed. - * See also #chimara_glk_set_css_from_string. + * See also chimara_glk_set_css_from_string(). * * The layout of the text in Chimara is controlled by two sets of tags: one set * describing the style in text buffers and one for text grids. See also the - * GLK specification for the difference between the two. The main narrative of + * Glk specification for the difference between the two. The main narrative of * a game is usually rendered in text buffers, whereas text grids are mostly * used for status bars and in game menus. * @@ -1457,9 +1444,9 @@ chimara_glk_is_line_input_pending(ChimaraGlk *glk) * user2 * hyperlink * pager - * + * */ -GtkTextTag* +GtkTextTag * chimara_glk_get_tag(ChimaraGlk *glk, ChimaraGlkWindowType window, const gchar *name) { CHIMARA_GLK_USE_PRIVATE(glk, priv); @@ -1478,12 +1465,12 @@ chimara_glk_get_tag(ChimaraGlk *glk, ChimaraGlkWindowType window, const gchar *n } /** - * chimara_glk_get_tag: - * @glk: a #ChimarGlk widget + * chimara_glk_get_tag_names: + * @glk: a #ChimaraGlk widget * - * Retrieves the possible tag names to use in #chimara_glk_get_tag. + * Retrieves the possible tag names to use in chimara_glk_get_tag(). */ -const gchar** +const gchar ** chimara_glk_get_tag_names(ChimaraGlk *glk) { return style_get_tag_names(); @@ -1493,7 +1480,7 @@ chimara_glk_get_tag_names(ChimaraGlk *glk) * chimara_glk_get_num_tag_names: * @glk: a #ChimaraGlk widget * - * Retrieves the number of style tags returned by #chimara_glk_get_tag_names. + * Retrieves the number of style tags returned by chimara_glk_get_tag_names(). */ gint chimara_glk_get_num_tag_names(ChimaraGlk *glk) @@ -1507,7 +1494,7 @@ chimara_glk_get_num_tag_names(ChimaraGlk *glk) * * Processes style updates and updates the widget to reflect the new style. * Call this every time you change a property of a #GtkTextTag retrieved by - * #chimara_glk_get_tag. + * chimara_glk_get_tag(). */ void chimara_glk_update_style(ChimaraGlk *glk)