24 #include <com/sun/star/uno/XComponentContext.hpp>
32 CharacterClassificationImpl::CharacterClassificationImpl(
45 sal_Int32 nCount,
const Locale& rLocale )
52 sal_Int32 nCount,
const Locale& rLocale )
59 sal_Int32 nCount,
const Locale& rLocale )
68 return xUCI->getType(Text, nPos);
76 return xUCI->getCharacterDirection(Text, nPos);
84 return xUCI->getScript(Text, nPos);
90 const Locale& rLocale )
97 sal_Int32 nCount,
const Locale& rLocale )
103 const OUString& Text, sal_Int32 nPos,
const Locale& rLocale,
104 sal_Int32 startCharTokenType,
const OUString& userDefinedCharactersStart,
105 sal_Int32 contCharTokenType,
const OUString& userDefinedCharactersCont )
108 startCharTokenType,userDefinedCharactersStart,
109 contCharTokenType, userDefinedCharactersCont);
114 sal_Int32 nTokenType,
const OUString& Text, sal_Int32 nPos,
115 const Locale& rLocale, sal_Int32 startCharTokenType,
116 const OUString& userDefinedCharactersStart, sal_Int32 contCharTokenType,
117 const OUString& userDefinedCharactersCont )
120 nTokenType, Text, nPos, rLocale, startCharTokenType, userDefinedCharactersStart,
121 contCharTokenType, userDefinedCharactersCont);
137 "com.sun.star.i18n.CharacterClassification_" + serviceName,
m_xContext);
141 xCI.set( xI, UNO_QUERY );
143 lookupTable.emplace_back( rLocale, serviceName, xCI );
171 for (
const auto& rFallback : aFallbacks)
182 lookupTable.emplace_back( rLocale,
"Unicode",
xUCI );
191 CharacterClassificationImpl::getImplementationName()
193 return "com.sun.star.i18n.CharacterClassification";
197 CharacterClassificationImpl::supportsService(
const OUString& rServiceName)
203 CharacterClassificationImpl::getSupportedServiceNames()
205 return {
"com.sun.star.i18n.CharacterClassification" };
210 extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface *
212 css::uno::XComponentContext *context,
213 css::uno::Sequence<css::uno::Any>
const &)
std::optional< lookupTableItem > cachedItem
virtual OUString SAL_CALL toTitle(const OUString &Text, sal_Int32 nPos, sal_Int32 nCount, const css::lang::Locale &rLocale) override
virtual OUString SAL_CALL toUpper(const OUString &Text, sal_Int32 nPos, sal_Int32 nCount, const css::lang::Locale &rLocale) override
virtual sal_Int16 SAL_CALL getCharacterDirection(const OUString &Text, sal_Int32 nPos) override
virtual sal_Int16 SAL_CALL getScript(const OUString &Text, sal_Int32 nPos) override
virtual sal_Int16 SAL_CALL getType(const OUString &Text, sal_Int32 nPos) override
SAL_DLLPUBLIC_EXPORT css::uno::XInterface * com_sun_star_i18n_CharacterClassification_get_implementation(css::uno::XComponentContext *context, css::uno::Sequence< css::uno::Any > const &)
bool CPPUHELPER_DLLPUBLIC supportsService(css::lang::XServiceInfo *implementation, rtl::OUString const &name)
css::uno::Reference< css::uno::XComponentContext > m_xContext
css::uno::Reference< XCharacterClassification > const & getLocaleSpecificCharacterClassification(const css::lang::Locale &rLocale)
static OUString getFirstLocaleServiceName(const css::lang::Locale &rLocale)
Generates a _ or (if Language=="qlt") string suitable as part of service...
std::vector< lookupTableItem > lookupTable
Constant values shared between i18npool and, for example, the number formatter.
virtual css::i18n::ParseResult SAL_CALL parsePredefinedToken(sal_Int32 nTokenType, const OUString &Text, sal_Int32 nPos, const css::lang::Locale &rLocale, sal_Int32 nStartCharFlags, const OUString &userDefinedCharactersStart, sal_Int32 nContCharFlags, const OUString &userDefinedCharactersCont) override
static::std::vector< OUString > getFallbackLocaleServiceNames(const css::lang::Locale &rLocale)
Generates fallback strings suitable as parts of service names, excluding the one obtained via getFirs...
virtual css::i18n::ParseResult SAL_CALL parseAnyToken(const OUString &Text, sal_Int32 nPos, const css::lang::Locale &rLocale, sal_Int32 nStartCharFlags, const OUString &userDefinedCharactersStart, sal_Int32 nContCharFlags, const OUString &userDefinedCharactersCont) override
virtual ~CharacterClassificationImpl() override
virtual OUString SAL_CALL toLower(const OUString &Text, sal_Int32 nPos, sal_Int32 nCount, const css::lang::Locale &rLocale) override
virtual sal_Int32 SAL_CALL getCharacterType(const OUString &text, sal_Int32 nPos, const css::lang::Locale &rLocale) override
bool createLocaleSpecificCharacterClassification(const OUString &serviceName, const css::lang::Locale &rLocale)
Reference< XComponentContext > m_xContext
virtual sal_Int32 SAL_CALL getStringType(const OUString &text, sal_Int32 nPos, sal_Int32 nCount, const css::lang::Locale &rLocale) override
css::uno::Reference< XCharacterClassification > xUCI