From d2f7f259a963ed72c0d08a944f685bd1db34bec4 Mon Sep 17 00:00:00 2001
From: LiFan <2308045698@qq.com>
Date: 星期五, 28 六月 2024 16:00:59 +0800
Subject: [PATCH] update

---
 jrj/project/printview/Maint.Template.PrintEx.cpp |   75 +++++++++++++++++++++++--------------
 1 files changed, 47 insertions(+), 28 deletions(-)

diff --git a/jrj/project/printview/Maint.Template.PrintEx.cpp b/jrj/project/printview/Maint.Template.PrintEx.cpp
index 7ec0627..d96d72b 100644
--- a/jrj/project/printview/Maint.Template.PrintEx.cpp
+++ b/jrj/project/printview/Maint.Template.PrintEx.cpp
@@ -1,65 +1,84 @@
-class MaintTemplatePrintWin :  public xframe
+#include <wobject/xstring.hpp>
+#include <xcontrol/xtreeview.hpp>
+#include <xcontrol/xdwgrid.hpp>
+#include <xcontrol/xlayersheet.hpp>
+
+#include "vbusiness/vframe/maint.vframe.vbusiness.hpp"
+#include "viewobject/view.base.hpp"
+
+using xml = KXMLDOMDocument;
+
+class __declspec(dllexport) MaintTemplatePrintWin :  public xframe
 	{
+	public:
 		xcell cell;
 		xnode	m_agentNode;	//Agent Condition
-		string args;
-
+		xstring args;
+	public:
+		MaintTemplatePrintWin(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {}
+	public:
+		static MaintTemplatePrintWin* CreateInstance(void* implPtr, void* hWnd)
+		{
+			MaintTemplatePrintWin* pWin = new MaintTemplatePrintWin(implPtr, (HWND)hWnd);
+			return pWin;
+		}
 		int SetAgent()
 		{
-			string xfNodeAgentArea  = "agentarea";
+			xstring xfNodeAgentArea  = L"agentarea";
 			xnode anode = GetAgentNode(xfNodeAgentArea);
 			if(m_agentNode)
 			{
-				SetAgentNodeContent (anode,m_agentNode);
+				SetAgentNode (anode,m_agentNode);
 			}
 			else
 			{
-				msxml::IXMLDOMElement xframeElement =  GetElement();
-				msxml::IXMLDOMElement agent = xframeElement.selectSingleNode("agent/"+xfNodeAgentArea+"[1]/*");
+				KXMLDOMElement xframeElement =  GetElement();
+				KXMLDOMElement agent = xframeElement.selectSingleNode(L"agent/"+xfNodeAgentArea+L"[1]/*");
 				if(agent)
 				{
-					string s = agent.xml;
-					m_agentNode =  SetAgentNodeContent (anode,s);
+					xstring s = agent.xml();
+					m_agentNode =  SetAgentNode (anode,s);
 				}
 			}
 			return 1;
 		}
 
 		//焦点激活处理函数
-		int OnSetFocus(ref TEvent evt,int param)
+		int OnSetFocus(TEvent* evt, LPARAM p)
 		{
 			//重置工具条
 			SetAgent();
 			return 1;
 		}
+}
 
-		int SendCtrlCmd(xcontrol xc, string cmd)
+		int SendCtrlCmd(xcontrol xc, xstring cmd)
 		{
 			win32::SendMessage(xc.GetId(),0x401,cmd,0);
 			return 1;
 		}
 
 		//命令发布函数
-		int OnCmdDispatch(string comdid)
+		int OnCmdDispatch(xstring comdid)
 		{
-			if(comdid.left(3) == "IK_")
+			if(comdid.left(3) == L"IK_")
 			{
-				string cmd = comdid.mid(3, comdid.length());
-				SendCtrlCmd(GetControl("cell"),cmd);
+				xstring cmd = comdid.mid(3, comdid.length());
+				SendCtrlCmd(GetControl(L"cell"),cmd);
 				return 1;
 			}
-			else if(comdid=="xmFileOpen")
+			else if(comdid==L"xmFileOpen")
 			{
 				cell.OpenFile();
 				cell.Redraw();
 				return 1;
 			}
-			else if(comdid=="xmFileSave")
+			else if(comdid==L"xmFileSave")
 			{
 				cell.SaveFile();
 				return 1;
 			}
-			else if(comdid=="xmFileSaveAs")
+			else if(comdid==L"xmFileSaveAs")
 			{
 				cell.SaveFileAs();
 				return 1;
@@ -68,33 +87,33 @@
 		}
 		
 		//命令处理事件
-		int OnXCommand(ref TXCommandEvent evt,int param)
+		int OnXCommand(TEvent* evt, LPARAM p)
 		{
-			return OnCmdDispatch(evt.pStrID);
+			return OnCmdDispatch(evt->xcommand.pStrID);
 		}
 		
 		int OnAttachEvent()
 		{
 			//绑定工具条点击事件
-			AttachEvent("WM_XCOMMAND",OnXCommand);
+			AttachEvent(L"WM_XCOMMAND", (FEvent)&MaintTemplatePrintWin::OnXCommand);
 			//获取焦点事件,用于重置工具条
-			AttachEvent("WM_SETFOCUS",OnSetFocus);
+			AttachEvent(L"WM_SETFOCUS", (FEvent)&MaintTemplatePrintWin::OnSetFocus);
 		}
 		
 		int onload()
 		{
-			cell = GetControl("cell");
+			cell = GetControl(L"cell");
 			SetAgent();			
 		
 			OnAttachEvent();	
 			
-			if(GetParam())
+			if(GetWinParam())
 			{
-				args = GetParam();
-				cell.openUrl("/sale/data/SysPrintTemplate/getdevxsl",args);
+				args = GetParamString();
+				cell.openUrl(L"/sale/data/SysPrintTemplate/getdevxsl",args);
 			}
 			else
-				args ="";
+				args =L"";
 			
 			return 1;
 		}
@@ -104,4 +123,4 @@
 			
 			return 1;
 		}		
-	};
\ No newline at end of file
+	
\ No newline at end of file

--
Gitblit v1.9.3