Mercurial > geeqie
comparison src/rcfile.c @ 1484:9c16a93a0fdf
improved sidebar configuration
author | nadvornik |
---|---|
date | Sun, 29 Mar 2009 14:20:44 +0000 |
parents | 607c60506863 |
children | 73cecf473802 |
comparison
equal
deleted
inserted
replaced
1483:7cb24fdf07c0 | 1484:9c16a93a0fdf |
---|---|
484 *----------------------------------------------------------------------------- | 484 *----------------------------------------------------------------------------- |
485 * save configuration (public) | 485 * save configuration (public) |
486 *----------------------------------------------------------------------------- | 486 *----------------------------------------------------------------------------- |
487 */ | 487 */ |
488 | 488 |
489 gboolean save_options_to(const gchar *utf8_path, ConfOptions *options) | 489 gboolean save_config_to_file(const gchar *utf8_path, ConfOptions *options) |
490 { | 490 { |
491 SecureSaveInfo *ssi; | 491 SecureSaveInfo *ssi; |
492 gchar *rc_pathl; | 492 gchar *rc_pathl; |
493 GString *outstr; | 493 GString *outstr; |
494 gint indent = 0; | 494 gint indent = 0; |
1165 *----------------------------------------------------------------------------- | 1165 *----------------------------------------------------------------------------- |
1166 * load configuration (public) | 1166 * load configuration (public) |
1167 *----------------------------------------------------------------------------- | 1167 *----------------------------------------------------------------------------- |
1168 */ | 1168 */ |
1169 | 1169 |
1170 gboolean load_options_from(const gchar *utf8_path, ConfOptions *options, gboolean startup) | 1170 gboolean load_config_from_buf(const gchar *buf, gsize size, gboolean startup) |
1171 { | 1171 { |
1172 gsize size; | |
1173 gchar *buf; | |
1174 GMarkupParseContext *context; | 1172 GMarkupParseContext *context; |
1175 gboolean ret = TRUE; | 1173 gboolean ret = TRUE; |
1176 GQParserData *parser_data; | 1174 GQParserData *parser_data; |
1177 | 1175 |
1178 if (g_file_get_contents(utf8_path, &buf, &size, NULL) == FALSE) | |
1179 { | |
1180 return FALSE; | |
1181 } | |
1182 | |
1183 parser_data = g_new0(GQParserData, 1); | 1176 parser_data = g_new0(GQParserData, 1); |
1184 | 1177 |
1185 parser_data->startup = startup; | 1178 parser_data->startup = startup; |
1186 options_parse_func_push(parser_data, options_parse_toplevel, NULL, NULL); | 1179 options_parse_func_push(parser_data, options_parse_toplevel, NULL, NULL); |
1187 | 1180 |
1193 DEBUG_1("Parse failed"); | 1186 DEBUG_1("Parse failed"); |
1194 } | 1187 } |
1195 | 1188 |
1196 g_free(parser_data); | 1189 g_free(parser_data); |
1197 | 1190 |
1198 g_free(buf); | |
1199 g_markup_parse_context_free(context); | 1191 g_markup_parse_context_free(context); |
1200 return ret; | 1192 return ret; |
1201 } | 1193 } |
1194 | |
1195 gboolean load_config_from_file(const gchar *utf8_path, gboolean startup) | |
1196 { | |
1197 gsize size; | |
1198 gchar *buf; | |
1199 gboolean ret = TRUE; | |
1200 | |
1201 if (g_file_get_contents(utf8_path, &buf, &size, NULL) == FALSE) | |
1202 { | |
1203 return FALSE; | |
1204 } | |
1205 ret = load_config_from_buf(buf, size, startup); | |
1206 g_free(buf); | |
1207 return ret; | |
1208 } | |
1202 | 1209 |
1203 | 1210 |
1204 | 1211 |
1205 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */ | 1212 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */ |