diff options
author | Tamas Bunth <tamas.bunth@collabora.co.uk> | 2019-11-14 00:56:08 +0100 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2019-11-17 16:48:41 +0100 |
commit | d6c3f1d37f651637ed4d803a2226ead4392fd85f (patch) | |
tree | dce283d06fdcd7fdeaf295f06cb8e05630c7a94d /sd | |
parent | tdf#117658 PPTX import: fix duplicated math object handling (diff) | |
download | core-d6c3f1d37f651637ed4d803a2226ead4392fd85f.tar.gz core-d6c3f1d37f651637ed4d803a2226ead4392fd85f.zip |
tdf128684: Rotate text in not preset custom shape
The TextPreRotateAngle property should be set in case of a not preset
custom shape as well during ooxml import.
Also add unit test for testing the TextPreRotateAngle property.
Change-Id: Ib5b822286f8a78fe8398bf7e2014a36d7e0a24d5
Reviewed-on: https://gerrit.libreoffice.org/82643
Tested-by: Jenkins
Reviewed-by: Tamás Bunth <btomi96@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/83021
Reviewed-by: Andras Timar <andras.timar@collabora.com>
Diffstat (limited to 'sd')
-rwxr-xr-x | sd/qa/unit/data/pptx/tdf128684.pptx | bin | 0 -> 58086 bytes | |||
-rw-r--r-- | sd/qa/unit/import-tests.cxx | 29 |
2 files changed, 29 insertions, 0 deletions
diff --git a/sd/qa/unit/data/pptx/tdf128684.pptx b/sd/qa/unit/data/pptx/tdf128684.pptx Binary files differnew file mode 100755 index 000000000000..80a5f30568d3 --- /dev/null +++ b/sd/qa/unit/data/pptx/tdf128684.pptx diff --git a/sd/qa/unit/import-tests.cxx b/sd/qa/unit/import-tests.cxx index 1d1f5a6a46d1..943fc49cfc3f 100644 --- a/sd/qa/unit/import-tests.cxx +++ b/sd/qa/unit/import-tests.cxx @@ -196,6 +196,7 @@ public: void testTdf77747(); void testTdf116266(); void testTdf126324(); + void testTdf128684(); bool checkPattern(sd::DrawDocShellRef const & rDocRef, int nShapeNumber, std::vector<sal_uInt8>& rExpected); void testPatternImport(); @@ -306,6 +307,7 @@ public: CPPUNIT_TEST(testOOXTheme); CPPUNIT_TEST(testCropToShape); CPPUNIT_TEST(testTdf127964); + CPPUNIT_TEST(testTdf128684); CPPUNIT_TEST_SUITE_END(); }; @@ -2921,6 +2923,33 @@ void SdImportTest::testTdf127964() xDocShRef->DoClose(); } + +void SdImportTest::testTdf128684() +{ + sd::DrawDocShellRef xDocShRef + = loadURL(m_directories.getURLFromSrc("/sd/qa/unit/data/pptx/tdf128684.pptx"), PPTX); + uno::Reference<drawing::XDrawPagesSupplier> xDoc(xDocShRef->GetDoc()->getUnoModel(), + uno::UNO_QUERY); + CPPUNIT_ASSERT(xDoc.is()); + uno::Reference<drawing::XDrawPage> xPage(xDoc->getDrawPages()->getByIndex(0), uno::UNO_QUERY); + CPPUNIT_ASSERT(xPage.is()); + uno::Reference<beans::XPropertySet> xShape(getShape(0, xPage)); + CPPUNIT_ASSERT(xShape.is()); + uno::Any aAny = xShape->getPropertyValue("CustomShapeGeometry"); + CPPUNIT_ASSERT(aAny.hasValue()); + uno::Sequence<beans::PropertyValue> aProps; + CPPUNIT_ASSERT(aAny >>= aProps); + sal_Int32 nRotateAngle = 0; + for( const auto& rProp : std::as_const(aProps) ) + { + if( rProp.Name == "TextPreRotateAngle") + { + rProp.Value >>= nRotateAngle; + } + } + CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(-90), nRotateAngle); +} + CPPUNIT_TEST_SUITE_REGISTRATION(SdImportTest); CPPUNIT_PLUGIN_IMPLEMENT(); |