Пример #1
0
/**
 * @brief Get all ISEs support languages.
 *
 * @param all_langs The list to store all languages.
 */
void isf_get_all_languages (std::vector<String> &all_langs)
{
    String lang_name;

    for (MapStringVectorSizeT::iterator it = _groups.begin (); it != _groups.end (); ++it) {
        lang_name = scim_get_language_name_english (it->first);
        all_langs.push_back (lang_name);
    }
}
Пример #2
0
/**
 * @brief Get all ISE names for the specific languages.
 *
 * @param lang_list The specific languages list.
 * @param ise_names The list to store ISE names .
 */
void isf_get_all_ise_names_in_languages (std::vector<String> lang_list, std::vector<String> &ise_names)
{
    String lang_name;

    for (MapStringVectorSizeT::iterator it = _groups.begin (); it != _groups.end (); ++it) {
        lang_name = scim_get_language_name_english (it->first);
        if (std::find (lang_list.begin (), lang_list.end (), lang_name) != lang_list.end ()) {
            for (size_t i = 0; i < it->second.size (); i++) {
                if (_current_modules_list.size () > 0 &&
                        std::find (_current_modules_list.begin (), _current_modules_list.end (), _module_names[it->second[i]]) == _current_modules_list.end ())
                    continue;
                // Avoid to add the same ise
                if (std::find (ise_names.begin (), ise_names.end (), _names[it->second[i]]) == ise_names.end ())
                    ise_names.push_back (_names[it->second[i]]);
            }
        }
    }
}
Пример #3
0
/**
 * @brief Get all keyboard ISE uuids for the specific languages.
 *
 * @param lang_list The specific languages list.
 * @param keyboard_uuids The list to store keyboard ISE uuids.
 */
void isf_get_keyboard_uuids_in_languages (std::vector<String> lang_list, std::vector<String> &keyboard_uuids)
{
    String lang_name;

    for (MapStringVectorSizeT::iterator it = _groups.begin (); it != _groups.end (); ++it) {
        lang_name = scim_get_language_name_english (it->first);

        if (std::find (lang_list.begin (), lang_list.end (), lang_name) != lang_list.end ()) {
            for (size_t i = 0; i < it->second.size (); i++) {
                if (_modes[it->second[i]] != TOOLBAR_KEYBOARD_MODE)
                    continue;
                if (_current_modules_list.size () > 0 &&
                        std::find (_current_modules_list.begin (), _current_modules_list.end (), _module_names[it->second[i]]) == _current_modules_list.end ())
                    continue;
                if (std::find (keyboard_uuids.begin (), keyboard_uuids.end (), _uuids[it->second[i]]) == keyboard_uuids.end ())
                    keyboard_uuids.push_back (_uuids[it->second[i]]);
            }
        }
    }
}
Пример #4
0
String
scim_get_language_name (const String &lang)
{
    return String (_(scim_get_language_name_english (lang).c_str ()));
}