oox/source/export/drawingml.cxx | 7 +++++-- oox/source/export/ooxml-export-notes.txt | 5 ++++- sd/qa/unit/data/fdo79731.odp |binary sd/qa/unit/export-tests.cxx | 11 +++++++++++ 4 files changed, 20 insertions(+), 3 deletions(-)
New commits: commit 02e52b15908a6d89b4aeb3c349e7414240eb9563 Author: Miklos Vajna <[email protected]> Date: Wed Nov 5 11:11:45 2014 +0100 fdo#85813 drawingML export: fix handling of impress tables Change-Id: Ia17b14c4b27e808ceab388aa33602875e67433a5 diff --git a/oox/source/export/drawingml.cxx b/oox/source/export/drawingml.cxx index df4bc23..0629f2c 100644 --- a/oox/source/export/drawingml.cxx +++ b/oox/source/export/drawingml.cxx @@ -1175,7 +1175,9 @@ void DrawingML::WriteShapeTransformation( Reference< XShape > rXShape, sal_Int32 // The RotateAngle property's value is independent from any flipping, and that's exactly what we need here. uno::Reference<beans::XPropertySet> xPropertySet(rXShape, uno::UNO_QUERY); - xPropertySet->getPropertyValue("RotateAngle") >>= nRotation; + uno::Reference<beans::XPropertySetInfo> xPropertySetInfo = xPropertySet->getPropertySetInfo(); + if (xPropertySetInfo->hasPropertyByName("RotateAngle")) + xPropertySet->getPropertyValue("RotateAngle") >>= nRotation; } WriteTransformation( Rectangle( Point( aPos.X, aPos.Y ), Size( aSize.Width, aSize.Height ) ), nXmlNamespace, bFlipH, bFlipV, OOX_DRAWINGML_EXPORT_ROTATE_CLOCKWISIFY(nRotation) ); } @@ -1968,7 +1970,8 @@ void DrawingML::WriteText( Reference< XInterface > rXIface, const OUString& pres if( !enumeration.is() ) return; - SdrObject* pSdrObject = GetSdrObjectFromXShape(uno::Reference<drawing::XShape>(rXIface, uno::UNO_QUERY_THROW)); + uno::Reference<drawing::XShape> xShape(rXIface, uno::UNO_QUERY); + SdrObject* pSdrObject = xShape.is() ? GetSdrObjectFromXShape(xShape) : 0; const SdrTextObj* pTxtObj = PTR_CAST(SdrTextObj, pSdrObject); if (pTxtObj && mpTextExport) { diff --git a/sd/qa/unit/data/fdo79731.odp b/sd/qa/unit/data/fdo79731.odp new file mode 100644 index 0000000..d5d094a Binary files /dev/null and b/sd/qa/unit/data/fdo79731.odp differ diff --git a/sd/qa/unit/export-tests.cxx b/sd/qa/unit/export-tests.cxx index 61aead3..a33a2a9 100644 --- a/sd/qa/unit/export-tests.cxx +++ b/sd/qa/unit/export-tests.cxx @@ -71,6 +71,7 @@ public: void testBnc862510_5(); void testBnc822347_EmptyBullet(); void testFdo83751(); + void testFdo79731(); CPPUNIT_TEST_SUITE(SdExportTest); CPPUNIT_TEST(testN821567); @@ -85,6 +86,7 @@ public: CPPUNIT_TEST(testBnc862510_5); CPPUNIT_TEST(testBnc822347_EmptyBullet); CPPUNIT_TEST(testFdo83751); + CPPUNIT_TEST(testFdo79731); CPPUNIT_TEST_SUITE_END(); }; @@ -477,6 +479,15 @@ void SdExportTest::testFdo83751() xDocShRef->DoClose(); } +void SdExportTest::testFdo79731() +{ + ::sd::DrawDocShellRef xDocShRef = loadURL(getURLFromSrc("/sd/qa/unit/data/fdo79731.odp"), ODP); + xDocShRef = saveAndReload(xDocShRef, PPTX); + SdDrawDocument *pDoc = xDocShRef->GetDoc(); + CPPUNIT_ASSERT(pDoc); + xDocShRef->DoClose(); +} + CPPUNIT_TEST_SUITE_REGISTRATION(SdExportTest); CPPUNIT_PLUGIN_IMPLEMENT(); commit 8ee7e6534fdee89fdfd76750f31c61074dc1640b Author: Miklos Vajna <[email protected]> Date: Wed Nov 5 10:34:06 2014 +0100 oox: document PPTX export entry point Change-Id: I8102f31d46257c96837b6c9497e9c49f92ac29b1 diff --git a/oox/source/export/ooxml-export-notes.txt b/oox/source/export/ooxml-export-notes.txt index 0f15f76..9855c1d 100644 --- a/oox/source/export/ooxml-export-notes.txt +++ b/oox/source/export/ooxml-export-notes.txt @@ -36,7 +36,6 @@ Related modules - writerfilter - import of .docx, uses also oox for the graphics etc. - - can also parse .doc; but used for ooxml only for now - filter - the configuration stuff (so that the filters appear in the filepicker) @@ -177,6 +176,10 @@ Old binary filters (export) #4 0x00002aec23119b58 in SfxObjectShell::DoLoad () from /local/ooxml/inst/openoffice.org3.0/program/../basis-link/program//libsfxlx.so +- pptx export + - sd/source/filter/eppt/pptx-epptooxml.cxx, + oox::core::PowerPointExport::exportDocument() + - odp export #0 ZipPackage (this=0x1805e80, xNewFactory=@0x7fffe284e990) at /home/rodo/git/ooxml/package/source/zippackage/ZipPackage.cxx:279 #1 0x00002aaaadd3dc94 in ZipPackage_createInstance (xMgr=@0x7fffe284e990) at /home/rodo/git/ooxml/package/source/zippackage/ZipPackage.cxx:1546 _______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
