sw/qa/extras/ooxmlexport/ooxmlexport.cxx | 7 +++- sw/source/filter/ww8/docxattributeoutput.cxx | 40 ++++++++++++--------------- writerfilter/source/ooxml/model.xml | 4 +- 3 files changed, 25 insertions(+), 26 deletions(-)
New commits: commit beb7c8db7b922f7ca76d0093e199282489b7c49b Author: Miklos Vajna <[email protected]> Date: Mon Dec 23 15:01:58 2013 +0100 writerfilter: handle moveFromRangeEnd / moveToRangeEnd like bookmark end For bookmarks, at the start we omit all attributes (name, id), and at the end we emit only the id. Do the same for moveFromRangeEnd / moveToRangeEnd, which didn't emit an id at the end before. This is just the tokenizer part, dmapper should still handle them, which is missing. Change-Id: I3f42fdbd86785adb36a8ef1bffe9af14c4d81fa2 diff --git a/writerfilter/source/ooxml/model.xml b/writerfilter/source/ooxml/model.xml index 804a9ad..4eec1ed 100644 --- a/writerfilter/source/ooxml/model.xml +++ b/writerfilter/source/ooxml/model.xml @@ -14800,13 +14800,13 @@ <ref name="CT_MoveBookmark"/> </element> <element name="moveFromRangeEnd"> - <ref name="CT_MarkupRange"/> + <ref name="CT_MarkupRangeBookmark"/> </element> <element name="moveToRangeStart"> <ref name="CT_MoveBookmark"/> </element> <element name="moveToRangeEnd"> - <ref name="CT_MarkupRange"/> + <ref name="CT_MarkupRangeBookmark"/> </element> <element name="commentRangeStart"> <ref name="CT_MarkupRangeCommentStart"/> commit 41927dce4217d60808a889f8dac546f55848eead Author: Miklos Vajna <[email protected]> Date: Mon Dec 23 14:25:37 2013 +0100 sw: enable drawingml export of textframes by default This was only available in experimental mode previously. Also note that export of shapes (including group shapes) was already enabled previously, this commit just enables the same for Writer Text Frames. Change-Id: I53e7f3fac84328cea316a9811ecd5eecec79b23d diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx index 11d962a..10ab77b 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx @@ -1116,7 +1116,7 @@ DECLARE_OOXMLEXPORT_TEST(testTableFloatingMargins, "table-floating-margins.docx" xmlDocPtr pXmlDoc = parseExport(); if (!pXmlDoc) return; - assertXPath(pXmlDoc, "/w:document/w:body/w:p/w:r/w:pict/v:rect/v:textbox/w:txbxContent/w:tbl/w:tr[1]/w:tc[1]/w:p/w:pPr/w:spacing", "after", "0"); + assertXPath(pXmlDoc, "/w:document/w:body/w:p/w:r/mc:AlternateContent/mc:Fallback/w:pict/v:rect/v:textbox/w:txbxContent/w:tbl/w:tr[1]/w:tc[1]/w:p/w:pPr/w:spacing", "after", "0"); } DECLARE_OOXMLEXPORT_TEST(testFdo44689_start_page_0, "fdo44689_start_page_0.docx") @@ -1549,7 +1549,10 @@ DECLARE_OOXMLEXPORT_TEST(testFdo69636, "fdo69636.docx") xmlDocPtr pXmlDoc = parseExport(); if (!pXmlDoc) return; - CPPUNIT_ASSERT(getXPath(pXmlDoc, "/w:document/w:body/w:p/w:r/w:pict/v:rect/v:textbox", "style").match("mso-layout-flow-alt:bottom-to-top")); + // VML + CPPUNIT_ASSERT(getXPath(pXmlDoc, "/w:document/w:body/w:p/w:r/mc:AlternateContent/mc:Fallback/w:pict/v:rect/v:textbox", "style").match("mso-layout-flow-alt:bottom-to-top")); + // drawingML + assertXPath(pXmlDoc, "/w:document/w:body/w:p/w:r/mc:AlternateContent/mc:Choice/w:drawing/wp:anchor/a:graphic/a:graphicData/wps:wsp/wps:bodyPr", "vert", "vert270"); } DECLARE_OOXMLEXPORT_TEST(testCharHighlight, "char_highlight.docx") diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx index 99bba6d..20cdf08 100644 --- a/sw/source/filter/ww8/docxattributeoutput.cxx +++ b/sw/source/filter/ww8/docxattributeoutput.cxx @@ -510,28 +510,24 @@ void DocxAttributeOutput::EndParagraph( ww8::WW8TableNodeInfoInner::Pointer_t pT { sw::Frame* pParentFrame = &aParentFrames[i]; m_pSerializer->startElementNS( XML_w, XML_r, FSEND ); - SvtMiscOptions aMiscOptions; - if (aMiscOptions.IsExperimentalMode()) - { - m_pSerializer->startElementNS(XML_mc, XML_AlternateContent, FSEND); - m_pSerializer->startElementNS(XML_mc, XML_Choice, - XML_Requires, "wps", - FSEND); - WriteDMLTextFrame(pParentFrame); - m_pSerializer->endElementNS(XML_mc, XML_Choice); - - // Reset table infos, otherwise the depth of the cells will be incorrect, - // in case the text frame had table(s) and we try to export the - // same table second time. - m_rExport.mpTableInfo = ww8::WW8TableInfo::Pointer_t(new ww8::WW8TableInfo()); - - m_pSerializer->startElementNS(XML_mc, XML_Fallback, FSEND); - WriteVMLTextFrame(pParentFrame); - m_pSerializer->endElementNS(XML_mc, XML_Fallback); - m_pSerializer->endElementNS(XML_mc, XML_AlternateContent); - } - else - WriteVMLTextFrame(pParentFrame); + + m_pSerializer->startElementNS(XML_mc, XML_AlternateContent, FSEND); + m_pSerializer->startElementNS(XML_mc, XML_Choice, + XML_Requires, "wps", + FSEND); + WriteDMLTextFrame(pParentFrame); + m_pSerializer->endElementNS(XML_mc, XML_Choice); + + // Reset table infos, otherwise the depth of the cells will be incorrect, + // in case the text frame had table(s) and we try to export the + // same table second time. + m_rExport.mpTableInfo = ww8::WW8TableInfo::Pointer_t(new ww8::WW8TableInfo()); + + m_pSerializer->startElementNS(XML_mc, XML_Fallback, FSEND); + WriteVMLTextFrame(pParentFrame); + m_pSerializer->endElementNS(XML_mc, XML_Fallback); + m_pSerializer->endElementNS(XML_mc, XML_AlternateContent); + m_pSerializer->endElementNS( XML_w, XML_r ); } _______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
