29 #import<msxml6.dll> no_implementation
33 namespace jmmcg {
namespace LIBJMMCG_VER_NAMESPACE {
namespace NTUtils {
namespace XML {
44 inline MSXML2::IXMLDOMNodePtr
__fastcall CreateNode(
const node_types type,
const tchar *node_name,
const MSXML2::IXMLDOMDocumentPtr &doc,
const tchar *xml_ns);
45 inline MSXML2::IXMLDOMNodePtr
__fastcall CreateNode(
const node_types type,
const tchar *node_name,
const MSXML2::IXMLDOMDocumentPtr &doc,
const tchar *xml_ns,
const MSXML2::IXMLDOMNodePtr &node);
49 inline void __fastcall ToXML(
const MSXML2::IXMLDOMDocumentPtr &doc,
const MSXML2::IXMLDOMNodePtr &n,
const POINT &pt,
const tchar *xml_ns);
50 inline void __fastcall FromXML(
const MSXML2::IXMLDOMNodePtr &n,POINT &pt);
51 inline void __fastcall ToXML(
const MSXML2::IXMLDOMDocumentPtr &doc,
const MSXML2::IXMLDOMNodePtr &n,
const RECT &rect,
const tchar *xml_ns);
52 inline void __fastcall FromXML(
const MSXML2::IXMLDOMNodePtr &n,RECT &rect);
53 template<
typename Value>
inline void __fastcall ToXML(
const MSXML2::IXMLDOMDocumentPtr &doc,
const MSXML2::IXMLDOMNodePtr &n,
const tchar *colln_name,
const std::vector<Value> &colln,
const tchar *xml_ns);
54 template<>
inline void __fastcall ToXML(
const MSXML2::IXMLDOMDocumentPtr &doc,
const MSXML2::IXMLDOMNodePtr &n,
const tchar *colln_name,
const std::vector<
double> &colln,
const tchar *xml_ns);
55 template<>
inline void __fastcall ToXML(
const MSXML2::IXMLDOMDocumentPtr &doc,
const MSXML2::IXMLDOMNodePtr &n,
const tchar *colln_name,
const std::vector<CPoint> &colln,
const tchar *xml_ns);
56 template<
typename Value>
inline void __fastcall FromXML(
const MSXML2::IXMLDOMNodePtr &n,
const tstring &colln_name,std::vector<Value> &colln);
57 template<>
inline void __fastcall FromXML(
const MSXML2::IXMLDOMNodePtr &n,
const tstring &colln_name,std::vector<
double> &colln);
58 template<>
inline void __fastcall FromXML(
const MSXML2::IXMLDOMNodePtr &n,
const tstring &colln_name,std::vector<CPoint> &colln);
68 inline void __fastcall LoadXML(
const tchar *xml);
69 inline void __fastcall Load(
const tchar *filename);
70 inline void __fastcall Load(
const IStreamPtr &file);
71 inline void __fastcall Save(
const tchar *filename);
74 const MSXML2::IXMLDOMDocumentPtr doc;
76 static inline MSXML2::IXMLDOMDocumentPtr
__fastcall MakeDoc(
void);
84 inline __stdcall DocNS(
const tstring &ns=_T(
""))
90 virtual inline __stdcall ~
DocNS(
void) {
93 inline const tstring &
__fastcall
100 return XML::CreateNode(type,node_name,Doc(),n_space.c_str(),node);
105 return XML::CreateComment(node_name,comment,Doc(),n_space.c_str(),node);
108 inline void __fastcall
109 ToXML(
const MSXML2::IXMLDOMNodePtr &n,
const POINT &pt) {
110 XML::ToXML(Doc(),n,pt,n_space.c_str());
112 inline void __fastcall
113 ToXML(
const MSXML2::IXMLDOMNodePtr &n,
const RECT &rect) {
114 XML::ToXML(Doc(),n,rect,n_space.c_str());
116 template<
typename Value>
inline void __fastcall
117 ToXML(
const MSXML2::IXMLDOMNodePtr &n,
const tchar *colln_name,
const std::vector<Value> &colln) {
118 XML::ToXML(Doc(),n,colln_name,colln,n_space.c_str());
122 const tstring n_space;
125 inline DocNS &
__fastcall operator=(
const DocNS &);