From 62a635fd585aa1bafb83c2aea1ac29a508a77ae2 Mon Sep 17 00:00:00 2001
From: xj qian <qianxj15@sina.com>
Date: 星期一, 22 七月 2024 23:25:50 +0800
Subject: [PATCH] update assign

---
 jrj/xframe/kobject/kxml.hpp |   31 +++++++++++++++++++++----------
 1 files changed, 21 insertions(+), 10 deletions(-)

diff --git a/jrj/xframe/kobject/kxml.hpp b/jrj/xframe/kobject/kxml.hpp
index 050b9e5..fc6931f 100644
--- a/jrj/xframe/kobject/kxml.hpp
+++ b/jrj/xframe/kobject/kxml.hpp
@@ -141,15 +141,35 @@
 			this->AddRef();
 			return (LPARAM)this->getImpl();
 		}
-		KXMLDOMNode(LPARAM p) :KXMLDOMNode((void*)p) {}
+		KXMLDOMNode(LPARAM p) :KXMLDOMNode((void*)p) {
+			AddRef();
+		}
 	public:
 		operator bool() { return impl ? true : false; }
+		bool operator !=(KXMLDOMNode& rhs) { return rhs.getImpl() != getImpl(); }
+		bool operator ==(KXMLDOMNode& rhs) { return rhs.getImpl() == getImpl(); }
 	public:
 		void* getImpl();
 	};
 
+
+	class KXMLDOMElement : public KXMLDOMNode
+	{
+	public:
+		KXMLDOMElement(KXMLDOMNode v);
+		KXMLDOMElement(void* impl) :KXMLDOMNode(impl) {}
+		KXMLDOMElement() :KXMLDOMNode() {}
+	public:
+		KXMLDOMElement(LPARAM p) :KXMLDOMNode(p) {}
+	};
+
 	class KXMLDOMDocument : public KXMLDOMNode
 	{
+	public:
+		bool operator !()
+		{
+			return !impl || !documentElement();
+		}
 	public:
 		const wchar_t* text();
 		const wchar_t* url();
@@ -203,15 +223,6 @@
 		KXMLDOMDocument(const KXMLDOMDocument& rhs);
 	};
 
-	class KXMLDOMElement : public KXMLDOMNode
-	{
-	public:
-		KXMLDOMElement( KXMLDOMNode v);
-		KXMLDOMElement(void* impl) :KXMLDOMNode(impl) {}
-		KXMLDOMElement() :KXMLDOMNode() {}
-	public:
-		KXMLDOMElement(LPARAM p) :KXMLDOMNode((void*)p) {}
-	};
 	class KXMLDOMAttribute : public KXMLDOMNode
 	{
 	public:

--
Gitblit v1.9.3