summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Hung <marklh9@gmail.com>2016-01-24 16:36:05 +0800
committerMichael Stahl <mstahl@redhat.com>2016-05-10 18:41:14 +0000
commit23491789f77af6cec8f82d89cb82160b0a002614 (patch)
treeb085c7b66981efb377bbef1ffdf85b1d71ec4c6a
parent6e167436b5d06a91ccdfa70c5fcc0f09a3db7b7b (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. Reviewed-on: https://gerrit.libreoffice.org/21741 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Michael Stahl <mstahl@redhat.com> (cherry picked from commit 91b926d4b9939337f54d6c9f0b940b161dc3437f) Change-Id: Ie97e3fd4a00b7e4cc80ffb3776028e431e0535de Reviewed-on: https://gerrit.libreoffice.org/24846 Reviewed-by: Mark Hung <marklh9@gmail.com> Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
-rw-r--r--sw/qa/extras/ooxmlexport/data/outline-num-none.odtbin9052 -> 0 bytes
-rw-r--r--sw/qa/extras/ooxmlexport/data/outline-number-types.odtbin0 -> 13600 bytes
-rw-r--r--sw/qa/extras/ooxmlexport/ooxmlexport.cxx25
-rw-r--r--sw/source/filter/ww8/docxattributeoutput.cxx34
4 files changed, 57 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
deleted file mode 100644
index b3bb56d5cfa5..000000000000
--- a/sw/qa/extras/ooxmlexport/data/outline-num-none.odt
+++ /dev/null
Binary files differ
diff --git a/sw/qa/extras/ooxmlexport/data/outline-number-types.odt b/sw/qa/extras/ooxmlexport/data/outline-number-types.odt
new file mode 100644
index 000000000000..2232ad64ce17
--- /dev/null
+++ b/sw/qa/extras/ooxmlexport/data/outline-number-types.odt
Binary files differ
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx
index de7ca05ecc67..1eae331bd7c2 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx
@@ -634,12 +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:pStyle", "val", "Heading1");
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");
}
}
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx
index ab39f05b6522..5638632c0725 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -5615,6 +5615,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;
@@ -5641,8 +5642,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;
}