From de4c5b12eb264c9a5b8244fac8cea25e01be18be Mon Sep 17 00:00:00 2001 From: xj qian <qianxj15@sina.com> Date: 星期三, 26 六月 2024 18:34:05 +0800 Subject: [PATCH] update folder data item --- jrj/xframe/kobject/kxml.hpp | 43 +++++++++++++++++++++++++++++++++++++------ 1 files changed, 37 insertions(+), 6 deletions(-) diff --git a/jrj/xframe/kobject/kxml.hpp b/jrj/xframe/kobject/kxml.hpp index f152062..050b9e5 100644 --- a/jrj/xframe/kobject/kxml.hpp +++ b/jrj/xframe/kobject/kxml.hpp @@ -133,6 +133,16 @@ KXMLDOMNode(const KXMLDOMNode& rhs); const KXMLDOMNode& operator =(const KXMLDOMNode& rhs); public: + unsigned long AddRef(); + unsigned long Release(); + public: + LPARAM ptr() + { + this->AddRef(); + return (LPARAM)this->getImpl(); + } + KXMLDOMNode(LPARAM p) :KXMLDOMNode((void*)p) {} + public: operator bool() { return impl ? true : false; } public: void* getImpl(); @@ -199,6 +209,8 @@ KXMLDOMElement( KXMLDOMNode v); KXMLDOMElement(void* impl) :KXMLDOMNode(impl) {} KXMLDOMElement() :KXMLDOMNode() {} + public: + KXMLDOMElement(LPARAM p) :KXMLDOMNode((void*)p) {} }; class KXMLDOMAttribute : public KXMLDOMNode { @@ -247,16 +259,35 @@ KXMLDOMDocumentFragment(void* impl) :KXMLDOMNode(impl) {} }; - class KXMLParseError : public KXMLDOMNode - { - public: - KXMLParseError(KXMLDOMNode& v); - KXMLParseError(void* impl) :KXMLDOMNode(impl) {} - }; }} + + using KXMLDOMDocument=Hxsoft::XFrame::KXMLDOMDocument; using KXMLDOMNode=Hxsoft::XFrame::KXMLDOMNode; using KXMLDOMElement=Hxsoft::XFrame::KXMLDOMElement; using KXMLDOMNodeList = Hxsoft::XFrame::KXMLDOMNodeList; +class KXMLParseError : public KXMLDOMNode +{ +public: + KXMLParseError(KXMLDOMNode& v); + KXMLParseError(void* impl) :KXMLDOMNode(impl) {} +}; + +class KXMLDOMElementPtr +{ +private: + KXMLDOMElement* m_pElement; +public: + KXMLDOMElementPtr(LPARAM ele) :m_pElement((KXMLDOMElement*)ele) {} + KXMLDOMElementPtr(KXMLDOMElement* pEle) :m_pElement(pEle) {} + KXMLDOMElementPtr(KXMLDOMElement ele) :m_pElement(new KXMLDOMElement(ele)) {} +public: + KXMLDOMElement* value() { return m_pElement; } +public: + operator KXMLDOMElement* () { return m_pElement; } + operator KXMLDOMElement& () { return *m_pElement; } + KXMLDOMElement* operator -> () { return m_pElement; } +}; + -- Gitblit v1.9.3