[Libreoffice-commits] core.git: oox/source

Miklos Vajna vmiklos at collabora.co.uk
Mon Dec 23 08:07:17 PST 2013


 oox/source/export/shapes.cxx |    7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

New commits:
commit c161ceb9056ca5f686e615965ae0bb3efd8acea7
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Mon Dec 23 17:02:09 2013 +0100

    oox: fix drawingml export of nested groupshapes
    
    It turns out drawingml requires using different XML elements in case the
    groupshape is a toplevel one or a nested one.
    
    Change-Id: I9b76f9d0ae48cd80aaf0d6d41f1eb071cdc8cc07

diff --git a/oox/source/export/shapes.cxx b/oox/source/export/shapes.cxx
index b2b39a4..4c7af94 100644
--- a/oox/source/export/shapes.cxx
+++ b/oox/source/export/shapes.cxx
@@ -246,7 +246,10 @@ ShapeExport& ShapeExport::WriteOpenBezierShape( Reference< XShape > xShape )
 ShapeExport& ShapeExport::WriteGroupShape(uno::Reference<drawing::XShape> xShape)
 {
     FSHelperPtr pFS = GetFS();
-    pFS->startElementNS(mnXmlNamespace, XML_wgp, FSEND);
+    bool bToplevel = !m_xParent.is();
+    if (!bToplevel)
+        mnXmlNamespace = XML_wpg;
+    pFS->startElementNS(mnXmlNamespace, (bToplevel ? XML_wgp : XML_grpSp), FSEND);
 
     // non visual properties
     pFS->singleElementNS(mnXmlNamespace, XML_cNvGrpSpPr, FSEND);
@@ -269,7 +272,7 @@ ShapeExport& ShapeExport::WriteGroupShape(uno::Reference<drawing::XShape> xShape
     }
     m_xParent = xParent;
 
-    pFS->endElementNS(mnXmlNamespace, XML_wgp);
+    pFS->endElementNS(mnXmlNamespace, (bToplevel ? XML_wgp : XML_grpSp));
     return *this;
 }
 


More information about the Libreoffice-commits mailing list