|  |  | 
 |  |  | #include <wobject/xstring.hpp> | 
 |  |  | #include <xcontrol/xtreeview.hpp> | 
 |  |  | #include <xcontrol/xlistview.hpp> | 
 |  |  | #include <xcontrol/xdwgrid.hpp> | 
 |  |  |  | 
 |  |  | #include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" | 
 |  |  | 
 |  |  |          int  LVNI_CUT = 0x0004; | 
 |  |  |          int  LVNI_DROPHILITED = 0x0008; | 
 |  |  |  | 
 |  |  |          int nItem = xlistview::GetNextItem(lv_view.GetId(), -1, LVNI_FOCUSED); | 
 |  |  |          int nItem = lv_view.GetNextItem( -1, LVNI_FOCUSED); | 
 |  |  |          if (nItem < 0) return 1; | 
 |  |  |  | 
 |  |  |          int LVIF_PARAM = 0x0004; | 
 |  |  | 
 |  |  |          lvItem.iSubItem = 0; | 
 |  |  |          lvItem.mask = LVIF_PARAM; | 
 |  |  |  | 
 |  |  |          xlistview::GetItem(lv_view.GetId(), lvItem); | 
 |  |  |          KXMLDOMElement ele = trust(lvItem.lParam as KXMLDOMElement); | 
 |  |  |          lv_view.GetItem( lvItem); | 
 |  |  |          KXMLDOMElement ele = lvItem.lParam; | 
 |  |  |  | 
 |  |  |          xstring src = ele.getAttribute(L"url"); | 
 |  |  |          xstring name = ele.getAttribute(L"caption"); | 
 |  |  | 
 |  |  |             alert(L"文件打开失败1!"); | 
 |  |  |             return -1; | 
 |  |  |          } | 
 |  |  |          //openRet = win32::ShellExecute(0,L"open",L"C:/Temp/"+name,L"",L"",5);	 | 
 |  |  |          //openRet = ShellExecuteW(0,L"open",L"C:/Temp/"+name,L"",L"",5);	 | 
 |  |  |          openRet = ShellExecuteW(0, L"open", L"C:/Temp/" + sfile + ext, L"", L"", 5); | 
 |  |  |          if (openRet < 32) | 
 |  |  |          { | 
 |  |  | 
 |  |  |             xml x; | 
 |  |  |              | 
 |  |  |             xaserverarg args ; | 
 |  |  |             args.setNativePointer(args.CreateInstance()); | 
 |  |  | 				 | 
 |  |  |             args.AddArg(L"myurl", myurl); | 
 |  |  |             args.AddArg(L"name", ret); | 
 |  |  |             args.AddArg(L"filepath", sname); | 
 |  |  | 
 |  |  |          } | 
 |  |  |          return 0; | 
 |  |  |       } | 
 |  |  | #if 0 | 
 |  |  |       int OnDocumentOpen() | 
 |  |  |       { | 
 |  |  |          int  LVNI_ALL = 0x0000; | 
 |  |  | 
 |  |  |          int  LVNI_CUT = 0x0004; | 
 |  |  |          int  LVNI_DROPHILITED = 0x0008; | 
 |  |  |  | 
 |  |  |          int nItem = xlistview::GetNextItem(lv_view.GetId(), -1, LVNI_FOCUSED); | 
 |  |  |          int nItem = lv_view.GetNextItem( -1, LVNI_FOCUSED); | 
 |  |  |          if (nItem < 0) return 1; | 
 |  |  |  | 
 |  |  |          int LVIF_PARAM = 0x0004; | 
 |  |  | 
 |  |  |          lvItem.iSubItem = 0; | 
 |  |  |          lvItem.mask = LVIF_PARAM; | 
 |  |  |  | 
 |  |  |          xlistview::GetItem(lv_view.GetId(), lvItem); | 
 |  |  |          KXMLDOMElement ele = trust(lvItem.lParam as KXMLDOMElement); | 
 |  |  |          lv_view.GetItem( lvItem); | 
 |  |  |          KXMLDOMElement ele = lvItem.lParam; | 
 |  |  |  | 
 |  |  |          xstring src = ele.getAttribute(L"url"); | 
 |  |  |          xstring file = L""; | 
 |  |  | 
 |  |  |  | 
 |  |  |          return -1; | 
 |  |  |       } | 
 |  |  |  | 
 |  |  | #endif | 
 |  |  |       int OnDeleteFile() | 
 |  |  |       { | 
 |  |  |          int  LVNI_ALL = 0x0000; | 
 |  |  | 
 |  |  |          int  LVNI_CUT = 0x0004; | 
 |  |  |          int  LVNI_DROPHILITED = 0x0008; | 
 |  |  |  | 
 |  |  |          int nItem = xlistview::GetNextItem(lv_view.GetId(), -1, LVNI_FOCUSED); | 
 |  |  |          int nItem = lv_view.GetNextItem( -1, LVNI_FOCUSED); | 
 |  |  |          if (nItem < 0) return 1; | 
 |  |  |  | 
 |  |  |          int LVIF_PARAM = 0x0004; | 
 |  |  | 
 |  |  |          lvItem.iSubItem = 0; | 
 |  |  |          lvItem.mask = LVIF_PARAM; | 
 |  |  |  | 
 |  |  |          xlistview::GetItem(lv_view.GetId(), lvItem); | 
 |  |  |          KXMLDOMElement ele = trust(lvItem.lParam as KXMLDOMElement); | 
 |  |  |          lv_view.GetItem( lvItem); | 
 |  |  |          KXMLDOMElement ele = lvItem.lParam; | 
 |  |  |  | 
 |  |  |          xstring src = ele.getAttribute(L"url"); | 
 |  |  |          xstring file = L""; | 
 |  |  | 
 |  |  |             return 0; | 
 |  |  |  | 
 |  |  |          xaserverarg arg ; | 
 |  |  |          arg.setNativePointer(arg.CreateInstance()); | 
 |  |  | 			 | 
 |  |  |          arg.AddArg(L"filepath", file); | 
 |  |  |          xml x ; | 
 |  |  |          if (xurl::get(L"/sale/data/TDocument3/file/delete", arg.GetString(), x) != 1) | 
 |  |  | 
 |  |  |          else | 
 |  |  |          { | 
 |  |  |             //alert(x.GetXmlDoc().text); | 
 |  |  |             xlistview::DeleteItem(lv_view.GetId(), nItem); | 
 |  |  |             lv_view.DeleteItem( nItem); | 
 |  |  |          } | 
 |  |  |  | 
 |  |  |          return 1; | 
 |  |  | 
 |  |  |       xstring GetPayType() | 
 |  |  |       { | 
 |  |  |          xcombobox cbx_type = GetControl(L"cbx_type"); | 
 |  |  |          int h = xcombobox::GetCurSel(cbx_type.GetId()); | 
 |  |  |          int h = cbx_type.GetCurSel(); | 
 |  |  |          if (h < 0) return L""; | 
 |  |  |          return xcombobox::GetLBText(cbx_type.GetId(), h); | 
 |  |  |          return cbx_type.GetLBText( h); | 
 |  |  |       } | 
 |  |  |  | 
 |  |  |       //命令发布函数 | 
 |  |  | 
 |  |  |          AttachEvent(L"WM_XCOMMAND", (FEvent)&DocSO3::OnXCommand); | 
 |  |  |          //获取焦点事件,用于重置工具条 | 
 |  |  |          //AttachEvent(L"WM_SETFOCUS",OnSetFocus); | 
 |  |  |          return 1; | 
 |  |  |       } | 
 |  |  |  | 
 |  |  |       /* | 
 |  |  |       int  OnRetrieve() | 
 |  |  |       { | 
 |  |  |          xml x = new xml; | 
 |  |  |          xml x ; | 
 |  |  |          x.setNativePointer(xml::CreateInstance()); | 
 |  |  |          xaserverarg arg = new xaserverarg; | 
 |  |  |          arg.setNativePointer(arg.CreateInstance()); | 
 |  |  | 
 |  |  |       int SetListViewHeaderColumn(xstring Url) | 
 |  |  |       { | 
 |  |  |          const int LVCFMT_LEFT = 0; | 
 |  |  |          for (int i = 0; i < 3; i++)  lv_view.DeleteColumn(lv_view.GetId(), 1); | 
 |  |  |          lv_view.InsertColumn(lv_view.GetId(), 0, L"类型", 0, 80, 0); | 
 |  |  |          lv_view.InsertColumn(lv_view.GetId(), 0, L"创建日期", LVCFMT_LEFT, 80, 0); | 
 |  |  |          lv_view.InsertColumn(lv_view.GetId(), 0, L"创建人员", LVCFMT_LEFT, 80, 0); | 
 |  |  |          lv_view.InsertColumn(lv_view.GetId(), 0, L"名称", 0, 120, 0); | 
 |  |  |          for (int i = 0; i < 3; i++)  lv_view.DeleteColumn( 1); | 
 |  |  |          lv_view.InsertColumn( 0, L"类型", 0, 80, 0); | 
 |  |  |          lv_view.InsertColumn( 0, L"创建日期", LVCFMT_LEFT, 80, 0); | 
 |  |  |          lv_view.InsertColumn( 0, L"创建人员", LVCFMT_LEFT, 80, 0); | 
 |  |  |          lv_view.InsertColumn( 0, L"名称", 0, 120, 0); | 
 |  |  |  | 
 |  |  |          columnCount = 3; | 
 |  |  |          return 1; | 
 |  |  | 
 |  |  |  | 
 |  |  |       int Retrieve(xstring entityid) | 
 |  |  |       { | 
 |  |  |          lv_view.DeleteItemAll(lv_view.GetId()); | 
 |  |  |          lv_view.DeleteItemAll(); | 
 |  |  |          xstring src = L"object/Forwarder"; | 
 |  |  |          xml x = ViewObject::RetrieveData(L"/sale/data/TDocument3/folder/listex", L"src", src, L"entityid", entityid); | 
 |  |  |          if (x) | 
 |  |  | 
 |  |  |                   KXMLDOMElement e = nlist.item(i); | 
 |  |  |                   xstring name = e.getAttribute(L"caption"); | 
 |  |  |  | 
 |  |  |                   int nItem = xlistview::InsertItemEx(lv_view.GetId(), 0, name, 23, cast(e as int)); | 
 |  |  |                   xlistview::SetItemText(lv_view.GetId(), nItem, 1, e.getAttribute(L"Creator")); | 
 |  |  |                   xlistview::SetItemText(lv_view.GetId(), nItem, 2, e.getAttribute(L"CreateDate")); | 
 |  |  |                   xlistview::SetItemText(lv_view.GetId(), nItem, 3, e.getAttribute(L"Type")); | 
 |  |  |                   int nItem = lv_view.InsertItemEx( 0, name, 23,e); | 
 |  |  |                   lv_view.SetItemText( nItem, 1, e.getAttribute(L"Creator")); | 
 |  |  |                   lv_view.SetItemText( nItem, 2, e.getAttribute(L"CreateDate")); | 
 |  |  |                   lv_view.SetItemText( nItem, 3, e.getAttribute(L"Type")); | 
 |  |  |  | 
 |  |  |                } | 
 |  |  |             } | 
 |  |  | 
 |  |  |  | 
 |  |  |       int onload() | 
 |  |  |       { | 
 |  |  |  | 
 |  |  |          SetArg(); | 
 |  |  |          lv_view = GetControl(L"lv_view"); | 
 |  |  |          columnCount = 0; | 
 |  |  |          SetListViewHeaderColumn(L""); |