511061b0d3
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: Icc3cb8118b225c9b19b451b2a6463c844ef4162d Reviewed-on: https://gerrit.libreoffice.org/62459 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
133 lines
8.6 KiB
C++
133 lines
8.6 KiB
C++
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
|
/*
|
|
* This file is part of the LibreOffice project.
|
|
*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
*
|
|
* This file incorporates work covered by the following license notice:
|
|
*
|
|
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
* contributor license agreements. See the NOTICE file distributed
|
|
* with this work for additional information regarding copyright
|
|
* ownership. The ASF licenses this file to you under the Apache
|
|
* License, Version 2.0 (the "License"); you may not use this file
|
|
* except in compliance with the License. You may obtain a copy of
|
|
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
|
|
*/
|
|
#ifndef INCLUDED_I18NUTIL_TRANSLITERATION_HXX
|
|
#define INCLUDED_I18NUTIL_TRANSLITERATION_HXX
|
|
|
|
#include <com/sun/star/i18n/TransliterationModules.hpp>
|
|
#include <com/sun/star/i18n/TransliterationModulesExtra.hpp>
|
|
#include <o3tl/typed_flags_set.hxx>
|
|
|
|
/**
|
|
* This is a superset type of the com::sun::star::i18n::TransliterationModules and TransliterationModulesExtra,
|
|
* with some extra type checking
|
|
*/
|
|
enum class TransliterationFlags {
|
|
NONE = 0,
|
|
/// Transliterate a string from upper case to lower case
|
|
UPPERCASE_LOWERCASE = int(css::i18n::TransliterationModules_UPPERCASE_LOWERCASE),
|
|
/// Transliterate a string from lower case to upper case
|
|
LOWERCASE_UPPERCASE = int(css::i18n::TransliterationModules_LOWERCASE_UPPERCASE),
|
|
/// Transliterate a string from half width character to full width character
|
|
HALFWIDTH_FULLWIDTH = int(css::i18n::TransliterationModules_HALFWIDTH_FULLWIDTH),
|
|
/// Transliterate a string from full width character to half width character
|
|
FULLWIDTH_HALFWIDTH = int(css::i18n::TransliterationModules_FULLWIDTH_HALFWIDTH),
|
|
/// Transliterate a Japanese string from Katakana to Hiragana
|
|
KATAKANA_HIRAGANA = int(css::i18n::TransliterationModules_KATAKANA_HIRAGANA),
|
|
/// Transliterate a Japanese string from Hiragana to Katakana
|
|
HIRAGANA_KATAKANA = int(css::i18n::TransliterationModules_HIRAGANA_KATAKANA),
|
|
/// Transliterate an ASCII number string to Simplified Chinese lower case number string in spellout format
|
|
NumToTextLower_zh_CN = int(css::i18n::TransliterationModules_NumToTextLower_zh_CN),
|
|
/// Transliterate an ASCII number string to Simplified Chinese upper case number string in spellout format
|
|
NumToTextUpper_zh_CN = int(css::i18n::TransliterationModules_NumToTextUpper_zh_CN),
|
|
/// Transliterate an ASCII number string to Traditional Chinese lower case number string in spellout format
|
|
NumToTextLower_zh_TW = int(css::i18n::TransliterationModules_NumToTextLower_zh_TW),
|
|
/// Transliterate an ASCII number string to Traditional Chinese upper case number string in spellout format
|
|
NumToTextUpper_zh_TW = int(css::i18n::TransliterationModules_NumToTextUpper_zh_TW),
|
|
/// Transliterate an ASCII number string to formal Korean Hangul number string in spellout format
|
|
NumToTextFormalHangul_ko = int(css::i18n::TransliterationModules_NumToTextFormalHangul_ko),
|
|
/// Transliterate an ASCII number string to formal Korean Hanja lower case number string in spellout format
|
|
NumToTextFormalLower_ko = int(css::i18n::TransliterationModules_NumToTextFormalLower_ko),
|
|
/// Transliterate an ASCII number string to formal Korean Hanja upper case number string in spellout format
|
|
NumToTextFormalUpper_ko = int(css::i18n::TransliterationModules_NumToTextFormalUpper_ko),
|
|
|
|
/** The first character of the sentence is put in upper case
|
|
*/
|
|
SENTENCE_CASE = int(css::i18n::TransliterationModulesExtra::SENTENCE_CASE),
|
|
|
|
|
|
/** The first character of the word is put in upper case.
|
|
* This one is part
|
|
*/
|
|
TITLE_CASE = int(css::i18n::TransliterationModulesExtra::TITLE_CASE),
|
|
|
|
|
|
/** All characters of the word are to change their case from small letters
|
|
* to capital letters and vice versa.
|
|
*/
|
|
TOGGLE_CASE = int(css::i18n::TransliterationModulesExtra::TOGGLE_CASE),
|
|
|
|
NON_IGNORE_MASK = int(css::i18n::TransliterationModules_NON_IGNORE_MASK),
|
|
IGNORE_MASK = 0x7fffff00,
|
|
|
|
/// Ignore case when comparing strings by transliteration service
|
|
IGNORE_CASE = int(css::i18n::TransliterationModules_IGNORE_CASE),
|
|
/// Ignore Hiragana and Katakana when comparing strings by transliteration service
|
|
IGNORE_KANA = int(css::i18n::TransliterationModules_IGNORE_KANA), // ja_JP
|
|
/// Ignore full width and half width character when comparing strings by transliteration service
|
|
IGNORE_WIDTH = int(css::i18n::TransliterationModules_IGNORE_WIDTH), // ja_JP
|
|
/// Ignore Japanese traditional Kanji character in Japanese fuzzy search
|
|
ignoreTraditionalKanji_ja_JP = int(css::i18n::TransliterationModules_ignoreTraditionalKanji_ja_JP),
|
|
/// Ignore Japanese traditional Katakana and Hiragana character in Japanese fuzzy search
|
|
ignoreTraditionalKana_ja_JP = int(css::i18n::TransliterationModules_ignoreTraditionalKana_ja_JP),
|
|
/// Ignore dash or minus sign in Japanese fuzzy search
|
|
ignoreMinusSign_ja_JP = int(css::i18n::TransliterationModules_ignoreMinusSign_ja_JP),
|
|
/// Ignore Hiragana and Katakana iteration mark in Japanese fuzzy search
|
|
ignoreIterationMark_ja_JP = int(css::i18n::TransliterationModules_ignoreIterationMark_ja_JP),
|
|
/// Ignore separator punctuations in Japanese fuzzy search
|
|
ignoreSeparator_ja_JP = int(css::i18n::TransliterationModules_ignoreSeparator_ja_JP),
|
|
/// Ignore Katakana and Hiragana Zi/Zi and Zu/Zu in Japanese fuzzy search
|
|
ignoreZiZu_ja_JP = int(css::i18n::TransliterationModules_ignoreZiZu_ja_JP),
|
|
/// Ignore Katakana and Hiragana Ba/Gua and Ha/Fa in Japanese fuzzy search
|
|
ignoreBaFa_ja_JP = int(css::i18n::TransliterationModules_ignoreBaFa_ja_JP),
|
|
/// Ignore Katakana and Hiragana Tsui/Tea/Ti and Dyi/Ji in Japanese fuzzy search
|
|
ignoreTiJi_ja_JP = int(css::i18n::TransliterationModules_ignoreTiJi_ja_JP),
|
|
/// Ignore Katakana and Hiragana Hyu/Fyu and Byu/Gyu in Japanese fuzzy search
|
|
ignoreHyuByu_ja_JP = int(css::i18n::TransliterationModules_ignoreHyuByu_ja_JP),
|
|
/// Ignore Katakana and Hiragana Se/Sye and Ze/Je in Japanese fuzzy search
|
|
ignoreSeZe_ja_JP = int(css::i18n::TransliterationModules_ignoreSeZe_ja_JP),
|
|
/// Ignore Katakana YA/A which follows the character in either I or E row in Japanese fuzzy search
|
|
ignoreIandEfollowedByYa_ja_JP = int(css::i18n::TransliterationModules_ignoreIandEfollowedByYa_ja_JP),
|
|
/// Ignore Katakana KI/KU which follows the character in SA column in Japanese fuzzy search
|
|
ignoreKiKuFollowedBySa_ja_JP = int(css::i18n::TransliterationModules_ignoreKiKuFollowedBySa_ja_JP),
|
|
/// Ignore Japanese normal and small sized character in Japanese fuzzy search
|
|
ignoreSize_ja_JP = int(css::i18n::TransliterationModules_ignoreSize_ja_JP),
|
|
/// Ignore Japanese prolonged sound mark in Japanese fuzzy search
|
|
ignoreProlongedSoundMark_ja_JP = int(css::i18n::TransliterationModules_ignoreProlongedSoundMark_ja_JP),
|
|
/// Ignore middle dot in Japanese fuzzy search
|
|
ignoreMiddleDot_ja_JP = int(css::i18n::TransliterationModules_ignoreMiddleDot_ja_JP),
|
|
/// Ignore white space characters, include space, TAB, return, etc. in Japanese fuzzy search
|
|
ignoreSpace_ja_JP = int(css::i18n::TransliterationModules_ignoreSpace_ja_JP),
|
|
/// transliterate Japanese small sized character to normal sized character
|
|
smallToLarge_ja_JP = int(css::i18n::TransliterationModules_smallToLarge_ja_JP),
|
|
/// transliterate Japanese normal sized character to small sized character
|
|
largeToSmall_ja_JP = int(css::i18n::TransliterationModules_largeToSmall_ja_JP),
|
|
|
|
/// Transliterate decomposing and removing diacritics, not only CTL, despite its name.
|
|
IGNORE_DIACRITICS_CTL = int(css::i18n::TransliterationModulesExtra::IGNORE_DIACRITICS_CTL),
|
|
/// Ignore Kashida mark.
|
|
IGNORE_KASHIDA_CTL = int(css::i18n::TransliterationModulesExtra::IGNORE_KASHIDA_CTL)
|
|
};
|
|
namespace o3tl {
|
|
template<> struct typed_flags<TransliterationFlags> : is_typed_flags<TransliterationFlags, 0x7fffffff> {};
|
|
}
|
|
|
|
|
|
#endif
|
|
|
|
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|