sw/qa/extras/ww8export/data/tdf56321_flipImage_both.doc |binary sw/qa/extras/ww8export/ww8export.cxx | 20 ++++++++++++++++ sw/source/filter/ww8/ww8graf.cxx | 18 ++++++++++++++ 3 files changed, 38 insertions(+)
New commits: commit aa03fd09c0e18ace241c9fe151f7f52c6773f403 Author: Justin Luth <justin_l...@sil.org> Date: Sat Feb 13 16:28:48 2016 +0300 tdf#56321 - .doc import image flipped status Although LO was exporting whether an image was flipped horizontally or vertically, it wasn't reading it in during an import. Change-Id: Ia85e3459d00f40d852bbcd3fcfe15e7b53d518ba Reviewed-on: https://gerrit.libreoffice.org/22344 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Justin Luth <justin_l...@sil.org> Reviewed-by: Michael Stahl <mst...@redhat.com> diff --git a/sw/qa/extras/ww8export/data/tdf56321_flipImage_both.doc b/sw/qa/extras/ww8export/data/tdf56321_flipImage_both.doc new file mode 100644 index 0000000..a5293f2 Binary files /dev/null and b/sw/qa/extras/ww8export/data/tdf56321_flipImage_both.doc differ diff --git a/sw/qa/extras/ww8export/ww8export.cxx b/sw/qa/extras/ww8export/ww8export.cxx index ec03873..38c0ebf 100644 --- a/sw/qa/extras/ww8export/ww8export.cxx +++ b/sw/qa/extras/ww8export/ww8export.cxx @@ -23,7 +23,9 @@ #include <com/sun/star/view/DocumentZoomType.hpp> #include <com/sun/star/rdf/URI.hpp> #include <com/sun/star/rdf/Statement.hpp> +#include <grfatr.hxx> #include <pagedesc.hxx> +#include <ndgrf.hxx> #include <sfx2/bindings.hxx> #include <sfx2/request.hxx> @@ -567,6 +569,24 @@ DECLARE_WW8EXPORT_TEST(testTextVerticalAdjustment, "tdf36117_verticalAdjustment. CPPUNIT_ASSERT_EQUAL( drawing::TextVerticalAdjust_BLOCK, nVA ); } +DECLARE_WW8EXPORT_TEST(testRES_MIRROR_GRAPH_BOTH, "tdf56321_flipImage_both.doc") +{ + SwXTextDocument* pTextDoc = dynamic_cast<SwXTextDocument *>(mxComponent.get()); + CPPUNIT_ASSERT(pTextDoc); + SwDoc* pDoc = pTextDoc->GetDocShell()->GetDoc(); + CPPUNIT_ASSERT(pDoc); + + for (int n = 0; ; n++) + { + SwNode* pNode = pDoc->GetNodes()[ n ]; + if (SwGrfNode *pGrfNode = pNode->GetGrfNode()) + { + CPPUNIT_ASSERT(pGrfNode->GetSwAttrSet().GetMirrorGrf().GetValue() == 3); + break; + } + } +} + DECLARE_WW8EXPORT_TEST(testCommentExport, "comment-export.odt") { struct TextPortionInfo { diff --git a/sw/source/filter/ww8/ww8graf.cxx b/sw/source/filter/ww8/ww8graf.cxx index 22f7510..7c480d4 100644 --- a/sw/source/filter/ww8/ww8graf.cxx +++ b/sw/source/filter/ww8/ww8graf.cxx @@ -2094,6 +2094,24 @@ SwWW8ImplReader::SetAttributesAtGrfNode(SvxMSDffImportRec const*const pRecord, pGrfNd->SetAttr( aCrop ); } + bool bFlipH = pRecord->nFlags & SHAPEFLAG_FLIPH; + bool bFlipV = pRecord->nFlags & SHAPEFLAG_FLIPV; + if ( bFlipH || bFlipV ) + { + SwMirrorGrf aMirror = pGrfNd->GetSwAttrSet().GetMirrorGrf(); + if( bFlipH ) + { + if( bFlipV ) + aMirror.SetValue(RES_MIRROR_GRAPH_BOTH); + else + aMirror.SetValue(RES_MIRROR_GRAPH_VERT); + } + else + aMirror.SetValue(RES_MIRROR_GRAPH_HOR); + + pGrfNd->SetAttr( aMirror ); + } + if (pRecord->pObj) { const SfxItemSet& rOldSet = pRecord->pObj->GetMergedItemSet(); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits