diff options
author | Noel Grandin <noelgrandin@gmail.com> | 2020-07-29 20:04:44 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2020-07-29 22:16:50 +0200 |
commit | 155c056b1d4674d5ff73bbb5e1ad1dcd1e6aae36 (patch) | |
tree | ab314dc29d575f546fcbd9ea9a03693d7d64343c /i18npool | |
parent | 50ceac91a4ac2057847e7d9807f5cb614e6ff755 (diff) |
i18npool: create instances with uno constructors
See tdf#74608 for motivation.
Change-Id: I814512ccc546bd015558a8122f0d2e3803437e38
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99722
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'i18npool')
-rw-r--r-- | i18npool/inc/calendar_gregorian.hxx | 8 | ||||
-rw-r--r-- | i18npool/inc/indexentrysupplier_ja_phonetic.hxx | 13 | ||||
-rw-r--r-- | i18npool/source/calendar/calendar_gregorian.cxx | 23 | ||||
-rw-r--r-- | i18npool/source/registerservices/registerservices.cxx | 297 | ||||
-rw-r--r-- | i18npool/util/i18npool.component | 138 |
5 files changed, 220 insertions, 259 deletions
diff --git a/i18npool/inc/calendar_gregorian.hxx b/i18npool/inc/calendar_gregorian.hxx index 10bde05b2027..f66300d42e0a 100644 --- a/i18npool/inc/calendar_gregorian.hxx +++ b/i18npool/inc/calendar_gregorian.hxx @@ -151,10 +151,16 @@ class Calendar_hanja final : public Calendar_gregorian public: // Constructors Calendar_hanja(); - virtual void SAL_CALL loadCalendar(const OUString& uniqueID, const css::lang::Locale& rLocale) override; virtual OUString SAL_CALL getDisplayName(sal_Int16 nCalendarDisplayIndex, sal_Int16 nIdx, sal_Int16 nNameType) override; }; +class Calendar_hanja_yoil final : public Calendar_gregorian +{ +public: + // Constructors + Calendar_hanja_yoil(); + virtual OUString SAL_CALL getDisplayName(sal_Int16 nCalendarDisplayIndex, sal_Int16 nIdx, sal_Int16 nNameType) override; +}; class Calendar_gengou final : public Calendar_gregorian diff --git a/i18npool/inc/indexentrysupplier_ja_phonetic.hxx b/i18npool/inc/indexentrysupplier_ja_phonetic.hxx index cced5597c22d..e376796ad0d1 100644 --- a/i18npool/inc/indexentrysupplier_ja_phonetic.hxx +++ b/i18npool/inc/indexentrysupplier_ja_phonetic.hxx @@ -42,21 +42,22 @@ public: const css::lang::Locale& rLocale2 ) override; }; -#define INDEXENTRYSUPPLIER_JA_PHONETIC( algorithm ) \ +#define INDEXENTRYSUPPLIER_JA_PHONETIC( algorithm, algo_descr ) \ class IndexEntrySupplier_##algorithm final : public IndexEntrySupplier_ja_phonetic {\ public:\ IndexEntrySupplier_##algorithm (const css::uno::Reference < css::uno::XComponentContext >& rxContext) : IndexEntrySupplier_ja_phonetic (rxContext) {\ - implementationName = "com.sun.star.i18n.IndexEntrySupplier_"#algorithm;\ + implementationName = "com.sun.star.i18n.IndexEntrySupplier_"#algo_descr;\ };\ virtual sal_Bool SAL_CALL loadAlgorithm(\ const css::lang::Locale& rLocale,\ const OUString& SortAlgorithm, sal_Int32 collatorOptions ) override;\ }; -INDEXENTRYSUPPLIER_JA_PHONETIC( ja_phonetic_alphanumeric_first_by_syllable ) -INDEXENTRYSUPPLIER_JA_PHONETIC( ja_phonetic_alphanumeric_first_by_consonant ) -INDEXENTRYSUPPLIER_JA_PHONETIC( ja_phonetic_alphanumeric_last_by_syllable ) -INDEXENTRYSUPPLIER_JA_PHONETIC( ja_phonetic_alphanumeric_last_by_consonant ) +/** descriptions formed by concatenating strings here must match names in .component file */ +INDEXENTRYSUPPLIER_JA_PHONETIC( ja_phonetic_alphanumeric_first_by_syllable, " (alphanumeric first) (grouped by syllable)" ) +INDEXENTRYSUPPLIER_JA_PHONETIC( ja_phonetic_alphanumeric_first_by_consonant, " (alphanumeric first) (grouped by consonant)" ) +INDEXENTRYSUPPLIER_JA_PHONETIC( ja_phonetic_alphanumeric_last_by_syllable, " (alphanumeric last) (grouped by consonant)" ) +INDEXENTRYSUPPLIER_JA_PHONETIC( ja_phonetic_alphanumeric_last_by_consonant, " (alphanumeric last) (grouped by consonant)" ) } #endif diff --git a/i18npool/source/calendar/calendar_gregorian.cxx b/i18npool/source/calendar/calendar_gregorian.cxx index 3aa516814538..69fb08797ab3 100644 --- a/i18npool/source/calendar/calendar_gregorian.cxx +++ b/i18npool/source/calendar/calendar_gregorian.cxx @@ -201,14 +201,27 @@ Calendar_hanja::getDisplayName( sal_Int16 displayIndex, sal_Int16 idx, sal_Int16 return Calendar_gregorian::getDisplayName( displayIndex, idx, nameType ); } -void SAL_CALL -Calendar_hanja::loadCalendar( const OUString& /*uniqueID*/, const css::lang::Locale& rLocale ) + +Calendar_hanja_yoil::Calendar_hanja_yoil() +{ + cCalendar = "com.sun.star.i18n.Calendar_Calendar_hanja_yoil"; +} + +OUString SAL_CALL +Calendar_hanja_yoil::getDisplayName( sal_Int16 displayIndex, sal_Int16 idx, sal_Int16 nameType ) { - // Since this class could be called by service name 'hanja_yoil', we have to - // rename uniqueID to get right calendar defined in locale data. - Calendar_gregorian::loadCalendar("hanja", rLocale); + if ( displayIndex == CalendarDisplayIndex::AM_PM ) { + // Am/Pm string for Korean Hanja calendar will refer to Japanese locale + css::lang::Locale jaLocale("ja", OUString(), OUString()); + if (idx == 0) return LocaleDataImpl::get()->getLocaleItem(jaLocale).timeAM; + else if (idx == 1) return LocaleDataImpl::get()->getLocaleItem(jaLocale).timePM; + else throw ERROR; + } + else + return Calendar_gregorian::getDisplayName( displayIndex, idx, nameType ); } + const Era gengou_eraArray[] = { {1868, 1, 1, 0}, // Meiji {1912, 7, 30, 0}, // Taisho diff --git a/i18npool/source/registerservices/registerservices.cxx b/i18npool/source/registerservices/registerservices.cxx index 4db033335878..8a5dc3c52e3c 100644 --- a/i18npool/source/registerservices/registerservices.cxx +++ b/i18npool/source/registerservices/registerservices.cxx @@ -71,27 +71,29 @@ using namespace i18npool; new ImplName) ); \ } -#define IMPL_CREATEINSTANCE_CTX( ImplName ) \ - static uno::Reference< uno::XInterface > \ - ImplName##_CreateInstance( \ - const uno::Reference< \ - lang::XMultiServiceFactory >& rxMSF ) \ -{ \ - return uno::Reference < \ - uno::XInterface >( static_cast<cppu::OWeakObject*>( \ - new ImplName( comphelper::getComponentContext(rxMSF) )) ); \ -} - -typedef uno::Reference< - uno::XInterface > (*FN_CreateInstance)( - const uno::Reference< - lang::XMultiServiceFactory >& ); - #define IMPL_TRANSLITERATION_ITEM( implName ) \ { TRLT_SERVICELNAME_L10N, \ TRLT_IMPLNAME_PREFIX #implName, \ &implName##_CreateInstance } +#define IMPL_UNO_CONSTRUCTOR( ImplName ) \ +extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * \ +i18npool_##ImplName##_get_implementation( \ + css::uno::XComponentContext *, \ + css::uno::Sequence<css::uno::Any> const &) \ +{ \ + return cppu::acquire(new ImplName()); \ +} + +#define IMPL_UNO_CONSTRUCTOR_CTX( ImplName ) \ +extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * \ +i18npool_##ImplName##_get_implementation( \ + css::uno::XComponentContext * context, \ + css::uno::Sequence<css::uno::Any> const &) \ +{ \ + return cppu::acquire(new ImplName(context)); \ +} + // At least for iOS it doesn't hurt if we have lots of functions here // generated by these lovely macros that get compiled, but then no @@ -102,35 +104,53 @@ typedef uno::Reference< // -Wl,--gc_sections. It's mainly for iOS and Android that the // --with-locales option is intended anyway. -IMPL_CREATEINSTANCE_CTX( IndexEntrySupplier ) -IMPL_CREATEINSTANCE_CTX( IndexEntrySupplier_asian ) -IMPL_CREATEINSTANCE_CTX( IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_syllable ) -IMPL_CREATEINSTANCE_CTX( IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_consonant ) -IMPL_CREATEINSTANCE_CTX( IndexEntrySupplier_ja_phonetic_alphanumeric_last_by_syllable ) -IMPL_CREATEINSTANCE_CTX( IndexEntrySupplier_ja_phonetic_alphanumeric_last_by_consonant ) -IMPL_CREATEINSTANCE_CTX( IndexEntrySupplier_Unicode ) -IMPL_CREATEINSTANCE_CTX( CalendarImpl ) -IMPL_CREATEINSTANCE( Calendar_gregorian ) -IMPL_CREATEINSTANCE( Calendar_hanja ) -IMPL_CREATEINSTANCE( Calendar_gengou ) -IMPL_CREATEINSTANCE( Calendar_ROC ) -IMPL_CREATEINSTANCE( Calendar_dangi ) -IMPL_CREATEINSTANCE( Calendar_hijri ) -IMPL_CREATEINSTANCE( Calendar_jewish ) -IMPL_CREATEINSTANCE( Calendar_buddhist ) -IMPL_CREATEINSTANCE( BreakIterator_ja ) -IMPL_CREATEINSTANCE( BreakIterator_zh ) -IMPL_CREATEINSTANCE( BreakIterator_zh_TW ) -IMPL_CREATEINSTANCE( BreakIterator_ko ) -IMPL_CREATEINSTANCE( BreakIterator_th ) -IMPL_CREATEINSTANCE_CTX( ChapterCollator ) -IMPL_CREATEINSTANCE( Collator_Unicode ) - -IMPL_CREATEINSTANCE( InputSequenceChecker_th ) -IMPL_CREATEINSTANCE( InputSequenceChecker_hi ) - -IMPL_CREATEINSTANCE_CTX( TextConversion_ko ) -IMPL_CREATEINSTANCE_CTX( TextConversion_zh ) +IMPL_UNO_CONSTRUCTOR_CTX( IndexEntrySupplier ) +IMPL_UNO_CONSTRUCTOR_CTX( IndexEntrySupplier_asian ) +#if WITH_LOCALE_ALL || WITH_LOCALE_ja +IMPL_UNO_CONSTRUCTOR_CTX( IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_syllable ) +IMPL_UNO_CONSTRUCTOR_CTX( IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_consonant ) +IMPL_UNO_CONSTRUCTOR_CTX( IndexEntrySupplier_ja_phonetic_alphanumeric_last_by_syllable ) +IMPL_UNO_CONSTRUCTOR_CTX( IndexEntrySupplier_ja_phonetic_alphanumeric_last_by_consonant ) +#endif +IMPL_UNO_CONSTRUCTOR_CTX( IndexEntrySupplier_Unicode ) +IMPL_UNO_CONSTRUCTOR_CTX( CalendarImpl ) +IMPL_UNO_CONSTRUCTOR( Calendar_gregorian ) +IMPL_UNO_CONSTRUCTOR( Calendar_hanja ) +IMPL_UNO_CONSTRUCTOR( Calendar_hanja_yoil ) +IMPL_UNO_CONSTRUCTOR( Calendar_gengou ) +IMPL_UNO_CONSTRUCTOR( Calendar_ROC ) +IMPL_UNO_CONSTRUCTOR( Calendar_dangi ) +IMPL_UNO_CONSTRUCTOR( Calendar_hijri ) +IMPL_UNO_CONSTRUCTOR( Calendar_jewish ) +IMPL_UNO_CONSTRUCTOR( Calendar_buddhist ) +#if WITH_LOCALE_ALL || WITH_LOCALE_ja + IMPL_UNO_CONSTRUCTOR( BreakIterator_ja ) +#endif +#if WITH_LOCALE_ALL || WITH_LOCALE_zh +IMPL_UNO_CONSTRUCTOR( BreakIterator_zh ) +IMPL_UNO_CONSTRUCTOR( BreakIterator_zh_TW ) +#endif +#if WITH_LOCALE_ALL || WITH_LOCALE_ko +IMPL_UNO_CONSTRUCTOR( BreakIterator_ko ) +#endif +#if WITH_LOCALE_ALL || WITH_LOCALE_th +IMPL_UNO_CONSTRUCTOR( BreakIterator_th ) +#endif +IMPL_UNO_CONSTRUCTOR_CTX( ChapterCollator ) +IMPL_UNO_CONSTRUCTOR( Collator_Unicode ) + +#if WITH_LOCALE_ALL || WITH_LOCALE_th +IMPL_UNO_CONSTRUCTOR( InputSequenceChecker_th ) +#endif +#if WITH_LOCALE_ALL || WITH_LOCALE_hi +IMPL_UNO_CONSTRUCTOR( InputSequenceChecker_hi ) +#endif +#if WITH_LOCALE_ALL || WITH_LOCALE_ko +IMPL_UNO_CONSTRUCTOR_CTX( TextConversion_ko ) +#endif +#if WITH_LOCALE_ALL || WITH_LOCALE_zh +IMPL_UNO_CONSTRUCTOR_CTX( TextConversion_zh ) +#endif IMPL_CREATEINSTANCE( Transliteration_u2l ) IMPL_CREATEINSTANCE( Transliteration_l2u ) @@ -178,7 +198,7 @@ IMPL_CREATEINSTANCE( NumToCharHangul_ko ) IMPL_CREATEINSTANCE( NumToCharLower_ko ) IMPL_CREATEINSTANCE( NumToCharUpper_ko ) IMPL_CREATEINSTANCE( NumToCharIndic_ar ) -IMPL_CREATEINSTANCE( NumToCharEastIndic_ar ) +IMPL_UNO_CONSTRUCTOR( NumToCharEastIndic_ar ) IMPL_CREATEINSTANCE( NumToCharIndic_hi ) IMPL_CREATEINSTANCE( NumToChar_th ) @@ -186,23 +206,33 @@ IMPL_CREATEINSTANCE( CharToNumLower_zh_CN ) IMPL_CREATEINSTANCE( CharToNumUpper_zh_CN ) IMPL_CREATEINSTANCE( CharToNumLower_zh_TW ) IMPL_CREATEINSTANCE( CharToNumUpper_zh_TW ) -IMPL_CREATEINSTANCE( CharToNumFullwidth ) -IMPL_CREATEINSTANCE( CharToNumKanjiShort_ja_JP ) -IMPL_CREATEINSTANCE( CharToNumKanjiTraditional_ja_JP ) -IMPL_CREATEINSTANCE( CharToNumHangul_ko ) -IMPL_CREATEINSTANCE( CharToNumLower_ko ) -IMPL_CREATEINSTANCE( CharToNumUpper_ko ) -IMPL_CREATEINSTANCE( CharToNumIndic_ar ) -IMPL_CREATEINSTANCE( CharToNumEastIndic_ar ) -IMPL_CREATEINSTANCE( CharToNumIndic_hi ) -IMPL_CREATEINSTANCE( CharToNum_th ) - -IMPL_CREATEINSTANCE( NumToTextLower_zh_CN ) -IMPL_CREATEINSTANCE( NumToTextUpper_zh_CN ) -IMPL_CREATEINSTANCE( NumToTextLower_zh_TW ) -IMPL_CREATEINSTANCE( NumToTextUpper_zh_TW ) -IMPL_CREATEINSTANCE( NumToTextFullwidth_zh_CN ) -IMPL_CREATEINSTANCE( NumToTextFullwidth_zh_TW ) +#if WITH_LOCALE_ALL || WITH_LOCALE_ja +IMPL_UNO_CONSTRUCTOR( CharToNumFullwidth ) +IMPL_UNO_CONSTRUCTOR( CharToNumKanjiShort_ja_JP ) +IMPL_UNO_CONSTRUCTOR( CharToNumKanjiTraditional_ja_JP ) +#endif +#if WITH_LOCALE_ALL || WITH_LOCALE_ko +IMPL_UNO_CONSTRUCTOR( CharToNumHangul_ko ) +IMPL_UNO_CONSTRUCTOR( CharToNumLower_ko ) +IMPL_UNO_CONSTRUCTOR( CharToNumUpper_ko ) +#endif +IMPL_UNO_CONSTRUCTOR( CharToNumIndic_ar ) +IMPL_UNO_CONSTRUCTOR( CharToNumEastIndic_ar ) +#if WITH_LOCALE_ALL || WITH_LOCALE_hi +IMPL_UNO_CONSTRUCTOR( CharToNumIndic_hi ) +#endif +#if WITH_LOCALE_ALL || WITH_LOCALE_th +IMPL_UNO_CONSTRUCTOR( CharToNum_th ) +#endif + +#if WITH_LOCALE_ALL || WITH_LOCALE_zh +IMPL_UNO_CONSTRUCTOR( NumToTextLower_zh_CN ) +IMPL_UNO_CONSTRUCTOR( NumToTextUpper_zh_CN ) +IMPL_UNO_CONSTRUCTOR( NumToTextLower_zh_TW ) +IMPL_UNO_CONSTRUCTOR( NumToTextUpper_zh_TW ) +IMPL_UNO_CONSTRUCTOR( NumToTextFullwidth_zh_CN ) +IMPL_UNO_CONSTRUCTOR( NumToTextFullwidth_zh_TW ) +#endif IMPL_CREATEINSTANCE( NumToTextFullwidth_ja_JP ) IMPL_CREATEINSTANCE( NumToTextFullwidth_ko ) IMPL_CREATEINSTANCE( NumToTextKanjiLongModern_ja_JP ) @@ -249,6 +279,9 @@ IMPL_CREATEINSTANCE( halfwidthToFullwidthLikeJIS ) namespace { +typedef uno::Reference< uno::XInterface > (*FN_CreateInstance)( + const uno::Reference< lang::XMultiServiceFactory >& ); + struct InstancesArray { const char* pServiceNm; const char* pImplementationNm; @@ -258,117 +291,6 @@ struct InstancesArray { } const InstancesArray aInstances[] = { - { "com.sun.star.i18n.IndexEntrySupplier", - "com.sun.star.i18n.IndexEntrySupplier", - &IndexEntrySupplier_CreateInstance }, - { "com.sun.star.i18n.IndexEntrySupplier_asian", - "com.sun.star.i18n.IndexEntrySupplier_asian", - &IndexEntrySupplier_asian_CreateInstance }, -#if WITH_LOCALE_ALL || WITH_LOCALE_ja - { "com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first)", - "com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first)", - &IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_syllable_CreateInstance }, - { "com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last)", - "com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last)", - &IndexEntrySupplier_ja_phonetic_alphanumeric_last_by_syllable_CreateInstance }, - { "com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first) (grouped by syllable)", - "com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first) (grouped by syllable)", - &IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_syllable_CreateInstance }, - { "com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first) (grouped by consonant)", - "com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first) (grouped by consonant)", - &IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_consonant_CreateInstance }, - { "com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last) (grouped by syllable)", - "com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last) (grouped by syllable)", - &IndexEntrySupplier_ja_phonetic_alphanumeric_last_by_syllable_CreateInstance }, - { "com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last) (grouped by consonant)", - "com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last) (grouped by consonant)", - &IndexEntrySupplier_ja_phonetic_alphanumeric_last_by_consonant_CreateInstance }, -#endif - { "com.sun.star.i18n.IndexEntrySupplier_Unicode", - "com.sun.star.i18n.IndexEntrySupplier_Unicode", - &IndexEntrySupplier_Unicode_CreateInstance }, - { "com.sun.star.i18n.LocaleCalendar", - "com.sun.star.i18n.CalendarImpl", - &CalendarImpl_CreateInstance }, - { "com.sun.star.i18n.LocaleCalendar2", - "com.sun.star.i18n.CalendarImpl", - &CalendarImpl_CreateInstance }, - { "com.sun.star.i18n.Calendar_gregorian", - "com.sun.star.i18n.Calendar_gregorian", - &Calendar_gregorian_CreateInstance }, - { "com.sun.star.i18n.Calendar_gengou", - "com.sun.star.i18n.Calendar_gengou", - &Calendar_gengou_CreateInstance }, - { "com.sun.star.i18n.Calendar_ROC", - "com.sun.star.i18n.Calendar_ROC", - &Calendar_ROC_CreateInstance }, - { "com.sun.star.i18n.Calendar_dangi", - "com.sun.star.i18n.Calendar_dangi", - &Calendar_dangi_CreateInstance }, - { "com.sun.star.i18n.Calendar_hanja_yoil", - "com.sun.star.i18n.Calendar_hanja_yoil", - &Calendar_hanja_CreateInstance }, - { "com.sun.star.i18n.Calendar_hanja", - "com.sun.star.i18n.Calendar_hanja", - &Calendar_hanja_CreateInstance }, - { "com.sun.star.i18n.Calendar_hijri", - "com.sun.star.i18n.Calendar_hijri", - &Calendar_hijri_CreateInstance }, - { "com.sun.star.i18n.Calendar_jewish", - "com.sun.star.i18n.Calendar_jewish", - &Calendar_jewish_CreateInstance }, - { "com.sun.star.i18n.Calendar_buddhist", - "com.sun.star.i18n.Calendar_buddhist", - &Calendar_buddhist_CreateInstance }, -#if WITH_LOCALE_ALL || WITH_LOCALE_ja - { "com.sun.star.i18n.BreakIterator_ja", - "com.sun.star.i18n.BreakIterator_ja", - &BreakIterator_ja_CreateInstance }, -#endif -#if WITH_LOCALE_ALL || WITH_LOCALE_zh - { "com.sun.star.i18n.BreakIterator_zh", - "com.sun.star.i18n.BreakIterator_zh", - &BreakIterator_zh_CreateInstance }, - { "com.sun.star.i18n.BreakIterator_zh_TW", - "com.sun.star.i18n.BreakIterator_zh_TW", - &BreakIterator_zh_TW_CreateInstance }, -#endif -#if WITH_LOCALE_ALL || WITH_LOCALE_ko - { "com.sun.star.i18n.BreakIterator_ko", - "com.sun.star.i18n.BreakIterator_ko", - &BreakIterator_ko_CreateInstance }, -#endif -#if WITH_LOCALE_ALL || WITH_LOCALE_th - { "com.sun.star.i18n.BreakIterator_th", - "com.sun.star.i18n.BreakIterator_th", - &BreakIterator_th_CreateInstance }, -#endif - { "com.sun.star.i18n.ChapterCollator", - "com.sun.star.i18n.ChapterCollator", - &ChapterCollator_CreateInstance }, - { "com.sun.star.i18n.Collator_Unicode", - "com.sun.star.i18n.Collator_Unicode", - &Collator_Unicode_CreateInstance }, -#if WITH_LOCALE_ALL || WITH_LOCALE_th - { "com.sun.star.i18n.InputSequenceChecker_th", - "com.sun.star.i18n.InputSequenceChecker_th", - &InputSequenceChecker_th_CreateInstance }, -#endif -#if WITH_LOCALE_ALL || WITH_LOCALE_hi - { "com.sun.star.i18n.InputSequenceChecker_hi", - "com.sun.star.i18n.InputSequenceChecker_hi", - &InputSequenceChecker_hi_CreateInstance }, -#endif -#if WITH_LOCALE_ALL || WITH_LOCALE_ko - { "com.sun.star.i18n.TextConversion_ko", - "com.sun.star.i18n.TextConversion_ko", - &TextConversion_ko_CreateInstance }, -#endif -#if WITH_LOCALE_ALL || WITH_LOCALE_zh - { "com.sun.star.i18n.TextConversion_zh", - "com.sun.star.i18n.TextConversion_zh", - &TextConversion_zh_CreateInstance }, -#endif { TRLT_SERVICELNAME_L10N, TRLT_IMPLNAME_PREFIX "UPPERCASE_LOWERCASE", &Transliteration_u2l_CreateInstance }, @@ -443,7 +365,6 @@ const InstancesArray aInstances[] = { IMPL_TRANSLITERATION_ITEM (NumToCharHangul_ko), #endif IMPL_TRANSLITERATION_ITEM (NumToCharIndic_ar), - IMPL_TRANSLITERATION_ITEM (NumToCharEastIndic_ar), #if WITH_LOCALE_ALL || WITH_LOCALE_hi IMPL_TRANSLITERATION_ITEM (NumToCharIndic_hi), #endif @@ -457,33 +378,7 @@ const InstancesArray aInstances[] = { IMPL_TRANSLITERATION_ITEM (CharToNumUpper_zh_TW), IMPL_TRANSLITERATION_ITEM (CharToNumLower_zh_TW), #endif -#if WITH_LOCALE_ALL || WITH_LOCALE_ja - IMPL_TRANSLITERATION_ITEM (CharToNumFullwidth), - IMPL_TRANSLITERATION_ITEM (CharToNumKanjiShort_ja_JP), - IMPL_TRANSLITERATION_ITEM (CharToNumKanjiTraditional_ja_JP), -#endif -#if WITH_LOCALE_ALL || WITH_LOCALE_ko - IMPL_TRANSLITERATION_ITEM (CharToNumLower_ko), - IMPL_TRANSLITERATION_ITEM (CharToNumUpper_ko), - IMPL_TRANSLITERATION_ITEM (CharToNumHangul_ko), -#endif - IMPL_TRANSLITERATION_ITEM (CharToNumIndic_ar), - IMPL_TRANSLITERATION_ITEM (CharToNumEastIndic_ar), -#if WITH_LOCALE_ALL || WITH_LOCALE_hi - IMPL_TRANSLITERATION_ITEM (CharToNumIndic_hi), -#endif -#if WITH_LOCALE_ALL || WITH_LOCALE_th - IMPL_TRANSLITERATION_ITEM (CharToNum_th), -#endif -#if WITH_LOCALE_ALL || WITH_LOCALE_zh - IMPL_TRANSLITERATION_ITEM (NumToTextUpper_zh_CN), - IMPL_TRANSLITERATION_ITEM (NumToTextLower_zh_CN), - IMPL_TRANSLITERATION_ITEM (NumToTextUpper_zh_TW), - IMPL_TRANSLITERATION_ITEM (NumToTextLower_zh_TW), - IMPL_TRANSLITERATION_ITEM (NumToTextFullwidth_zh_CN), - IMPL_TRANSLITERATION_ITEM (NumToTextFullwidth_zh_TW), -#endif #if WITH_LOCALE_ALL || WITH_LOCALE_ja IMPL_TRANSLITERATION_ITEM (NumToTextFullwidth_ja_JP), #endif diff --git a/i18npool/util/i18npool.component b/i18npool/util/i18npool.component index 0b419d2f80f5..9af6c787dc91 100644 --- a/i18npool/util/i18npool.component +++ b/i18npool/util/i18npool.component @@ -27,53 +27,69 @@ constructor="com_sun_star_i18n_BreakIterator_Unicode_get_implementation"> <service name="com.sun.star.i18n.BreakIterator_Unicode"/> </implementation> - <implementation name="com.sun.star.i18n.BreakIterator_ja"> + <implementation name="com.sun.star.i18n.BreakIterator_ja" + constructor="i18npool_BreakIterator_ja_get_implementation"> <service name="com.sun.star.i18n.BreakIterator_ja"/> </implementation> - <implementation name="com.sun.star.i18n.BreakIterator_ko"> + <implementation name="com.sun.star.i18n.BreakIterator_ko" + constructor="i18npool_BreakIterator_ko_get_implementation"> <service name="com.sun.star.i18n.BreakIterator_ko"/> </implementation> - <implementation name="com.sun.star.i18n.BreakIterator_th"> + <implementation name="com.sun.star.i18n.BreakIterator_th" + constructor="i18npool_BreakIterator_th_get_implementation"> <service name="com.sun.star.i18n.BreakIterator_th"/> </implementation> - <implementation name="com.sun.star.i18n.BreakIterator_zh"> + <implementation name="com.sun.star.i18n.BreakIterator_zh" + constructor="i18npool_BreakIterator_zh_get_implementation"> <service name="com.sun.star.i18n.BreakIterator_zh"/> </implementation> - <implementation name="com.sun.star.i18n.BreakIterator_zh_TW"> + <implementation name="com.sun.star.i18n.BreakIterator_zh_TW" + constructor="i18npool_BreakIterator_zh_TW_get_implementation"> <service name="com.sun.star.i18n.BreakIterator_zh_TW"/> </implementation> - <implementation name="com.sun.star.i18n.CalendarImpl"> + <implementation name="com.sun.star.i18n.CalendarImpl" + constructor="i18npool_CalendarImpl_get_implementation"> <service name="com.sun.star.i18n.LocaleCalendar"/> <service name="com.sun.star.i18n.LocaleCalendar2"/> </implementation> - <implementation name="com.sun.star.i18n.Calendar_ROC"> + <implementation name="com.sun.star.i18n.Calendar_ROC" + constructor="i18npool_Calendar_ROC_get_implementation"> <service name="com.sun.star.i18n.Calendar_ROC"/> </implementation> - <implementation name="com.sun.star.i18n.Calendar_dangi"> + <implementation name="com.sun.star.i18n.Calendar_dangi" + constructor="i18npool_Calendar_dangi_get_implementation"> <service name="com.sun.star.i18n.Calendar_dangi"/> </implementation> - <implementation name="com.sun.star.i18n.Calendar_buddhist"> + <implementation name="com.sun.star.i18n.Calendar_buddhist" + constructor="i18npool_Calendar_buddhist_get_implementation"> <service name="com.sun.star.i18n.Calendar_buddhist"/> </implementation> - <implementation name="com.sun.star.i18n.Calendar_gengou"> + <implementation name="com.sun.star.i18n.Calendar_gengou" + constructor="i18npool_Calendar_gengou_get_implementation"> <service name="com.sun.star.i18n.Calendar_gengou"/> </implementation> - <implementation name="com.sun.star.i18n.Calendar_gregorian"> + <implementation name="com.sun.star.i18n.Calendar_gregorian" + constructor="i18npool_Calendar_gregorian_get_implementation"> <service name="com.sun.star.i18n.Calendar_gregorian"/> </implementation> - <implementation name="com.sun.star.i18n.Calendar_hanja"> + <implementation name="com.sun.star.i18n.Calendar_hanja" + constructor="i18npool_Calendar_hanja_get_implementation"> <service name="com.sun.star.i18n.Calendar_hanja"/> </implementation> - <implementation name="com.sun.star.i18n.Calendar_hanja_yoil"> + <implementation name="com.sun.star.i18n.Calendar_hanja_yoil" + constructor="i18npool_Calendar_hanja_yoil_get_implementation"> <service name="com.sun.star.i18n.Calendar_hanja_yoil"/> </implementation> - <implementation name="com.sun.star.i18n.Calendar_hijri"> + <implementation name="com.sun.star.i18n.Calendar_hijri" + constructor="i18npool_Calendar_hijri_get_implementation"> <service name="com.sun.star.i18n.Calendar_hijri"/> </implementation> - <implementation name="com.sun.star.i18n.Calendar_jewish"> + <implementation name="com.sun.star.i18n.Calendar_jewish" + constructor="i18npool_Calendar_jewish_get_implementation"> <service name="com.sun.star.i18n.Calendar_jewish"/> </implementation> - <implementation name="com.sun.star.i18n.ChapterCollator"> + <implementation name="com.sun.star.i18n.ChapterCollator" + constructor="i18npool_ChapterCollator_get_implementation"> <service name="com.sun.star.i18n.ChapterCollator"/> </implementation> <implementation name="com.sun.star.i18n.CharacterClassification" @@ -88,44 +104,56 @@ constructor="com_sun_star_i18n_Collator_get_implementation"> <service name="com.sun.star.i18n.Collator"/> </implementation> - <implementation name="com.sun.star.i18n.Collator_Unicode"> + <implementation name="com.sun.star.i18n.Collator_Unicode" + constructor="i18npool_Collator_Unicode_get_implementation"> <service name="com.sun.star.i18n.Collator_Unicode"/> </implementation> - <implementation name="com.sun.star.i18n.IndexEntrySupplier"> + <implementation name="com.sun.star.i18n.IndexEntrySupplier" + constructor="i18npool_IndexEntrySupplier_get_implementation"> <service name="com.sun.star.i18n.IndexEntrySupplier"/> </implementation> - <implementation name="com.sun.star.i18n.IndexEntrySupplier_Unicode"> + <implementation name="com.sun.star.i18n.IndexEntrySupplier_Unicode" + constructor="i18npool_IndexEntrySupplier_Unicode_get_implementation"> <service name="com.sun.star.i18n.IndexEntrySupplier_Unicode"/> </implementation> - <implementation name="com.sun.star.i18n.IndexEntrySupplier_asian"> + <implementation name="com.sun.star.i18n.IndexEntrySupplier_asian" + constructor="i18npool_IndexEntrySupplier_asian_get_implementation"> <service name="com.sun.star.i18n.IndexEntrySupplier_asian"/> </implementation> - <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first)"> + <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first)" + constructor="i18npool_IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_syllable_get_implementation"> <service name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first)"/> </implementation> - <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first) (grouped by consonant)"> + <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first) (grouped by consonant)" + constructor="i18npool_IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_syllable_get_implementation"> <service name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first) (grouped by consonant)"/> </implementation> - <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first) (grouped by syllable)"> + <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first) (grouped by syllable)" + constructor="i18npool_IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_syllable_get_implementation"> <service name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first) (grouped by syllable)"/> </implementation> - <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last)"> + <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last)" + constructor="i18npool_IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_syllable_get_implementation"> <service name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last)"/> </implementation> - <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last) (grouped by consonant)"> + <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last) (grouped by consonant)" + constructor="i18npool_IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_syllable_get_implementation"> <service name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last) (grouped by consonant)"/> </implementation> - <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last) (grouped by syllable)"> + <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last) (grouped by syllable)" + constructor="i18npool_IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_syllable_get_implementation"> <service name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last) (grouped by syllable)"/> </implementation> <implementation name="com.sun.star.i18n.InputSequenceChecker" constructor="com_sun_star_i18n_InputSequenceChecker_get_implementation"> <service name="com.sun.star.i18n.InputSequenceChecker"/> </implementation> - <implementation name="com.sun.star.i18n.InputSequenceChecker_hi"> + <implementation name="com.sun.star.i18n.InputSequenceChecker_hi" + constructor="i18npool_InputSequenceChecker_hi_get_implementation"> <service name="com.sun.star.i18n.InputSequenceChecker_hi"/> </implementation> - <implementation name="com.sun.star.i18n.InputSequenceChecker_th"> + <implementation name="com.sun.star.i18n.InputSequenceChecker_th" + constructor="i18npool_InputSequenceChecker_th_get_implementation"> <service name="com.sun.star.i18n.InputSequenceChecker_th"/> </implementation> <implementation name="com.sun.star.i18n.LocaleDataImpl" @@ -154,38 +182,48 @@ constructor="com_sun_star_i18n_TextConversion_get_implementation"> <service name="com.sun.star.i18n.TextConversion"/> </implementation> - <implementation name="com.sun.star.i18n.TextConversion_ko"> + <implementation name="com.sun.star.i18n.TextConversion_ko" + constructor="i18npool_TextConversion_ko_get_implementation"> <service name="com.sun.star.i18n.TextConversion_ko"/> </implementation> - <implementation name="com.sun.star.i18n.TextConversion_zh"> + <implementation name="com.sun.star.i18n.TextConversion_zh" + constructor="i18npool_TextConversion_zh_get_implementation"> <service name="com.sun.star.i18n.TextConversion_zh"/> </implementation> <implementation name="com.sun.star.i18n.Transliteration" constructor="com_sun_star_i18n_Transliteration_get_implementation"> <service name="com.sun.star.i18n.Transliteration"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.CharToNumEastIndic_ar"> + <implementation name="com.sun.star.i18n.Transliteration.CharToNumEastIndic_ar" + constructor="i18npool_CharToNumEastIndic_ar_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.CharToNumFullwidth"> + <implementation name="com.sun.star.i18n.Transliteration.CharToNumFullwidth" + constructor="i18npool_CharToNumFullwidth_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.CharToNumHangul_ko"> + <implementation name="com.sun.star.i18n.Transliteration.CharToNumHangul_ko" + constructor="i18npool_CharToNumHangul_ko_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.CharToNumIndic_ar"> + <implementation name="com.sun.star.i18n.Transliteration.CharToNumIndic_ar" + constructor="i18npool_CharToNumIndic_ar_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.CharToNumIndic_hi"> + <implementation name="com.sun.star.i18n.Transliteration.CharToNumIndic_hi" + constructor="i18npool_CharToNumIndic_hi_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.CharToNumKanjiShort_ja_JP"> + <implementation name="com.sun.star.i18n.Transliteration.CharToNumKanjiShort_ja_JP" + constructor="i18npool_CharToNumKanjiShort_ja_JP_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.CharToNumKanjiTraditional_ja_JP"> + <implementation name="com.sun.star.i18n.Transliteration.CharToNumKanjiTraditional_ja_JP" + constructor="i18npool_CharToNumKanjiTraditional_ja_JP_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.CharToNumLower_ko"> + <implementation name="com.sun.star.i18n.Transliteration.CharToNumLower_ko" + constructor="i18npool_CharToNumLower_ko_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> <implementation name="com.sun.star.i18n.Transliteration.CharToNumLower_zh_CN"> @@ -194,7 +232,8 @@ <implementation name="com.sun.star.i18n.Transliteration.CharToNumLower_zh_TW"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.CharToNumUpper_ko"> + <implementation name="com.sun.star.i18n.Transliteration.CharToNumUpper_ko" + constructor="i18npool_CharToNumUpper_ko_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> <implementation name="com.sun.star.i18n.Transliteration.CharToNumUpper_zh_CN"> @@ -203,7 +242,8 @@ <implementation name="com.sun.star.i18n.Transliteration.CharToNumUpper_zh_TW"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.CharToNum_th"> + <implementation name="com.sun.star.i18n.Transliteration.CharToNum_th" + constructor="i18npool_CharToNum_th_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> <implementation name="com.sun.star.i18n.Transliteration.FULLWIDTHKATAKANA_HALFWIDTHKATAKANA"> @@ -320,10 +360,12 @@ <implementation name="com.sun.star.i18n.Transliteration.NumToTextFullwidth_ko"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.NumToTextFullwidth_zh_CN"> + <implementation name="com.sun.star.i18n.Transliteration.NumToTextFullwidth_zh_CN" + constructor="i18npool_NumToTextFullwidth_zh_CN_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.NumToTextFullwidth_zh_TW"> + <implementation name="com.sun.star.i18n.Transliteration.NumToTextFullwidth_zh_TW" + constructor="i18npool_NumToTextFullwidth_zh_TW_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> <implementation name="com.sun.star.i18n.Transliteration.NumToTextHangulCircledJamo_ko"> @@ -365,19 +407,23 @@ <implementation name="com.sun.star.i18n.Transliteration.NumToTextKanjiShortTraditional_ja_JP"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.NumToTextLower_zh_CN"> + <implementation name="com.sun.star.i18n.Transliteration.NumToTextLower_zh_CN" + constructor="i18npool_NumToTextLower_zh_CN_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.NumToTextLower_zh_TW"> + <implementation name="com.sun.star.i18n.Transliteration.NumToTextLower_zh_TW" + constructor="i18npool_NumToTextLower_zh_TW_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> <implementation name="com.sun.star.i18n.Transliteration.NumToTextTianGan_zh"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.NumToTextUpper_zh_CN"> + <implementation name="com.sun.star.i18n.Transliteration.NumToTextUpper_zh_CN" + constructor="i18npool_NumToTextUpper_zh_CN_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> - <implementation name="com.sun.star.i18n.Transliteration.NumToTextUpper_zh_TW"> + <implementation name="com.sun.star.i18n.Transliteration.NumToTextUpper_zh_TW" + constructor="i18npool_NumToTextUpper_zh_TW_get_implementation"> <service name="com.sun.star.i18n.Transliteration.l10n"/> </implementation> <implementation name="com.sun.star.i18n.Transliteration.SENTENCE_CASE"> |