From d912c0e116080cf2583fc276fde2c530b9f8f956 Mon Sep 17 00:00:00 2001
From: xj qian <qianxj15@sina.com>
Date: 星期三, 11 十二月 2024 16:33:18 +0800
Subject: [PATCH] update

---
 jrj/xframe/devloper/XDevEditXApp.cpp |   73 ++++++++++++++++++++----------------
 1 files changed, 40 insertions(+), 33 deletions(-)

diff --git a/jrj/xframe/devloper/XDevEditXApp.cpp b/jrj/xframe/devloper/XDevEditXApp.cpp
index d7f0152..c47e298 100644
--- a/jrj/xframe/devloper/XDevEditXApp.cpp
+++ b/jrj/xframe/devloper/XDevEditXApp.cpp
@@ -74,6 +74,8 @@
 			xstring p = L"<box name='image_view' width='22'><xtoolbutton caption='' image='" + xstring(j) + L"'/></box>";
 			SetAgentNode(anode,p);
 		}
+
+		return 1;
 	}
 
 	int onClare()
@@ -125,13 +127,15 @@
 		SendMessage(xc.GetHWND(), 0x014E, 0, 0);
 
 		OnCombSelChanged();
+
+		return 1;
 	}
 
 	xstring getTVData(HTREEITEM hitem)
 	{
 		xstring result = L"";
 		HTREEITEM citem = tv_folder.GetChildItem(hitem);
-		while (citem > 0)
+		while (citem)
 		{
 			xstring str = (wchar_t*)tv_folder.GetItemData(citem);
 			xstring name = str.mid(1,str.find(L" ",0));
@@ -170,7 +174,7 @@
 		{
 			int index = s.toInt();
 			HTREEITEM h = tv_folder.GetChildItem(hitem);
-			while (h > 0)
+			while (h)
 			{
 				xstring p = (wchar_t*)tv_folder.GetItemData(h);
 				xml x ;
@@ -205,6 +209,7 @@
 			copyNode(citem,h);
 			citem = tv_folder.GetNextItem(citem);
 		}
+		return 1;
 	}
 
 	//命令发布函数
@@ -420,44 +425,46 @@
 			}
 		}
 		xc = GetControl(L"image");
-		xstring str = e.getAttribute(L"image");
+		str = e.getAttribute(L"image");
 		//xc.SetText(L""+str);
 		SendMessage(xc.GetHWND(), 0x014E, str.toInt(), 0);
 
 		xc = GetControl(L"index");
-		xstring str = e.getAttribute(L"index");
+		str = e.getAttribute(L"index");
 		xc.SetText(L"" + str);
 
 		xc = GetControl(L"code");
-		xstring str = e.getAttribute(L"code");
+		str = e.getAttribute(L"code");
 		xc.SetText(L"" + str);
 
 		xc = GetControl(L"name");
-		xstring str = e.getAttribute(L"name");
+		str = e.getAttribute(L"name");
 		xc.SetText(L"" + str);
 
 		xc = GetControl(L"status");
-		xstring str = e.getAttribute(L"status");
+		str = e.getAttribute(L"status");
 		xc.SetText(L"" + str);
 
 		OnCombSelChanged();
+
+		return 1;
 	}
 
-	int OnTreeSelChanged(ref TNotifyEvent evt,int param)
+	int OnTreeSelChanged(TEvent* evt,LPARAM param)
 	{
-		ref NMTREEVIEW nmtv = evt.pnmh;
-		int hitem = nmtv.itemNew.hItem;
+		NMTREEVIEW& nmtv = *(NMTREEVIEW*)evt->notify.pnmh;
+		HTREEITEM hitem = nmtv.itemNew.hItem;
 
 		onClare();
 		m_mode = L"new";
 		if (hitem == tv_folder.GetRootItem()) return 0;
 		//IXMLDOMElement e = tv_folder.GetItemData(hitem);
 		//trace(e.xml);
-		param p = tv_folder.GetItemData(hitem);
+		xstring p = (wchar_t*)tv_folder.GetItemData(hitem);
 		xml x ;
-		x.loadXML(L"" + xstring(p));
-		IXMLDOMElement e = x.documentElement;
-		m_type = e.tagName;
+		x.loadXML(p);
+		KXMLDOMElement e = x.documentElement();
+		m_type = e.tagName();
 		if (m_type == L"file")
 			OnCmdDispatch(L"NewFile");
 		else
@@ -469,12 +476,14 @@
 	int OnAttachEvent()
 	{
 		//绑定工具条点击事件
-		AttachEvent(L"WM_XCOMMAND",OnXCommand);
+		AttachEvent(L"WM_XCOMMAND", (FEvent)&XDevEditXApp::OnXCommand);
 		//获取焦点事件,用于重置工具条
-		AttachEvent(L"WM_SETFOCUS",OnSetFocus);
-		AttachEvent(L"image", L"CBN_SELCHANGE",OnCombSelChanged);
-		AttachEvent(L"tv_folder", L"TVN_ENDDRAG",OnTreeDrag);
-		AttachEvent(L"tv_folder", L"TVN_SELCHANGED",OnTreeSelChanged);
+		AttachEvent(L"WM_SETFOCUS", (FEvent)&XDevEditXApp::OnSetFocus);
+		AttachEvent(L"image", L"CBN_SELCHANGE", (FEvent)&XDevEditXApp::OnCombSelChanged);
+		AttachEvent(L"tv_folder", L"TVN_ENDDRAG", (FEvent)&XDevEditXApp::OnTreeDrag);
+		AttachEvent(L"tv_folder", L"TVN_SELCHANGED", (FEvent)&XDevEditXApp::OnTreeSelChanged);
+
+		return 1;
 	}
 
 	int OnInitial()
@@ -487,7 +496,7 @@
 		int i;
 		for (i = 0; i < 35; i++)
 		{
-			SendMessage(xc.GetHWND(), 0x0143, 0, i.toString());
+			SendMessage(xc.GetHWND(), 0x0143, 0, (LPARAM)xstring(i).c_str());
 			//param p=i.toString();
 			//SendMessage(xc.GetHWND(), 0x0151, i, p);
 		}
@@ -496,21 +505,19 @@
 		return 1;
 	}
 
-	int OnTreeAdd(int hitem, IXMLDOMElement e)
+	int OnTreeAdd(HTREEITEM hitem, KXMLDOMElement e)
 	{
 		auto list = e.selectNodes(L"*");
 		int i;
-		int s = list.length;
+		int s = list.length();
 		for (i = 0; i < s; i++)
 		{
-			IXMLDOMElement ele = list.item(i);
+			KXMLDOMElement ele = list.item(i);
 			xstring name = ele.getAttribute(L"caption");
 			xstring image = ele.getAttribute(L"image");
-			image = L"" + image;
-			xstring data = ele.xml;
+			xstring data = ele.xml();
 			data = data.mid(0,data.find(L">",1)) + L"/>";
-			param p = data;
-			int j = tv_folder.InsertChildItem(hitem,name,p,image.toInt());
+			HTREEITEM j = tv_folder.InsertChildItem(hitem,name.c_str(), (LPARAM)data.c_str(true), image.toInt());
 			OnTreeAdd(j,ele);
 		}
 		return 1;
@@ -529,13 +536,13 @@
 		OnCmdDispatch(L"NewFolder");
 		m_mode = L"new";
 
-		if (!GetParam()) return 1;
+		if (!GetWinParam()) return 1;
 		xwin w = GetFrameWindow();
-		xtree tv = w.GetControl(L"DevExplorer");
-		int hItem = GetParam();
-		IXMLDOMElement e = tv.GetItemData(hItem);
+		xtreeview tv = w.GetControl(L"DevExplorer");
+		HTREEITEM hItem = (HTREEITEM)GetWinParam();
+		KXMLDOMElement e = tv.GetItemData(hItem);
 		xstring name = e.getAttribute(L"caption");
-		int root = tv_folder.InsertItem(L"" + name,e,17);
+		HTREEITEM root = tv_folder.InsertItem(name.c_str(), e, 17);
 		xstring content = GetData();
 		if (content != L"")
 		{
@@ -543,7 +550,7 @@
 			xml x ;
 			if (x.loadXML(content))
 			{
-				OnTreeAdd(root,x.documentElement);
+				OnTreeAdd(root,x.documentElement());
 				tv_folder.ExpandItemEx(root);
 			}
 		}

--
Gitblit v1.9.3