chart2/qa/extras/chart2export.cxx         |   23 +++++++++++++++++------
 chart2/qa/extras/data/xlsx/tdf130986.xlsx |binary
 oox/source/export/chartexport.cxx         |    3 +++
 3 files changed, 20 insertions(+), 6 deletions(-)

New commits:
commit 1b799539cd36a5d916402000d194b86001291461
Author:     Balazs Varga <balazs.varga...@gmail.com>
AuthorDate: Thu Feb 27 15:43:48 2020 +0100
Commit:     Xisco Faulí <xiscofa...@libreoffice.org>
CommitDate: Wed Mar 11 16:58:55 2020 +0100

    tdf#130986 Chart OOXML export: fix number format of custom label
    
    Export correct sourceLinked attribute in c:dLbls/c:dLbl/c:numFmt, as
    in c:dLbls/c:numFmt.
    
    Change-Id: I0e52720b3cb2c99550a779763f01ba12f762050d
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89638
    Tested-by: László Németh <nem...@numbertext.org>
    Reviewed-by: László Németh <nem...@numbertext.org>
    Signed-off-by: Xisco Fauli <xiscofa...@libreoffice.org>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89947
    Tested-by: Jenkins

diff --git a/chart2/qa/extras/chart2export.cxx 
b/chart2/qa/extras/chart2export.cxx
index 6eb00cbc6799..03188a07ffb0 100644
--- a/chart2/qa/extras/chart2export.cxx
+++ b/chart2/qa/extras/chart2export.cxx
@@ -1594,13 +1594,24 @@ void Chart2ExportTest::testAxisNumberFormatXLSX()
 void Chart2ExportTest::testDataPointLabelNumberFormatXLSX()
 {
     load("/chart2/qa/extras/data/ods/", "tdf123774.ods");
-    xmlDocPtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open XML");
-    CPPUNIT_ASSERT(pXmlDoc);
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:pieChart/c:ser/c:dLbls/c:numFmt", 
"formatCode", "[$-40E]0.00%");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:pieChart/c:ser/c:dLbls/c:numFmt", 
"sourceLinked", "0");
+    {
+        xmlDocPtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
+        CPPUNIT_ASSERT(pXmlDoc);
+        assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:pieChart/c:ser/c:dLbls/c:numFmt", 
"formatCode", "[$-40E]0.00%");
+        assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:pieChart/c:ser/c:dLbls/c:numFmt", 
"sourceLinked", "0");
 
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:pieChart/c:ser/c:dLbls/c:dLbl[1]/c:numFmt", 
"formatCode", "[$-40E]0.00%");
-    assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:pieChart/c:ser/c:dLbls/c:dLbl[1]/c:numFmt", 
"sourceLinked", "0");
+        assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:pieChart/c:ser/c:dLbls/c:dLbl[1]/c:numFmt", 
"formatCode", "[$-40E]0.00%");
+        assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:pieChart/c:ser/c:dLbls/c:dLbl[1]/c:numFmt", 
"sourceLinked", "0");
+    }
+
+    load("/chart2/qa/extras/data/xlsx/", "tdf130986.xlsx");
+    {
+        xmlDocPtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open 
XML");
+        CPPUNIT_ASSERT(pXmlDoc);
+        assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dLbls/c:dLbl/c:idx", 
"val", "1");
+        assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dLbls/c:dLbl/c:numFmt", 
"formatCode", "0.00E+00");
+        assertXPath(pXmlDoc, 
"/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dLbls/c:dLbl/c:numFmt", 
"sourceLinked", "0");
+    }
 }
 
 void Chart2ExportTest::testDataLabelDefaultValuesXLSX()
diff --git a/chart2/qa/extras/data/xlsx/tdf130986.xlsx 
b/chart2/qa/extras/data/xlsx/tdf130986.xlsx
new file mode 100644
index 000000000000..9674fd1ab1d0
Binary files /dev/null and b/chart2/qa/extras/data/xlsx/tdf130986.xlsx differ
diff --git a/oox/source/export/chartexport.cxx 
b/oox/source/export/chartexport.cxx
index 7f0f948a4d85..623a03b8ac97 100644
--- a/oox/source/export/chartexport.cxx
+++ b/oox/source/export/chartexport.cxx
@@ -3342,6 +3342,9 @@ void ChartExport::exportDataLabels(
         pFS->startElement(FSNS(XML_c, XML_dLbl));
         pFS->singleElement(FSNS(XML_c, XML_idx), XML_val, 
OString::number(nIdx));
 
+        if( GetProperty(xLabelPropSet, "LinkNumberFormatToSource") )
+            mAny >>= bLinkedNumFmt;
+
         if( xLabelPropSet->getPropertyValue("Label") >>= aLabel )
             bLabelIsNumberFormat = aLabel.ShowNumber;
         else
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to