summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorTamas Bunth <tamas.bunth@collabora.co.uk>2019-11-14 00:56:08 +0100
committerTamás Bunth <btomi96@gmail.com>2019-11-16 13:41:20 +0100
commit742f59eaa38a3f13b6110573b1428de45c55b035 (patch)
treebeebb1165c1b9eb80b7c18fe09b7c4f3a335cfb5 /sd
parentb07db7a1694165113c8c8fb12eb632de7937c26f (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')
-rwxr-xr-xsd/qa/unit/data/pptx/tdf128684.pptxbin0 -> 58086 bytes
-rw-r--r--sd/qa/unit/import-tests.cxx29
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
new file mode 100755
index 000000000000..80a5f30568d3
--- /dev/null
+++ b/sd/qa/unit/data/pptx/tdf128684.pptx
Binary files differ
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();