diff --git a/include/svl/nfkeytab.hxx b/include/svl/nfkeytab.hxx index 7872cc4fb512..458e400ea6ab 100644 --- a/include/svl/nfkeytab.hxx +++ b/include/svl/nfkeytab.hxx @@ -111,9 +111,15 @@ class NfKeywordTable final public: NfKeywordTable() : m_keywords(NF_KEYWORD_ENTRIES_COUNT) {}; + NfKeywordTable( const std::initializer_list & l ) : m_keywords(l) + { + assert(m_keywords.size() == NF_KEYWORD_ENTRIES_COUNT); + } OUString & operator[] (Keywords_t::size_type n) { return m_keywords[n]; } const OUString & operator[] (Keywords_t::size_type n) const { return m_keywords[n]; } + + Keywords_t::size_type size() const { return m_keywords.size(); } }; #endif // INCLUDED_SVL_NFKEYTAB_HXX diff --git a/include/svl/zforlist.hxx b/include/svl/zforlist.hxx index 4f27621c9b0f..a2ff78f90a34 100644 --- a/include/svl/zforlist.hxx +++ b/include/svl/zforlist.hxx @@ -822,7 +822,7 @@ public: const NfKeywordTable & GetKeywords( sal_uInt32 nKey ); /** Access for unit tests. */ - const std::vector & GetEnglishKeywords() const; + const NfKeywordTable & GetEnglishKeywords() const; /** Access for unit tests. */ const std::vector & GetStandardColors() const; diff --git a/svl/qa/unit/svl.cxx b/svl/qa/unit/svl.cxx index 15546554fc78..bafb8d13bef9 100644 --- a/svl/qa/unit/svl.cxx +++ b/svl/qa/unit/svl.cxx @@ -1393,7 +1393,7 @@ void Test::testUserDefinedNumberFormats() void Test::testNfEnglishKeywordsIntegrity() { SvNumberFormatter aFormatter(m_xContext, LANGUAGE_ENGLISH_US); - const ::std::vector & rEnglishKeywords = aFormatter.GetEnglishKeywords(); + const NfKeywordTable& rEnglishKeywords = aFormatter.GetEnglishKeywords(); const NfKeywordTable& sKeywords = aFormatter.GetKeywords(0); CPPUNIT_ASSERT_EQUAL( size_t(NF_KEYWORD_ENTRIES_COUNT), rEnglishKeywords.size() ); for (size_t i = 0; i < size_t(NF_KEYWORD_ENTRIES_COUNT); ++i) @@ -1478,7 +1478,7 @@ void Test::testStandardColorIntegrity() void Test::testColorNamesConversion() { SvNumberFormatter aFormatter(m_xContext, LANGUAGE_GERMAN); - const ::std::vector & rEnglishKeywords = aFormatter.GetEnglishKeywords(); + const NfKeywordTable& rEnglishKeywords = aFormatter.GetEnglishKeywords(); const NfKeywordTable& rKeywords = aFormatter.GetKeywords(0); // Holding a reference to the NfKeywordTable doesn't help if we switch diff --git a/svl/source/numbers/zforlist.cxx b/svl/source/numbers/zforlist.cxx index 89c938a9e17a..2f3372cef55b 100644 --- a/svl/source/numbers/zforlist.cxx +++ b/svl/source/numbers/zforlist.cxx @@ -4628,7 +4628,7 @@ const NfKeywordTable & SvNumberFormatter::GetKeywords( sal_uInt32 nKey ) return pFormatScanner->GetKeywords(); } -const std::vector & SvNumberFormatter::GetEnglishKeywords() const +const NfKeywordTable & SvNumberFormatter::GetEnglishKeywords() const { return ImpSvNumberformatScan::GetEnglishKeywords(); } diff --git a/svl/source/numbers/zforscan.cxx b/svl/source/numbers/zforscan.cxx index 8e3bfd308042..98948da642ea 100644 --- a/svl/source/numbers/zforscan.cxx +++ b/svl/source/numbers/zforscan.cxx @@ -39,9 +39,9 @@ using namespace svt; const sal_Unicode cNoBreakSpace = 0xA0; const sal_Unicode cNarrowNoBreakSpace = 0x202F; -const ::std::vector ImpSvNumberformatScan::sEnglishKeyword = +const NfKeywordTable ImpSvNumberformatScan::sEnglishKeyword = { // Syntax keywords in English (USA) - //! All keywords MUST be UPPERCASE! In same order as NfKeywordTable + //! All keywords MUST be UPPERCASE! In same order as NfKeywordIndex "", // NF_KEY_NONE 0 "E", // NF_KEY_E Exponent "AM/PM", // NF_KEY_AMPM AM/PM diff --git a/svl/source/numbers/zforscan.hxx b/svl/source/numbers/zforscan.hxx index 6282481c669a..d6da6d3daab6 100644 --- a/svl/source/numbers/zforscan.hxx +++ b/svl/source/numbers/zforscan.hxx @@ -74,7 +74,7 @@ public: return sKeyword; } - static const ::std::vector & GetEnglishKeywords() + static const NfKeywordTable & GetEnglishKeywords() { return sEnglishKeyword; } @@ -172,7 +172,7 @@ public: private: // Private section NfKeywordTable sKeyword; // Syntax keywords - static const ::std::vector sEnglishKeyword; // English Syntax keywords + static const NfKeywordTable sEnglishKeyword; // English Syntax keywords static ::std::vector StandardColor; // Standard color array static bool bStandardColorNeedInitialization; // initialize Standard color array static ::std::vector sGermanColorNames; // German color names array