Example #1
0
FCITX_EXPORT_API
FcitxConfiguration* fcitx_configuration_new(const char* name)
{
    FcitxConfiguration* config = fcitx_utils_new(FcitxConfiguration);
    fcitx_utils_string_swap(&config->name, name);
    return fcitx_configuration_ref(config);
}
Example #2
0
FCITX_EXPORT_API
FcitxDescription* fcitx_description_parse(FcitxConfiguration* config)
{
    const char* localeDomain = fcitx_configuration_get_value_by_path(config, "DescriptionFile/LocaleDomain");

    FcitxDescription* desc = fcitx_utils_new(FcitxDescription);
    fcitx_utils_string_swap(&desc->localeDomain, localeDomain);
    desc->rootConfig = fcitx_configuration_ref(config);
    do {
        find_structs(config, desc);
        if (desc->error) {
            break;
        }
        find_top_level_structs(config, desc);
        if (desc->error) {
            break;
        }
    } while(0);

    return desc;
}