Added a flag suppressing node content conversion when saving to XML.

This helps improve the extremely poor performance of XML saving if
you have, for example, hex data that does not need conversion.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2010-10-05 06:17:22 +00:00
parent 6ffb5e91ea
commit 30f6914ba1
3 changed files with 45 additions and 9 deletions

View File

@@ -104,7 +104,7 @@ class WXDLLIMPEXP_XML wxXmlNode
public:
wxXmlNode()
: m_attrs(NULL), m_parent(NULL), m_children(NULL), m_next(NULL),
m_lineNo(-1)
m_lineNo(-1), m_noConversion(false)
{
}
@@ -171,6 +171,10 @@ public:
void SetAttributes(wxXmlAttribute *attr) { m_attrs = attr; }
virtual void AddAttribute(wxXmlAttribute *attr);
// If true, don't do encoding conversion to improve efficiency - node content is ACII text
bool GetNoConversion() const { return m_noConversion; }
void SetNoConversion(bool noconversion) { m_noConversion = noconversion; }
#if WXWIN_COMPATIBILITY_2_8
wxDEPRECATED( inline wxXmlAttribute *GetProperties() const );
wxDEPRECATED( inline bool GetPropVal(const wxString& propName,
@@ -210,6 +214,7 @@ private:
wxXmlAttribute *m_attrs;
wxXmlNode *m_parent, *m_children, *m_next;
int m_lineNo; // line number in original file, or -1
bool m_noConversion; // don't do encoding conversion - node is plain text
void DoCopy(const wxXmlNode& node);
};