oox/source/export/shapes.cxx | 6 ++++++ sc/qa/unit/data/xlsx/hiddenShape.xlsx |binary sc/qa/unit/subsequent_export-test.cxx | 12 ++++++++++++ 3 files changed, 18 insertions(+)
New commits: commit ccf91b9f823c28f2cb08784e4be4157bad40837e Author: PriyankaGaikwad <priyanka.gaik...@synerzip.com> Date: Thu May 7 16:19:38 2015 +0530 tdf#74932 FILESAVE: Shapes appear when saving a .XLSX file with filter Problem Description If the attribute hidden is set and then after exporting it to .xlsx, the shape does not remain hidden. XML Difference Original : <xdr:cNvPr id="2" name="Rectangle 1" hidden="1"/> Roundtrip : <xdr:cNvPr id="0" name="CustomShape 1"></xdr:cNvPr> Change-Id: I2e87a484ea984b56415891fd157995cb49453f76 Reviewed-on: https://gerrit.libreoffice.org/15662 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> diff --git a/oox/source/export/shapes.cxx b/oox/source/export/shapes.cxx index 87c0190..76d57fd 100644 --- a/oox/source/export/shapes.cxx +++ b/oox/source/export/shapes.cxx @@ -419,10 +419,16 @@ ShapeExport& ShapeExport::WriteCustomShape( Reference< XShape > xShape ) // non visual shape properties if (GetDocumentType() != DOCUMENT_DOCX) { + bool isVisible = true ; + if( GETA (Visible)) + { + mAny >>= isVisible; + } pFS->startElementNS( mnXmlNamespace, XML_nvSpPr, FSEND ); pFS->startElementNS( mnXmlNamespace, XML_cNvPr, XML_id, I32S( GetNewShapeID( xShape ) ), XML_name, IDS( CustomShape ), + XML_hidden, isVisible ? NULL : "1", FSEND ); if( GETA( URL ) ) diff --git a/sc/qa/unit/data/xlsx/hiddenShape.xlsx b/sc/qa/unit/data/xlsx/hiddenShape.xlsx new file mode 100644 index 0000000..3f38909 Binary files /dev/null and b/sc/qa/unit/data/xlsx/hiddenShape.xlsx differ diff --git a/sc/qa/unit/subsequent_export-test.cxx b/sc/qa/unit/subsequent_export-test.cxx index d42e29e..60b4b5c 100644 --- a/sc/qa/unit/subsequent_export-test.cxx +++ b/sc/qa/unit/subsequent_export-test.cxx @@ -143,6 +143,7 @@ public: void testSheetCondensedCharacterSpace(); void testTextUnderlineColor(); void testSheetRunParagraphProperty(); + void testHiddenShape(); CPPUNIT_TEST_SUITE(ScExportTest); CPPUNIT_TEST(test); @@ -196,6 +197,7 @@ public: CPPUNIT_TEST(testSheetCondensedCharacterSpace); CPPUNIT_TEST(testTextUnderlineColor); CPPUNIT_TEST(testSheetRunParagraphProperty); + CPPUNIT_TEST(testHiddenShape); CPPUNIT_TEST_SUITE_END(); @@ -2630,6 +2632,16 @@ void ScExportTest::testSheetRunParagraphProperty() xDocSh->DoClose(); } +void ScExportTest::testHiddenShape() +{ + ScDocShellRef xDocSh = loadDoc("hiddenShape.", XLSX); + CPPUNIT_ASSERT(xDocSh.Is()); + + xmlDocPtr pDoc = XPathHelper::parseExport(&(*xDocSh), m_xSFactory, "xl/drawings/drawing1.xml", XLSX); + CPPUNIT_ASSERT(pDoc); + assertXPath(pDoc, "/xdr:wsDr/xdr:twoCellAnchor/xdr:sp[1]/xdr:nvSpPr/xdr:cNvPr", "hidden", "1"); +} + CPPUNIT_TEST_SUITE_REGISTRATION(ScExportTest); CPPUNIT_PLUGIN_IMPLEMENT();
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits