diff options
author | Miklos Vajna <vmiklos@suse.cz> | 2013-08-09 15:03:08 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@suse.cz> | 2013-08-09 16:12:18 +0200 |
commit | 9f1f7199736e2ae07b34849ba66f61a1ef5782e8 (patch) | |
tree | a21ce703b76ffd21ea5a72f9451d3b3c6b6f8427 /writerfilter | |
parent | fdo#53556 RTF import of fFilled shape property for drwainglayer shapes (diff) | |
download | core-9f1f7199736e2ae07b34849ba66f61a1ef5782e8.tar.gz core-9f1f7199736e2ae07b34849ba66f61a1ef5782e8.zip |
fdo#53556 RTF import: fix handling of default shapeType
It was a customshape, but Word seems to handle the shape as a rectangle
when shapeType is missing. This makes the text in the textboxes of the
bugdoc wrap properly.
Change-Id: I56e044f42ead348bbb79addc36fa13c82a7ffc29
Diffstat (limited to 'writerfilter')
-rw-r--r-- | writerfilter/source/rtftok/rtfsdrimport.cxx | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/writerfilter/source/rtftok/rtfsdrimport.cxx b/writerfilter/source/rtftok/rtfsdrimport.cxx index caa58967dd1e..147675eac3af 100644 --- a/writerfilter/source/rtftok/rtfsdrimport.cxx +++ b/writerfilter/source/rtftok/rtfsdrimport.cxx @@ -231,6 +231,13 @@ void RTFSdrImport::resolve(RTFShape& rShape, bool bClose) oox::vml::FillModel aFillModel; // Gradient. oox::vml::ShadowModel aShadowModel; // Shadow. + // The spec doesn't state what is the default for shapeType, Word seems to implement it as a rectangle. + if (std::find_if(rShape.aProperties.begin(), + rShape.aProperties.end(), + boost::bind(&OUString::equals, boost::bind(&std::pair<OUString, OUString>::first, _1), OUString("shapeType"))) + == rShape.aProperties.end()) + rShape.aProperties.insert(rShape.aProperties.begin(), std::pair<OUString, OUString>("shapeType", OUString::number(ESCHER_ShpInst_Rectangle))); + for (std::vector< std::pair<OUString, OUString> >::iterator i = rShape.aProperties.begin(); i != rShape.aProperties.end(); ++i) { |