diff options
author | Tamas Bunth <tamas.bunth@collabora.co.uk> | 2019-11-14 00:56:08 +0100 |
---|---|---|
committer | Tamás Bunth <btomi96@gmail.com> | 2019-11-16 13:41:20 +0100 |
commit | 742f59eaa38a3f13b6110573b1428de45c55b035 (patch) | |
tree | beebb1165c1b9eb80b7c18fe09b7c4f3a335cfb5 /sd/qa | |
parent | b07db7a1694165113c8c8fb12eb632de7937c26f (diff) |
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>
Diffstat (limited to 'sd/qa')
-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 191592bbc592..3b50bce311ad 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(); @@ -311,6 +312,7 @@ public: CPPUNIT_TEST(testCropToShape); CPPUNIT_TEST(testTdf127964); CPPUNIT_TEST(testTdf106638); + CPPUNIT_TEST(testTdf128684); CPPUNIT_TEST_SUITE_END(); }; @@ -3006,6 +3008,33 @@ void SdImportTest::testTdf106638() CPPUNIT_ASSERT(aCharFontName != "Wingdings"); } + +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(); |