summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2013-12-03 10:50:44 +0100
committerMiklos Vajna <vmiklos@collabora.co.uk>2013-12-03 11:58:23 +0100
commita44e42b9cd08d1ac8438ed2944cf174ffd68b80e (patch)
treeb1e272d4bb5b9c90aaa4ce91da08756408006e81 /sw
parentf5e2d31331839fd8c6039bec057a9c28ed3c7396 (diff)
filter: handle ooxml shapes in EscherPropertyContainer::GetCustomShapeType()
The problem was that the shapes produced by the drawingML import had types like ooxml-triangle, and EnhancedCustomShapeTypeNames::Get() only handles VML/binary MSO shapes (e.g. isosceles-triangle). Add an OOXML mode, and in that case use msfilter::util::GETVMLShapeType() instead, and only fall back to EnhancedCustomShapeTypeNames::Get() if necessary. Change-Id: Ic93ba4719133dd3e96c17d2562642a03e559fefa
Diffstat (limited to 'sw')
-rw-r--r--sw/qa/extras/ooxmlexport/data/ooxml-triangle.docxbin0 -> 13289 bytes
-rw-r--r--sw/qa/extras/ooxmlexport/ooxmlexport.cxx7
2 files changed, 7 insertions, 0 deletions
diff --git a/sw/qa/extras/ooxmlexport/data/ooxml-triangle.docx b/sw/qa/extras/ooxmlexport/data/ooxml-triangle.docx
new file mode 100644
index 000000000000..4279fbfb05b2
--- /dev/null
+++ b/sw/qa/extras/ooxmlexport/data/ooxml-triangle.docx
Binary files differ
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx
index 8fa9ded37802..bc04e9c38670 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx
@@ -2034,6 +2034,13 @@ DECLARE_OOXMLEXPORT_TEST(testTableLineSpacing, "table_atleast.docx")
assertXPath(pXmlDoc, "/w:document/w:body/w:tbl/w:tr/w:tc/w:p/w:pPr/w:spacing", "line", "320");
}
+DECLARE_OOXMLEXPORT_TEST(testOoxmlTriangle, "ooxml-triangle.docx")
+{
+ // The problem was that ooxml-triangle shape type wasn't handled by VML
+ // export (only isosceles-triangle), leading to a missing shape.
+ getShape(1);
+}
+
#endif
CPPUNIT_PLUGIN_IMPLEMENT();