xj qian
2024-06-27 c5d398d6632918583c5c9c830af91b0cbe6fbcac
update win api
已添加2个文件
已修改2个文件
311 ■■■■■ 文件已修改
jrj/ext-jrj/GraduationSchool.cpp 150 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jrj/ext-jrj/GraduationSchoolWin.vx.cpp 150 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jrj/ext-jrj/ext-jrj.vcxproj 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jrj/ext-jrj/ext-jrj.vcxproj.filters 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jrj/ext-jrj/GraduationSchool.cpp
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,150 @@
use "xcontrol.vframe.vbusiness.vd"
use "xbase.vframe.vbusiness.vd"
unit trade
[
    class ViewGraduationSchoolWin : public xframe
    {
        //xdwgrid    dw_list;
        xdwtable dw_base;//新增弹窗时使用
        string gsid;
        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 OnSave()
        {
            xml x = new xml;
            x.setNativePointer(xml::CreateInstance());
            dw_base.AcceptText();
            dw_base.DwUpdateAllTo(x.GetXmlDoc());
            xaserverarg arg = new xaserverarg;
            arg.setNativePointer(xaserverarg::CreateInstance());
            arg.AddArg("content", x.GetXml());
            //trace(x.GetXml());
            if (url::get("/sale/data/GraduationSchool/data/update", arg.GetString(), x) != 1)
            {
                string error = x.GetXmlDoc().text;
                alert("err:" + error);
                return 1;
            }
            //trace("返回值="+x.GetXml());
            string str = x.GetXmlDoc().documentElement.getAttribute("text");
            if (str == "true")
            {
                dw_base.ResetUpdateStatus();
                CloseWindow();
                alert("保存成功!");
            }
            else
            {
                alert("保存失败!");
            }
            return 1;
        }
        int OnClose()
        {
            CloseWindow();
            return 1;
        }
        //命令发布函数
        int OnCmdDispatch(string comdid)
        {
            if (comdid == "xmSave")
                return OnSave();
            else if (comdid == "xmClose")
                return OnClose();
            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("gsid", gsid);
            if (getUrl("/sale/data/GraduationSchool/data/getsingle", arg.GetString(), x) != 1)
            {
                trace(x.GetXmlDoc().text);
                return -1;
            }
            else
            {
                dw_base.Retrieve(x);
                dw_base.Redraw();
            }
            return 1;
        }
        int onload()
        {
            dw_base = GetControl("dw_base");
            dw_base.openUrl("/sale/view/GraduationSchool/template/win");
            gsid = "";
            if (GetParam())
                gsid = GetParam();
            if (gsid != "")
                OnRetrieve();
            dw_base.SetColHeaderHeight(0);
            dw_base.SetRowSelectorWidth(0);
            dw_base.SetHScrollState(false);
            dw_base.SetVScrollState(false);
            OnAttachEvent();
            return 1;
        }
        int onloaded()
        {
            SetAgent();
            return 1;
        }
    };
]
jrj/ext-jrj/GraduationSchoolWin.vx.cpp
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,150 @@
use "xcontrol.vframe.vbusiness.vd"
use "xbase.vframe.vbusiness.vd"
unit trade
[
    class ViewGraduationSchoolWin : public xframe
    {
        //xdwgrid    dw_list;
        xdwtable dw_base;//新增弹窗时使用
        string gsid;
        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 OnSave()
        {
            xml x = new xml;
            x.setNativePointer(xml::CreateInstance());
            dw_base.AcceptText();
            dw_base.DwUpdateAllTo(x.GetXmlDoc());
            xaserverarg arg = new xaserverarg;
            arg.setNativePointer(xaserverarg::CreateInstance());
            arg.AddArg("content", x.GetXml());
            //trace(x.GetXml());
            if (url::get("/sale/data/GraduationSchool/data/update", arg.GetString(), x) != 1)
            {
                string error = x.GetXmlDoc().text;
                alert("err:" + error);
                return 1;
            }
            //trace("返回值="+x.GetXml());
            string str = x.GetXmlDoc().documentElement.getAttribute("text");
            if (str == "true")
            {
                dw_base.ResetUpdateStatus();
                CloseWindow();
                alert("保存成功!");
            }
            else
            {
                alert("保存失败!");
            }
            return 1;
        }
        int OnClose()
        {
            CloseWindow();
            return 1;
        }
        //命令发布函数
        int OnCmdDispatch(string comdid)
        {
            if (comdid == "xmSave")
                return OnSave();
            else if (comdid == "xmClose")
                return OnClose();
            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("gsid", gsid);
            if (getUrl("/sale/data/GraduationSchool/data/getsingle", arg.GetString(), x) != 1)
            {
                trace(x.GetXmlDoc().text);
                return -1;
            }
            else
            {
                dw_base.Retrieve(x);
                dw_base.Redraw();
            }
            return 1;
        }
        int onload()
        {
            dw_base = GetControl("dw_base");
            dw_base.openUrl("/sale/view/GraduationSchool/template/win");
            gsid = "";
            if (GetParam())
                gsid = GetParam();
            if (gsid != "")
                OnRetrieve();
            dw_base.SetColHeaderHeight(0);
            dw_base.SetRowSelectorWidth(0);
            dw_base.SetHScrollState(false);
            dw_base.SetVScrollState(false);
            OnAttachEvent();
            return 1;
        }
        int onloaded()
        {
            SetAgent();
            return 1;
        }
    };
]
jrj/ext-jrj/ext-jrj.vcxproj
@@ -297,6 +297,8 @@
    <ClCompile Include="..\xframe\src\nstring.cpp" />
    <ClCompile Include="..\xframe\src\xstring.cpp" />
    <ClCompile Include="dllmain.cpp" />
    <ClCompile Include="GraduationSchool.cpp" />
    <ClCompile Include="GraduationSchoolWin.vx.cpp" />
    <ClCompile Include="pch.cpp">
      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
jrj/ext-jrj/ext-jrj.vcxproj.filters
@@ -58,6 +58,9 @@
    <Filter Include="project\business\SO">
      <UniqueIdentifier>{22bae563-5202-4217-b8fc-3e83febc6b91}</UniqueIdentifier>
    </Filter>
    <Filter Include="project\business\HR">
      <UniqueIdentifier>{5f718d5a-c9c4-4438-95e8-b079e44db2aa}</UniqueIdentifier>
    </Filter>
  </ItemGroup>
  <ItemGroup>
    <ClInclude Include="framework.h">
@@ -362,5 +365,11 @@
    <ClCompile Include="..\project\business\SO\select.item.so.cpp">
      <Filter>project\business\SO</Filter>
    </ClCompile>
    <ClCompile Include="GraduationSchool.cpp">
      <Filter>project\business\HR</Filter>
    </ClCompile>
    <ClCompile Include="GraduationSchoolWin.vx.cpp">
      <Filter>project\business\HR</Filter>
    </ClCompile>
  </ItemGroup>
</Project>