diff options
author | Mike Kaganski <mike.kaganski@collabora.com> | 2018-05-13 03:09:43 +0300 |
---|---|---|
committer | László Németh <nemeth@numbertext.org> | 2018-06-08 15:08:33 +0200 |
commit | 90d233b0311a208967a3e264820e00395bf057fb (patch) | |
tree | 62ce991f6a6f2829a068a5cfe8279a28de80c28e /i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx | |
parent | 465fedc3501284cc5db43b03163d5bd9fc344cd7 (diff) |
tdf#115007: Use [NatNum12 params...] syntax
This allows using all the libnumbertext library functions.
[NatNum12] gives cardinal number names (one, two, three, ...)
[NatNum12 ordinal] gives ordinal number names (first, second, third, ...)
[NatNum12 ordinal-number] gives ordinal indicators (1st, 2nd, 3rd, ...)
[NatNum12 money USD][$-409] gives formal English (US) money text
... etc (see numbertext.org for syntax).
Change-Id: I16dbb44d8d4bdb82a1b950de6d438c8311b554ff
Reviewed-on: https://gerrit.libreoffice.org/54366
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
Diffstat (limited to 'i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx')
-rw-r--r-- | i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx b/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx index af4e27d0f69f..45a222ce9efd 100644 --- a/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx +++ b/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx @@ -585,6 +585,7 @@ DefaultNumberingProvider::makeNumberingString( const Sequence<beans::PropertyVal const sal_Unicode *table = nullptr; // initialize to avoid compiler warning bool bRecycleSymbol = false; bool bCapitalize = false; + OUString sNatNumParams; Locale locale; OUString prefix; @@ -635,18 +636,20 @@ DefaultNumberingProvider::makeNumberingString( const Sequence<beans::PropertyVal case CHARS_LOWER_LETTER: lcl_formatChars( lowerLetter, 26, number-1, result ); break; - case TEXT_NUMBER: - natNum = NativeNumberMode::NATNUM14; // ordinal indicators (1st, 2nd, 3rd, ...) + case TEXT_NUMBER: // ordinal indicators (1st, 2nd, 3rd, ...) + natNum = NativeNumberMode::NATNUM12; + sNatNumParams = "ordinal-number"; locale = aLocale; bCapitalize = true; break; - case TEXT_CARDINAL: - natNum = NativeNumberMode::NATNUM12; // cardinal number names (one, two, three, ...) + case TEXT_CARDINAL: // cardinal number names (one, two, three, ...) + natNum = NativeNumberMode::NATNUM12; locale = aLocale; bCapitalize = true; break; - case TEXT_ORDINAL: - natNum = NativeNumberMode::NATNUM13; // ordinal number names (first, second, third, ...) + case TEXT_ORDINAL: // ordinal number names (first, second, third, ...) + natNum = NativeNumberMode::NATNUM12; + sNatNumParams = "ordinal"; locale = aLocale; bCapitalize = true; break; @@ -909,8 +912,8 @@ DefaultNumberingProvider::makeNumberingString( const Sequence<beans::PropertyVal if (natNum) { rtl::Reference<NativeNumberSupplierService> xNatNum(new NativeNumberSupplierService); - OUString aNum - = xNatNum->getNativeNumberString(OUString::number(number), locale, natNum); + OUString aNum = xNatNum->getNativeNumberStringParams(OUString::number(number), locale, + natNum, sNatNumParams); if (bCapitalize) { if (!xCharClass.is()) |