[Libreoffice-commits] core.git: 4 commits - sw/inc sw/source

Miklos Vajna vmiklos at collabora.co.uk
Sun Mar 1 10:16:08 PST 2015


 sw/inc/ndtxt.hxx                    |    2 
 sw/inc/node.hxx                     |    4 -
 sw/source/core/docnode/node.cxx     |   84 +++++++++++++++++++++++
 sw/source/core/docnode/nodedump.cxx |  131 ------------------------------------
 sw/source/core/txtnode/ndtxt.cxx    |   42 +++++++++++
 sw/source/filter/basflt/shellio.cxx |    2 
 6 files changed, 130 insertions(+), 135 deletions(-)

New commits:
commit c8e23bb389d3ed1c43e45dbbffdec0a418232156
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Sun Mar 1 18:47:07 2015 +0100

    sw: fix typo in Reader::ClearTemplate()
    
    Change-Id: I5092a94569b369b004c05197b5f5820905a1b104

diff --git a/sw/source/filter/basflt/shellio.cxx b/sw/source/filter/basflt/shellio.cxx
index 29e88fc..37a32bd 100644
--- a/sw/source/filter/basflt/shellio.cxx
+++ b/sw/source/filter/basflt/shellio.cxx
@@ -546,7 +546,7 @@ void Reader::ClearTemplate()
     if( pTemplate )
     {
         if( 0 == pTemplate->release() )
-            delete pTemplate,
+            delete pTemplate;
         pTemplate = 0;
     }
 }
commit bbfe81f4548db29d18d5fd1d1850d520ebddee16
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Sun Mar 1 18:11:22 2015 +0100

    Extract SwNode::dumpAsXml() from nodedump
    
    Change-Id: Icb6221c82e5040f7e9e9545e75c26267454a10eb

diff --git a/sw/inc/node.hxx b/sw/inc/node.hxx
index f744c41..4013b25 100644
--- a/sw/inc/node.hxx
+++ b/sw/inc/node.hxx
@@ -283,7 +283,7 @@ public:
      * Dumps the node structure to the given destination (file nodes.xml in the current directory by default)
      * @since 3.5
      */
-    virtual void dumpAsXml( xmlTextWriterPtr writer = NULL ) const;
+    virtual void dumpAsXml(struct _xmlTextWriter* pWriter) const;
 
 private:
     SwNode( const SwNode & rNodes ) SAL_DELETED_FUNCTION;
diff --git a/sw/source/core/docnode/node.cxx b/sw/source/core/docnode/node.cxx
index 2f3db35..d27ce9b 100644
--- a/sw/source/core/docnode/node.cxx
+++ b/sw/source/core/docnode/node.cxx
@@ -844,6 +844,38 @@ sal_uInt8 SwNode::HasPrevNextLayNode() const
     return nRet;
 }
 
+void SwNode::dumpAsXml(xmlTextWriterPtr pWriter) const
+{
+    const char* pName = "???";
+    switch (GetNodeType())
+    {
+    case ND_ENDNODE:
+        pName = "end";
+        break;
+    case ND_STARTNODE:
+    case ND_TEXTNODE:
+        abort(); // overridden
+    case ND_TABLENODE:
+        pName = "table";
+        break;
+    case ND_GRFNODE:
+        pName = "grf";
+        break;
+    case ND_OLENODE:
+        pName = "ole";
+        break;
+    }
+    xmlTextWriterStartElement(pWriter, BAD_CAST(pName));
+
+    xmlTextWriterWriteFormatAttribute(pWriter, BAD_CAST("ptr"), "%p", this);
+    xmlTextWriterWriteAttribute(pWriter, BAD_CAST("type"), BAD_CAST(OString::number(GetNodeType()).getStr()));
+    xmlTextWriterWriteAttribute(pWriter, BAD_CAST("index"), BAD_CAST(OString::number(GetIndex()).getStr()));
+
+    xmlTextWriterEndElement(pWriter);
+    if (GetNodeType() == ND_ENDNODE)
+        xmlTextWriterEndElement(pWriter); // end start node
+}
+
 SwStartNode::SwStartNode( const SwNodeIndex &rWhere, const sal_uInt8 nNdType,
                             SwStartNodeType eSttNd )
     : SwNode( rWhere, nNdType ), eSttNdTyp( eSttNd )
diff --git a/sw/source/core/docnode/nodedump.cxx b/sw/source/core/docnode/nodedump.cxx
index 1faa9e2..fa66e90 100644
--- a/sw/source/core/docnode/nodedump.cxx
+++ b/sw/source/core/docnode/nodedump.cxx
@@ -91,11 +91,6 @@ void WriterHelper::writeFormatAttribute( const char* attribute, const char* form
     xmlTextWriterWriteVFormatAttribute( writer, BAD_CAST( attribute ), format, va );
     va_end( va );
 }
-
-// Hack: somehow conversion from "..." to va_list does
-// bomb on two string litterals in the format.
-static const char* TMP_FORMAT = "%" SAL_PRIuUINTPTR;
-
 }
 
 void SwFldTypes::dumpAsXml( xmlTextWriterPtr w ) const
@@ -139,35 +134,4 @@ void SwFldTypes::dumpAsXml( xmlTextWriterPtr w ) const
     writer.endElement();
 }
 
-void SwNode::dumpAsXml( xmlTextWriterPtr w ) const
-{
-    WriterHelper writer( w );
-    const char* name = "???";
-    switch( GetNodeType())
-    {
-        case ND_ENDNODE:
-            name = "end";
-            break;
-        case ND_STARTNODE:
-        case ND_TEXTNODE:
-            abort(); // overridden
-        case ND_TABLENODE:
-            name = "table";
-            break;
-        case ND_GRFNODE:
-            name = "grf";
-            break;
-        case ND_OLENODE:
-            name = "ole";
-            break;
-    }
-    writer.startElement( name );
-    writer.writeFormatAttribute( "ptr", "%p", this );
-    writer.writeFormatAttribute( "type", "0x%04x", GetNodeType() );
-    writer.writeFormatAttribute( "index", TMP_FORMAT, GetIndex() );
-    writer.endElement();
-    if( GetNodeType() == ND_ENDNODE )
-        writer.endElement(); // end start node
-}
-
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit 76f52699d792872cbe06271db43ce86800d604f0
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Sun Mar 1 17:35:31 2015 +0100

    Extract SwStartNode::dumpAsXml() from nodedump
    
    Change-Id: Ib4d3ab9014ccab7c226a3aaa4b70fd1bf1af3e33

diff --git a/sw/inc/node.hxx b/sw/inc/node.hxx
index 03dc719..f744c41 100644
--- a/sw/inc/node.hxx
+++ b/sw/inc/node.hxx
@@ -315,7 +315,7 @@ public:
     /// Call ChkCondcoll to all ContentNodes of section.
     void CheckSectionCondColl() const;
 
-    virtual void dumpAsXml( xmlTextWriterPtr writer = NULL ) const SAL_OVERRIDE;
+    virtual void dumpAsXml(struct _xmlTextWriter* pWriter) const SAL_OVERRIDE;
 
 private:
     SwStartNode( const SwStartNode & rNode ) SAL_DELETED_FUNCTION;
diff --git a/sw/source/core/docnode/node.cxx b/sw/source/core/docnode/node.cxx
index d9700e9..2f3db35 100644
--- a/sw/source/core/docnode/node.cxx
+++ b/sw/source/core/docnode/node.cxx
@@ -882,6 +882,58 @@ void SwStartNode::CheckSectionCondColl() const
 //FEATURE::CONDCOLL
 }
 
+void SwStartNode::dumpAsXml(xmlTextWriterPtr pWriter) const
+{
+    const char* pName = "???";
+    switch (GetNodeType())
+    {
+    case ND_TABLENODE:
+        pName = "table";
+        break;
+    case ND_SECTIONNODE:
+        pName = "section";
+        break;
+    default:
+        switch(GetStartNodeType())
+        {
+        case SwNormalStartNode:
+            pName = "start";
+            break;
+        case SwTableBoxStartNode:
+            pName = "tablebox";
+            break;
+        case SwFlyStartNode:
+            pName = "fly";
+            break;
+        case SwFootnoteStartNode:
+            pName = "footnote";
+            break;
+        case SwHeaderStartNode:
+            pName = "header";
+            break;
+        case SwFooterStartNode:
+            pName = "footer";
+            break;
+        }
+        break;
+    }
+
+    xmlTextWriterStartElement(pWriter, BAD_CAST(pName));
+    xmlTextWriterWriteFormatAttribute(pWriter, BAD_CAST("ptr"), "%p", this);
+    xmlTextWriterWriteAttribute(pWriter, BAD_CAST("type"), BAD_CAST(OString::number(GetNodeType()).getStr()));
+    xmlTextWriterWriteAttribute(pWriter, BAD_CAST("index"), BAD_CAST(OString::number(GetIndex()).getStr()));
+
+    if (IsTableNode())
+    {
+        xmlTextWriterStartElement(pWriter, BAD_CAST("attrset"));
+        GetTableNode()->GetTable().GetFrmFmt()->GetAttrSet().dumpAsXml(pWriter);
+        xmlTextWriterEndElement(pWriter);
+    }
+
+    // xmlTextWriterEndElement(pWriter); - it is a start node, so don't end, will make xml better nested
+}
+
+
 /** Insert a node into the array
  *
  * The StartOfSection pointer is set to the given node.
diff --git a/sw/source/core/docnode/nodedump.cxx b/sw/source/core/docnode/nodedump.cxx
index 64b630c..1faa9e2 100644
--- a/sw/source/core/docnode/nodedump.cxx
+++ b/sw/source/core/docnode/nodedump.cxx
@@ -170,55 +170,4 @@ void SwNode::dumpAsXml( xmlTextWriterPtr w ) const
         writer.endElement(); // end start node
 }
 
-void SwStartNode::dumpAsXml( xmlTextWriterPtr w ) const
-{
-    WriterHelper writer( w );
-    const char* name = "???";
-    switch( GetNodeType() )
-    {
-        case ND_TABLENODE:
-            name = "table";
-            break;
-        case ND_SECTIONNODE:
-            name = "section";
-            break;
-        default:
-            switch( GetStartNodeType())
-            {
-                case SwNormalStartNode:
-                    name = "start";
-                    break;
-                case SwTableBoxStartNode:
-                    name = "tablebox";
-                    break;
-                case SwFlyStartNode:
-                    name = "fly";
-                    break;
-                case SwFootnoteStartNode:
-                    name = "footnote";
-                    break;
-                case SwHeaderStartNode:
-                    name = "header";
-                    break;
-                case SwFooterStartNode:
-                    name = "footer";
-                    break;
-            }
-            break;
-    }
-    writer.startElement( name );
-    writer.writeFormatAttribute( "ptr", "%p", this );
-    writer.writeFormatAttribute( "type", "0x%04x", GetNodeType() );
-    writer.writeFormatAttribute( "index", TMP_FORMAT, GetIndex() );
-
-    if (IsTableNode())
-    {
-        writer.startElement("attrset");
-        GetTableNode()->GetTable().GetFrmFmt()->GetAttrSet().dumpAsXml(writer);
-        writer.endElement();
-    }
-
-    // writer.endElement(); - it is a start node, so don't end, will make xml better nested
-}
-
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit 14988563074aa84cf29997103e7f8c2dbe4d2890
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Sun Mar 1 17:13:21 2015 +0100

    Extract SwTxtNode::dumpAsXml() from nodedump
    
    Change-Id: Ic9711129b5b5db2151889e2db511f0ae5b216bc0

diff --git a/sw/inc/ndtxt.hxx b/sw/inc/ndtxt.hxx
index 77c93c9..45e3107 100644
--- a/sw/inc/ndtxt.hxx
+++ b/sw/inc/ndtxt.hxx
@@ -792,7 +792,7 @@ public:
 
     bool IsCollapse() const;
 
-    virtual void dumpAsXml( xmlTextWriterPtr writer = NULL ) const SAL_OVERRIDE;
+    virtual void dumpAsXml(struct _xmlTextWriter* pWriter) const SAL_OVERRIDE;
 
     sal_uInt32 GetRsid( sal_Int32 nStt, sal_Int32 nEnd ) const;
     sal_uInt32 GetParRsid() const;
diff --git a/sw/source/core/docnode/nodedump.cxx b/sw/source/core/docnode/nodedump.cxx
index 57b4835..64b630c 100644
--- a/sw/source/core/docnode/nodedump.cxx
+++ b/sw/source/core/docnode/nodedump.cxx
@@ -221,48 +221,4 @@ void SwStartNode::dumpAsXml( xmlTextWriterPtr w ) const
     // writer.endElement(); - it is a start node, so don't end, will make xml better nested
 }
 
-void SwTxtNode::dumpAsXml( xmlTextWriterPtr w ) const
-{
-    WriterHelper writer( w );
-    writer.startElement( "text" );
-    writer.writeFormatAttribute( "ptr", "%p", this );
-    writer.writeFormatAttribute( "index", TMP_FORMAT, GetIndex() );
-    OUString txt = GetTxt();
-    for( int i = 0; i < 32; ++i )
-        txt = txt.replace( i, '*' );
-    OString txt8 = OUStringToOString( txt, RTL_TEXTENCODING_UTF8 );
-    writer.startElement("inner_text");
-    xmlTextWriterWriteString( writer, BAD_CAST( txt8.getStr()));
-    writer.endElement( );
-
-    if (GetFmtColl())
-    {
-        SwTxtFmtColl* pColl = static_cast<SwTxtFmtColl*>(GetFmtColl());
-        writer.startElement("swtxtfmtcoll");
-        OString aName = OUStringToOString(pColl->GetName(), RTL_TEXTENCODING_UTF8);
-        writer.writeFormatAttribute("name", "%s", BAD_CAST(aName.getStr()));
-        writer.endElement();
-    }
-
-    if (HasSwAttrSet())
-    {
-        writer.startElement("attrset");
-        GetSwAttrSet().dumpAsXml(writer);
-        writer.endElement();
-    }
-
-    if (HasHints())
-    {
-        writer.startElement("hints");
-        const SwpHints& rHints = GetSwpHints();
-        for (size_t i = 0; i < rHints.Count(); ++i)
-            rHints.GetTextHint(i)->dumpAsXml(w);
-        writer.endElement();
-    }
-    if (GetNumRule())
-        GetNumRule()->dumpAsXml(w);
-
-    writer.endElement();
-}
-
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/core/txtnode/ndtxt.cxx b/sw/source/core/txtnode/ndtxt.cxx
index e157578..9a360fd 100644
--- a/sw/source/core/txtnode/ndtxt.cxx
+++ b/sw/source/core/txtnode/ndtxt.cxx
@@ -4969,6 +4969,48 @@ sal_uInt16 SwTxtNode::ResetAllAttr()
     return nRet;
 }
 
+void SwTxtNode::dumpAsXml(xmlTextWriterPtr pWriter) const
+{
+    xmlTextWriterStartElement(pWriter, BAD_CAST("swTxtNode"));
+    xmlTextWriterWriteFormatAttribute(pWriter, BAD_CAST("ptr"), "%p", this);
+    xmlTextWriterWriteAttribute(pWriter, BAD_CAST("index"), BAD_CAST(OString::number(GetIndex()).getStr()));
+
+    OUString sText = GetTxt();
+    for (int i = 0; i < 32; ++i)
+        sText = sText.replace(i, '*');
+    xmlTextWriterStartElement(pWriter, BAD_CAST("m_Text"));
+    xmlTextWriterWriteString(pWriter, BAD_CAST(sText.toUtf8().getStr()));
+    xmlTextWriterEndElement(pWriter);
+
+    if (GetFmtColl())
+    {
+        xmlTextWriterStartElement(pWriter, BAD_CAST("swTxtFmtColl"));
+        xmlTextWriterWriteAttribute(pWriter, BAD_CAST("name"), BAD_CAST(GetFmtColl()->GetName().toUtf8().getStr()));
+        xmlTextWriterEndElement(pWriter);
+    }
+
+    if (HasSwAttrSet())
+    {
+        xmlTextWriterStartElement(pWriter, BAD_CAST("swAttrSet"));
+        GetSwAttrSet().dumpAsXml(pWriter);
+        xmlTextWriterEndElement(pWriter);
+    }
+
+    if (HasHints())
+    {
+        xmlTextWriterStartElement(pWriter, BAD_CAST("swpHints"));
+        const SwpHints& rHints = GetSwpHints();
+        for (size_t i = 0; i < rHints.Count(); ++i)
+            rHints.GetTextHint(i)->dumpAsXml(pWriter);
+        xmlTextWriterEndElement(pWriter);
+    }
+
+    if (GetNumRule())
+        GetNumRule()->dumpAsXml(pWriter);
+
+    xmlTextWriterEndElement(pWriter);
+}
+
 sal_uInt32 SwTxtNode::GetRsid( sal_Int32 nStt, sal_Int32 nEnd ) const
 {
     SfxItemSet aSet( (SfxItemPool&) (GetDoc()->GetAttrPool()), RES_CHRATR_RSID, RES_CHRATR_RSID );


More information about the Libreoffice-commits mailing list