Also EnglishKeywords is a NfKeywordTable, not just some vector

Change-Id: I0683fe5f7632e9941f347773c2679af82421bdc4
Reviewed-on: https://gerrit.libreoffice.org/46455
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins <ci@libreoffice.org>
This commit is contained in:
Eike Rathke
2017-12-14 15:05:36 +01:00
parent 700e1e7fda
commit 0c13d0fb57
6 changed files with 14 additions and 8 deletions

View File

@@ -111,9 +111,15 @@ class NfKeywordTable final
public:
NfKeywordTable() : m_keywords(NF_KEYWORD_ENTRIES_COUNT) {};
NfKeywordTable( const std::initializer_list<OUString> & 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

View File

@@ -822,7 +822,7 @@ public:
const NfKeywordTable & GetKeywords( sal_uInt32 nKey );
/** Access for unit tests. */
const std::vector<OUString> & GetEnglishKeywords() const;
const NfKeywordTable & GetEnglishKeywords() const;
/** Access for unit tests. */
const std::vector<Color> & GetStandardColors() const;

View File

@@ -1393,7 +1393,7 @@ void Test::testUserDefinedNumberFormats()
void Test::testNfEnglishKeywordsIntegrity()
{
SvNumberFormatter aFormatter(m_xContext, LANGUAGE_ENGLISH_US);
const ::std::vector<OUString> & 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<OUString> & 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

View File

@@ -4628,7 +4628,7 @@ const NfKeywordTable & SvNumberFormatter::GetKeywords( sal_uInt32 nKey )
return pFormatScanner->GetKeywords();
}
const std::vector<OUString> & SvNumberFormatter::GetEnglishKeywords() const
const NfKeywordTable & SvNumberFormatter::GetEnglishKeywords() const
{
return ImpSvNumberformatScan::GetEnglishKeywords();
}

View File

@@ -39,9 +39,9 @@ using namespace svt;
const sal_Unicode cNoBreakSpace = 0xA0;
const sal_Unicode cNarrowNoBreakSpace = 0x202F;
const ::std::vector<OUString> 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

View File

@@ -74,7 +74,7 @@ public:
return sKeyword;
}
static const ::std::vector<OUString> & GetEnglishKeywords()
static const NfKeywordTable & GetEnglishKeywords()
{
return sEnglishKeyword;
}
@@ -172,7 +172,7 @@ public:
private: // Private section
NfKeywordTable sKeyword; // Syntax keywords
static const ::std::vector<OUString> sEnglishKeyword; // English Syntax keywords
static const NfKeywordTable sEnglishKeyword; // English Syntax keywords
static ::std::vector<Color> StandardColor; // Standard color array
static bool bStandardColorNeedInitialization; // initialize Standard color array
static ::std::vector<OUString> sGermanColorNames; // German color names array