X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/926649a9967d28b9f323d44b87849aa0ca621a42..11f87a381bd9d0fe195ff1a3802ae141413d7c2e:/src/xml/xml.cpp?ds=sidebyside diff --git a/src/xml/xml.cpp b/src/xml/xml.cpp index 5507a4fd77..922332b1d6 100644 --- a/src/xml/xml.cpp +++ b/src/xml/xml.cpp @@ -30,6 +30,7 @@ #include "wx/zstream.h" #include "wx/strconv.h" #include "wx/scopedptr.h" +#include "wx/versioninfo.h" #include "expat.h" // from Expat @@ -54,7 +55,8 @@ wxXmlNode::wxXmlNode(wxXmlNode *parent,wxXmlNodeType type, : m_type(type), m_name(name), m_content(content), m_attrs(attrs), m_parent(parent), m_children(NULL), m_next(next), - m_lineNo(lineNo) + m_lineNo(lineNo), + m_noConversion(false) { if (m_parent) { @@ -74,7 +76,7 @@ wxXmlNode::wxXmlNode(wxXmlNodeType type, const wxString& name, : m_type(type), m_name(name), m_content(content), m_attrs(NULL), m_parent(NULL), m_children(NULL), m_next(NULL), - m_lineNo(lineNo) + m_lineNo(lineNo), m_noConversion(false) {} wxXmlNode::wxXmlNode(const wxXmlNode& node) @@ -115,6 +117,7 @@ void wxXmlNode::DoCopy(const wxXmlNode& node) m_name = node.m_name; m_content = node.m_content; m_lineNo = node.m_lineNo; + m_noConversion = node.m_noConversion; m_children = NULL; wxXmlNode *n = node.m_children; @@ -913,7 +916,13 @@ bool OutputNode(wxOutputStream& stream, break; case wxXML_TEXT_NODE: - rc = OutputEscapedString(stream, node->GetContent(), + if (node->GetNoConversion()) + { + stream.Write(node->GetContent().c_str(), node->GetContent().Length()); + rc = true; + } + else + rc = OutputEscapedString(stream, node->GetContent(), convMem, convFile, Escape_Text); break; @@ -1027,4 +1036,12 @@ bool wxXmlDocument::Save(wxOutputStream& stream, int indentstep) const OutputString(stream, wxS("\n"), convMem.get(), convFile.get()); } +/*static*/ wxVersionInfo wxXmlDocument::GetLibraryVersionInfo() +{ + return wxVersionInfo("expat", + XML_MAJOR_VERSION, + XML_MINOR_VERSION, + XML_MICRO_VERSION); +} + #endif // wxUSE_XML