21#include <com/sun/star/i18n/XLocaleData5.hpp>
26#include <com/sun/star/uno/Sequence.h>
27#include <com/sun/star/i18n/Calendar.hpp>
28#include <com/sun/star/i18n/LocaleDataItem2.hpp>
29#include <com/sun/star/i18n/UnicodeScript.hpp>
31#include <rtl/ustring.hxx>
35#include <osl/module.hxx>
38#include <com/sun/star/lang/XServiceInfo.hpp>
47struct LocaleDataLookupTableItem;
61 bool equals(
const css::lang::Locale& rLocale)
const
69 css::i18n::XLocaleData5,
70 css::lang::XServiceInfo
79 static css::uno::Sequence< css::i18n::CalendarItem >
downcastCalendarItems(
const css::uno::Sequence< css::i18n::CalendarItem2 > & rCi );
80 static css::i18n::Calendar
downcastCalendar(
const css::i18n::Calendar2 & rC );
89 virtual css::i18n::LanguageCountryInfo SAL_CALL
getLanguageCountryInfo(
const css::lang::Locale& rLocale )
override;
90 virtual css::i18n::LocaleDataItem SAL_CALL
getLocaleItem(
const css::lang::Locale& rLocale )
override;
91 virtual css::uno::Sequence< css::i18n::Calendar2 > SAL_CALL
getAllCalendars2(
const css::lang::Locale& rLocale )
override;
92 virtual css::uno::Sequence< css::i18n::Calendar > SAL_CALL
getAllCalendars(
const css::lang::Locale& rLocale )
override;
93 virtual css::uno::Sequence< css::i18n::Currency > SAL_CALL
getAllCurrencies(
const css::lang::Locale& rLocale )
override;
94 virtual css::uno::Sequence< css::i18n::Currency2 > SAL_CALL
getAllCurrencies2(
const css::lang::Locale& rLocale )
override;
95 virtual css::uno::Sequence< css::i18n::FormatElement > SAL_CALL
getAllFormats(
const css::lang::Locale& rLocale )
override;
96 virtual css::uno::Sequence< css::i18n::Implementation > SAL_CALL
getCollatorImplementations(
const css::lang::Locale& rLocale )
override;
99 virtual css::uno::Sequence< OUString > SAL_CALL
getTransliterations(
const css::lang::Locale& rLocale )
override;
100 virtual css::i18n::ForbiddenCharacters SAL_CALL
getForbiddenCharacters(
const css::lang::Locale& rLocale )
override;
101 virtual css::uno::Sequence< OUString > SAL_CALL
getReservedWord(
const css::lang::Locale& rLocale )
override ;
106 virtual css::uno::Sequence< OUString > SAL_CALL
getSearchOptions(
const css::lang::Locale& rLocale )
override;
107 virtual css::uno::Sequence< OUString > SAL_CALL
getCollationOptions(
const css::lang::Locale& rLocale )
override;
111 css::uno::Sequence< css::uno::Reference< css::container::XIndexAccess > >
getOutlineNumberingLevels(
const css::lang::Locale& rLocale );
117 virtual css::i18n::LocaleDataItem2 SAL_CALL
getLocaleItem2(
const css::lang::Locale& rLocale )
override;
121 css::uno::Sequence< OUString >
getIndexAlgorithm(
const css::lang::Locale& rLocale );
126 const css::lang::Locale& rLocale, std::u16string_view algorithm );
130 css::uno::Sequence< css::i18n::UnicodeScript >
getUnicodeScripts(
const css::lang::Locale& rLocale );
132 css::uno::Sequence< OUString >
getFollowPageWords(
const css::lang::Locale& rLocale );
134 bool hasPhonetic(
const css::lang::Locale& rLocale );
136 bool isPhonetic(
const css::lang::Locale& rLocale, std::u16string_view algorithm );
151 oslGenericFunction
getFunctionSymbol(
const css::lang::Locale& rLocale,
const char* pFunction );
152 OUString
const *
getIndexArray(
const css::lang::Locale& rLocale, sal_Int16& indexCount);
155 css::uno::Sequence< css::i18n::CalendarItem2 > &
157 const css::lang::Locale& rLocale,
158 const css::uno::Sequence< css::i18n::Calendar2 >& calendarsSeq,
165 OUString
const * allCalendars,
166 sal_Int16 & rnOffset,
167 const sal_Int16 nWhichItem,
168 const sal_Int16 nCalendar,
169 const css::lang::Locale & rLocale,
170 const css::uno::Sequence< css::i18n::Calendar2 > & calendarsSeq );
static rtl::Reference< LocaleDataImpl > get()
virtual OUString SAL_CALL getImplementationName() override
virtual css::i18n::LanguageCountryInfo SAL_CALL getLanguageCountryInfo(const css::lang::Locale &rLocale) override
virtual css::uno::Sequence< css::i18n::FormatElement > SAL_CALL getAllFormats(const css::lang::Locale &rLocale) override
css::uno::Sequence< css::uno::Reference< css::container::XIndexAccess > > getOutlineNumberingLevels(const css::lang::Locale &rLocale)
static css::uno::Sequence< css::i18n::CalendarItem > downcastCalendarItems(const css::uno::Sequence< css::i18n::CalendarItem2 > &rCi)
css::uno::Sequence< css::i18n::CalendarItem2 > & getCalendarItemByName(const OUString &name, const css::lang::Locale &rLocale, const css::uno::Sequence< css::i18n::Calendar2 > &calendarsSeq, sal_Int16 item)
bool hasPhonetic(const css::lang::Locale &rLocale)
virtual css::uno::Sequence< css::i18n::Currency2 > SAL_CALL getAllCurrencies2(const css::lang::Locale &rLocale) override
virtual css::uno::Sequence< OUString > SAL_CALL getDateAcceptancePatterns(const css::lang::Locale &rLocale) override
virtual css::uno::Sequence< OUString > SAL_CALL getReservedWord(const css::lang::Locale &rLocale) override
css::i18n::Calendar2 ref_cal
virtual ~LocaleDataImpl() override
virtual css::uno::Sequence< OUString > SAL_CALL getSearchOptions(const css::lang::Locale &rLocale) override
css::uno::Sequence< OUString > getBreakIteratorRules(const css::lang::Locale &rLocale)
virtual css::uno::Sequence< css::i18n::Currency > SAL_CALL getAllCurrencies(const css::lang::Locale &rLocale) override
virtual css::i18n::LocaleDataItem SAL_CALL getLocaleItem(const css::lang::Locale &rLocale) override
virtual css::uno::Sequence< OUString > SAL_CALL getTransliterations(const css::lang::Locale &rLocale) override
css::uno::Sequence< OUString > getFollowPageWords(const css::lang::Locale &rLocale)
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::uno::Sequence< css::i18n::Calendar > SAL_CALL getAllCalendars(const css::lang::Locale &rLocale) override
virtual css::i18n::LocaleDataItem2 SAL_CALL getLocaleItem2(const css::lang::Locale &rLocale) override
css::uno::Sequence< css::uno::Sequence< css::beans::PropertyValue > > getContinuousNumberingLevels(const css::lang::Locale &rLocale)
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
OUString getIndexModuleByAlgorithm(const css::lang::Locale &rLocale, std::u16string_view algorithm)
static OUString getFirstLocaleServiceName(const css::lang::Locale &rLocale)
Generates a <Language>_<Country> or <Variant> (if Language=="qlt") string suitable as part of service...
bool isPhonetic(const css::lang::Locale &rLocale, std::u16string_view algorithm)
virtual css::uno::Sequence< OUString > SAL_CALL getCollationOptions(const css::lang::Locale &rLocale) override
css::uno::Sequence< css::i18n::UnicodeScript > getUnicodeScripts(const css::lang::Locale &rLocale)
virtual sal_Bool SAL_CALL supportsService(const OUString &ServiceName) override
OUString const * getIndexArrayForAlgorithm(const css::lang::Locale &rLocale, std::u16string_view rAlgorithm)
css::uno::Sequence< css::i18n::CalendarItem2 > getCalendarItems(OUString const *allCalendars, sal_Int16 &rnOffset, const sal_Int16 nWhichItem, const sal_Int16 nCalendar, const css::lang::Locale &rLocale, const css::uno::Sequence< css::i18n::Calendar2 > &calendarsSeq)
Helper to obtain a sequence of days, months, gmonths or eras.
virtual css::uno::Sequence< css::lang::Locale > SAL_CALL getAllInstalledLocaleNames() override
css::uno::Sequence< OUString > getIndexAlgorithm(const css::lang::Locale &rLocale)
virtual css::uno::Sequence< css::i18n::Implementation > SAL_CALL getCollatorImplementations(const css::lang::Locale &rLocale) override
OUString getHangingCharacters(const css::lang::Locale &rLocale)
OUString getCollatorRuleByAlgorithm(const css::lang::Locale &rLocale, std::u16string_view algorithm)
OUString const * getIndexArray(const css::lang::Locale &rLocale, sal_Int16 &indexCount)
oslGenericFunction getFunctionSymbol(const css::lang::Locale &rLocale, const char *pFunction)
OUString getDefaultIndexAlgorithm(const css::lang::Locale &rLocale)
virtual css::i18n::ForbiddenCharacters SAL_CALL getForbiddenCharacters(const css::lang::Locale &rLocale) override
virtual css::uno::Sequence< css::i18n::Calendar2 > SAL_CALL getAllCalendars2(const css::lang::Locale &rLocale) override
OUString getIndexKeysByAlgorithm(const css::lang::Locale &rLocale, std::u16string_view algorithm)
static css::i18n::Calendar downcastCalendar(const css::i18n::Calendar2 &rC)
::std::optional< LocaleDataLookupTableItem > moCachedItem
Constant values shared between i18npool and, for example, the number formatter.
bool equals(const css::lang::Locale &rLocale) const
LocaleDataLookupTableItem(const char *name, osl::Module *m, const char *lname)
css::lang::Locale aLocale