summaryrefslogtreecommitdiff
path: root/i18npool/source/defaultnumberingprovider
diff options
context:
space:
mode:
authorMathias Bauer <mba@openoffice.org>2009-09-25 21:47:16 +0200
committerMathias Bauer <mba@openoffice.org>2009-09-25 21:47:16 +0200
commit4de41d18fd2b96079b9a0aa9f1ef123e431fe938 (patch)
treecd19df126f82819bb8f82c7e1cdbcd07b449a29d /i18npool/source/defaultnumberingprovider
parent6152b5efa3490cc8f09f269dc7542ffe3833358c (diff)
parent728c8eb458b5613eb5b8bbe8201dfc33a8a9cd78 (diff)
merge commit
Diffstat (limited to 'i18npool/source/defaultnumberingprovider')
-rw-r--r--i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx11
1 files changed, 9 insertions, 2 deletions
diff --git a/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx b/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx
index d7b42601b01f..91d856b19e62 100644
--- a/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx
+++ b/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx
@@ -190,9 +190,9 @@ static sal_Unicode lowerLetter[] = {
0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7A
};
-DefaultNumberingProvider::DefaultNumberingProvider( const Reference < XMultiServiceFactory >& xMSF ) : xSMgr(xMSF)
+DefaultNumberingProvider::DefaultNumberingProvider( const Reference < XMultiServiceFactory >& xMSF ) : xSMgr(xMSF),translit(NULL)
{
- translit = new TransliterationImpl(xMSF);
+
}
DefaultNumberingProvider::~DefaultNumberingProvider()
@@ -200,6 +200,12 @@ DefaultNumberingProvider::~DefaultNumberingProvider()
delete translit;
}
+void DefaultNumberingProvider::impl_loadTranslit()
+{
+ if ( !translit )
+ translit = new TransliterationImpl(xSMgr);
+}
+
Sequence< Reference<container::XIndexAccess> >
DefaultNumberingProvider::getDefaultOutlineNumberings(const Locale& rLocale ) throw(RuntimeException)
{
@@ -463,6 +469,7 @@ DefaultNumberingProvider::makeNumberingString( const Sequence<beans::PropertyVal
const OUString &tmp = OUString::valueOf( number );
OUString transliteration;
getPropertyByName(aProperties, "Transliteration", sal_True) >>= transliteration;
+ impl_loadTranslit();
translit->loadModuleByImplName(transliteration, aLocale);
result += translit->transliterateString2String(tmp, 0, tmp.getLength());
} catch (Exception& ) {