LiFan
2024-07-18 b6e2fbfc0469657db86b9757c1813d72f6727962
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
#include <wobject/xstring.hpp>
#include <xcontrol/xtreeview.hpp>
#include <xcontrol/xdwgrid.hpp>
#include <wobject/xdouble.hpp>
#include <xcontrol/xlayersheet.hpp>
#include <xcontrol/xdatetimepick.hpp>
 
 
#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp"
#include "viewobject/view.base.hpp"
 
using xml = KXMLDOMDocument;
    class __declspec(dllexport) TOSelectDlg :  public xframe
    {
        //xdwgrid    dw_list;
 
        xnode    m_agentNode;    //Agent Condition
 
        int SetAgent()
        {
            string xfNodeAgentArea  = "agentarea";
            xnode anode = GetAgentNode(xfNodeAgentArea);
            if(m_agentNode)
            {
                SetAgentNodeContent (anode,m_agentNode);
            }
            else
            {
                msxml::IXMLDOMElement xframeElement =  GetElement();
                msxml::IXMLDOMElement agent = xframeElement.selectSingleNode("agent/"+xfNodeAgentArea+"[1]/*");
                if(agent)
                {
                    string s = agent.xml;
                    m_agentNode =  SetAgentNodeContent (anode,s);
                }
            }
            return 1;
        }
 
        //½¹µã¼¤»î´¦Àíº¯Êý
        int OnSetFocus(ref TEvent evt,int param)
        {
            //ÖØÖù¤¾ßÌõ
            SetAgent();
            return 1;
        }
 
        //ÃüÁî·¢²¼º¯Êý
        int OnCmdDispatch(string comdid)
        {
            return 0;
        }
        
        //ÃüÁî´¦Àíʼþ
        int OnXCommand(ref TXCommandEvent evt,int param)
        {
            return OnCmdDispatch(evt.pStrID);
        }
        
        int OnAttachEvent()
        {
            //°ó¶¨¹¤¾ßÌõµã»÷ʼþ
            AttachEvent("WM_XCOMMAND",OnXCommand);
            //»ñÈ¡½¹µãʼþ£¬ÓÃÓÚÖØÖù¤¾ßÌõ
            AttachEvent("WM_SETFOCUS",OnSetFocus);
        }
        
        /*
        int  OnRetrieve()
        {
            xml x = new xml;
            x.setNativePointer(xml::CreateInstance());
            xaserverarg arg = new xaserverarg;
            arg.setNativePointer(arg.CreateInstance());    
            arg.AddArg("xxx","xxx");
            if (getUrl("",arg.GetString(),x)!=1)
            {
                trace(x.GetXmlDoc().text);
                return -1;
            }else    
            {
                //dw_list.Retrieve(x);
                //dw_list.Redraw();
            }
            return 1;
        }
        */
        
        int onload()
        {
            //dw_list = GetControl("xxx");
            //dw_list.openUrl("xxx");
        
            OnAttachEvent();    
            
            return 1;
        }
        
        int onloaded()
        {
            SetAgent();            
            
            return 1;
        }        
    };
]