コード例 #1
0
ファイル: encodings.c プロジェクト: iperry/roxterm
Encodings *encodings_load(void)
{
    char *filename = options_file_build_filename("Encodings", NULL);

    if (filename)
    {
        GKeyFile *kf = options_file_open("Encodings", encodings_group_name);
        int count = options_file_lookup_int_with_default(kf,
            encodings_group_name, "n", 0);
        GPtrArray *enc = g_ptr_array_sized_new(count);
        int n;

        for (n = 0; n < count; ++n)
        {
            char *v = options_file_lookup_string_with_default(kf,
                    encodings_group_name, encodings_get_key(n), NULL);

            g_ptr_array_add(enc, v);
        }
        g_free(filename);
        g_key_file_free(kf);
        g_ptr_array_sort(enc, (GCompareFunc) encodings_compare);
        return enc;
    }
    else
    {
        return encodings_build_default();
    }
}
コード例 #2
0
ファイル: options.c プロジェクト: forivall-mirrors/roxterm
char *options_lookup_string_with_default(Options * options,
	const char *key, const char *default_value)
{
	return options_file_lookup_string_with_default(
			options->kf, options->group_name,
			key, default_value);
}