diff options
author | Mark Hung <marklh9@gmail.com> | 2016-01-24 16:36:05 +0800 |
---|---|---|
committer | Michael Stahl <mstahl@redhat.com> | 2016-01-27 13:35:42 +0000 |
commit | 91b926d4b9939337f54d6c9f0b940b161dc3437f (patch) | |
tree | 992ac33593bf5b90c07cfd72e36156fa4066d4e7 /sw | |
parent | aee3355a8a7a6b7749f2eddd74e9389fe5782186 (diff) |
tdf#84317 convert missing numbering types to OOXML tokens.
CIRCLE_NUMBER -> decimalEnclosedCircle
CHARS_ARABIC --> arabicAlpha
CHARS_THAI --> thaiLetter
CHARS_PERSIAN --> hindiVowels
NUMBER_NONE --> none
All the reset --> decimal
All the types above were converted to 'none' before.
Change-Id: Ie97e3fd4a00b7e4cc80ffb3776028e431e0535de
Reviewed-on: https://gerrit.libreoffice.org/21741
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Michael Stahl <mstahl@redhat.com>
Diffstat (limited to 'sw')
-rw-r--r-- | sw/qa/extras/ooxmlexport/data/outline-num-none.odt | bin | 9052 -> 0 bytes | |||
-rw-r--r-- | sw/qa/extras/ooxmlexport/data/outline-number-types.odt | bin | 0 -> 13600 bytes | |||
-rw-r--r-- | sw/qa/extras/ooxmlexport/ooxmlexport.cxx | 27 | ||||
-rw-r--r-- | sw/source/filter/ww8/docxattributeoutput.cxx | 34 |
4 files changed, 59 insertions, 2 deletions
diff --git a/sw/qa/extras/ooxmlexport/data/outline-num-none.odt b/sw/qa/extras/ooxmlexport/data/outline-num-none.odt Binary files differdeleted file mode 100644 index b3bb56d5cfa5..000000000000 --- a/sw/qa/extras/ooxmlexport/data/outline-num-none.odt +++ /dev/null diff --git a/sw/qa/extras/ooxmlexport/data/outline-number-types.odt b/sw/qa/extras/ooxmlexport/data/outline-number-types.odt Binary files differnew file mode 100644 index 000000000000..2232ad64ce17 --- /dev/null +++ b/sw/qa/extras/ooxmlexport/data/outline-number-types.odt diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx index 239cfe870f2d..989c79e939d0 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx @@ -634,10 +634,35 @@ DECLARE_OOXMLEXPORT_TEST(testOoxmlNumListZHCN, "numlist-zhcn.odt") assertXPath ( pXmlDoc, "/w:numbering/w:abstractNum[1]/w:lvl[1]/w:numFmt","val","chineseCountingThousand" ); } -DECLARE_OOXMLEXPORT_TEST(testOOxmlOutlineNumNone, "outline-num-none.odt") +DECLARE_OOXMLEXPORT_TEST(testOOxmlOutlineNumberTypes, "outline-number-types.odt") { if (xmlDocPtr pXmlDoc = parseExport("word/numbering.xml")) + { assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[1]/w:lvl[1]/w:numFmt", "val", "none"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[1]/w:lvl[2]/w:numFmt", "val", "decimalEnclosedCircle"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[1]/w:lvl[3]/w:numFmt", "val", "decimal"); // CHARS_GREEK_UPPER_LETTER fallback to decimal + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[1]/w:lvl[4]/w:numFmt", "val", "decimal"); // CHARS_GREEK_LOWER_LETTER fallback to decimal + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[1]/w:lvl[5]/w:numFmt", "val", "arabicAlpha"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[1]/w:lvl[6]/w:numFmt", "val", "hindiVowels"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[1]/w:lvl[7]/w:numFmt", "val", "thaiLetters"); + + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[2]/w:lvl[1]/w:numFmt", "val", "decimal"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[2]/w:lvl[2]/w:numFmt", "val", "decimal"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[2]/w:lvl[3]/w:numFmt", "val", "decimal"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[2]/w:lvl[4]/w:numFmt", "val", "decimal"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[2]/w:lvl[5]/w:numFmt", "val", "decimal"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[2]/w:lvl[6]/w:numFmt", "val", "decimal"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[2]/w:lvl[7]/w:numFmt", "val", "decimal"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[2]/w:lvl[8]/w:numFmt", "val", "decimal"); + + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[3]/w:lvl[1]/w:numFmt", "val", "decimal"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[3]/w:lvl[2]/w:numFmt", "val", "decimal"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[3]/w:lvl[3]/w:numFmt", "val", "decimal"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[3]/w:lvl[4]/w:numFmt", "val", "decimal"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[3]/w:lvl[5]/w:numFmt", "val", "decimal"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[3]/w:lvl[6]/w:numFmt", "val", "decimal"); + assertXPath(pXmlDoc, "/w:numbering/w:abstractNum[3]/w:lvl[7]/w:numFmt", "val", "decimal"); + } } DECLARE_OOXMLEXPORT_TEST(testNumParentStyle, "num-parent-style.docx") diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx index 138b8069f225..1586054805f3 100644 --- a/sw/source/filter/ww8/docxattributeoutput.cxx +++ b/sw/source/filter/ww8/docxattributeoutput.cxx @@ -5644,6 +5644,7 @@ static OString impl_LevelNFC( sal_uInt16 nNumberingType , const SfxItemSet *pOut case style::NumberingType::BITMAP: case style::NumberingType::CHAR_SPECIAL: case style::NumberingType::CHARS_HEBREW: + case style::NumberingType::NUMBER_NONE: return impl_NumberingType( nNumberingType ); case style::NumberingType::FULLWIDTH_ARABIC: aType="decimalFullWidth"; break; case style::NumberingType::TIAN_GAN_ZH: aType="ideographTraditional"; break; @@ -5670,8 +5671,39 @@ static OString impl_LevelNFC( sal_uInt16 nNumberingType , const SfxItemSet *pOut case style::NumberingType::HANGUL_JAMO_KO: aType="chosung";break; case style::NumberingType::NUMBER_HANGUL_KO: aType="koreanDigital";break; case style::NumberingType::NUMBER_UPPER_KO: aType="koreanLegal"; break; + case style::NumberingType::CIRCLE_NUMBER: aType="decimalEnclosedCircle"; break; + case style::NumberingType::CHARS_ARABIC: aType="arabicAlpha"; break; + case style::NumberingType::CHARS_THAI: aType="thaiLetters"; break; + case style::NumberingType::CHARS_PERSIAN: aType="hindiVowels"; break; +/* + Fallback the rest to decimal. + case style::NumberingType::NATIVE_NUMBERING: + case style::NumberingType::HANGUL_CIRCLED_JAMO_KO: + case style::NumberingType::HANGUL_CIRCLED_SYLLABLE_KO: + case style::NumberingType::CHARS_GREEK_UPPER_LETTER: + case style::NumberingType::CHARS_GREEK_LOWER_LETTER: + case style::NumberingType::PAGE_DESCRIPTOR: + case style::NumberingType::TRANSLITERATION: + case style::NumberingType::CHARS_NEPALI: + case style::NumberingType::CHARS_KHMER: + case style::NumberingType::CHARS_LAO: + case style::NumberingType::CHARS_TIBETAN: + case style::NumberingType::CHARS_CYRILLIC_UPPER_LETTER_BG: + case style::NumberingType::CHARS_CYRILLIC_LOWER_LETTER_BG: + case style::NumberingType::CHARS_CYRILLIC_UPPER_LETTER_N_BG: + case style::NumberingType::CHARS_CYRILLIC_LOWER_LETTER_N_BG: + case style::NumberingType::CHARS_CYRILLIC_UPPER_LETTER_RU: + case style::NumberingType::CHARS_CYRILLIC_LOWER_LETTER_RU: + case style::NumberingType::CHARS_CYRILLIC_UPPER_LETTER_N_RU: + case style::NumberingType::CHARS_CYRILLIC_LOWER_LETTER_N_RU: + case style::NumberingType::CHARS_MYANMAR: + case style::NumberingType::CHARS_CYRILLIC_UPPER_LETTER_SR: + case style::NumberingType::CHARS_CYRILLIC_LOWER_LETTER_SR: + case style::NumberingType::CHARS_CYRILLIC_UPPER_LETTER_N_SR: + case style::NumberingType::CHARS_CYRILLIC_LOWER_LETTER_N_SR: +*/ default: - aType = "none"; break; + aType = "decimal"; break; } return aType; } |