From 03ea53b80bd65932f4c13848fddb0385647a6dc3 Mon Sep 17 00:00:00 2001
From: xj qian <qianxj15@sina.com>
Date: 星期一, 15 七月 2024 11:58:07 +0800
Subject: [PATCH] update tree view
---
jrj/xframe/xcontrol/xtreeview.hpp | 2 +-
jrj/project/business/Product.list.cpp | 39 ++++++++++++++++++++-------------------
2 files changed, 21 insertions(+), 20 deletions(-)
diff --git a/jrj/project/business/Product.list.cpp b/jrj/project/business/Product.list.cpp
index 6311956..d543a68 100644
--- a/jrj/project/business/Product.list.cpp
+++ b/jrj/project/business/Product.list.cpp
@@ -731,7 +731,7 @@
//alert(id);
HTREEITEM hItem = tv_folder.GetSelectedItem();
- KXMLDOMElement& e1 = *(KXMLDOMElement * )tv_folder.GetItemData(hItem);
+ KXMLDOMElement e1 = tv_folder.GetItemData(hItem);
xstring categoryid = e1.selectSingleNode(L"@guid").text();
//alert(categoryid);
xaserverarg* arg = new xaserverarg;
@@ -746,7 +746,7 @@
int ItemMaint()
{
HTREEITEM hItem = tv_folder.GetSelectedItem();
- KXMLDOMElement& e = *(KXMLDOMElement * )tv_folder.GetItemData(hItem);
+ KXMLDOMElement e = tv_folder.GetItemData(hItem);
//xstring no = e.getAttribute(L"no");
//if(no==L"") return 1;
xstring guid = e.getAttribute(L"guid");
@@ -777,7 +777,7 @@
HTREEITEM hTopItem = LookupTopFolder(hItem);
xstring name = tv_folder.GetItemLabel(hTopItem);
- KXMLDOMElement& e = *(KXMLDOMElement*)tv_folder.GetItemData(hItem);
+ KXMLDOMElement e = tv_folder.GetItemData(hItem);
//alert(e.xml);
/*xstring no = e.getAttribute(L"no");
if(no==L"") return 1;
@@ -821,7 +821,7 @@
xaserverarg arg;
if (hItem != hTopItem)
{
- KXMLDOMElement& e = *(KXMLDOMElement*)tv_folder.GetItemData(hItem);
+ KXMLDOMElement e = tv_folder.GetItemData(hItem);
xstring folder = e.getAttribute(L"guid");
if (folder != L"")
{
@@ -858,7 +858,7 @@
if (name == L"个人库" && selectname == L"新产品" && tv_folder.GetParentItem(hItem) == hTopItem) return 1;
if (hItem != hTopItem)
{
- KXMLDOMElement& e = *(KXMLDOMElement*)tv_folder.GetItemData(hItem);
+ KXMLDOMElement e = tv_folder.GetItemData(hItem);
xstring folder = e.getAttribute(L"guid");
if (folder != L"")
{
@@ -1189,19 +1189,19 @@
xstring name = tv_folder.GetItemLabel(hTopItem);
HTREEITEM child = tv_folder.GetChildItem(hItem);
xstring no = L"";
- KXMLDOMElement* e=nullptr;
+ KXMLDOMElement e;
if (name == L"公司库" && !child)
{
no = L"";
if (hTopItem != hItem)
{
- e = (KXMLDOMElement * )tv_folder.GetItemData(hItem);
- no = e->getAttribute(L"categoryid");
+ e = tv_folder.GetItemData(hItem);
+ no = e.getAttribute(L"categoryid");
}
else
{
- e = (KXMLDOMElement*)tv_folder.GetItemData(hItem);
- no = e->getAttribute(L"categoryid");
+ e = tv_folder.GetItemData(hItem);
+ no = e.getAttribute(L"categoryid");
}
MakeGoodsFolderItem(hItem, no);
}
@@ -1210,8 +1210,8 @@
no = L"";
if (hTopItem != hItem)
{
- e = (KXMLDOMElement*)tv_folder.GetItemData(hItem);
- no = e->getAttribute(L"categoryid");
+ e = tv_folder.GetItemData(hItem);
+ no = e.getAttribute(L"categoryid");
MakeUserGoodsFolderItem(hItem, no);
}
}
@@ -1245,7 +1245,7 @@
{
while (true)
{
- KXMLDOMElement& e1 = *(KXMLDOMElement*)tv_folder.GetItemData(hItem);
+ KXMLDOMElement e1 = tv_folder.GetItemData(hItem);
xstring str = e1.getAttribute(L"no");
if (str.find(L"Customer:") >= 0) return hItem;
hItem = tv_folder.GetParentItem(hItem);
@@ -1258,7 +1258,7 @@
{
hItem = LookupCustomerFolder(hItem);
if (hItem == 0) return L"";
- KXMLDOMElement& e1 = *(KXMLDOMElement*)tv_folder.GetItemData(hItem);
+ KXMLDOMElement e1 = tv_folder.GetItemData(hItem);
xstring str = e1.getAttribute(L"no");
return str.mid(xstring(L"Customer:").length(), 9999);
}
@@ -1300,7 +1300,7 @@
{
if (selectname != name)
{
- KXMLDOMElement& e1 = *(KXMLDOMElement*)tv_folder.GetItemData(hItem);
+ KXMLDOMElement e1 = tv_folder.GetItemData(hItem);
xstring str = e1.getAttribute(L"no");
alert(str);
if (str.find(L"Customer:") == 0 || str.find(L"SO:") == 0)
@@ -1366,7 +1366,7 @@
if (hItem != hTopItem)
{
- KXMLDOMElement& e = *(KXMLDOMElement*)tv_folder.GetItemData(hItem);
+ KXMLDOMElement e = tv_folder.GetItemData(hItem);
no = e.getAttribute(L"guid");
}
@@ -1456,7 +1456,7 @@
xstring sImage = e.getAttribute(L"image");
int image = 15;
//if(sImage) image = sImage.toInt();
- HTREEITEM h = tv_folder.InsertChildItem(hItem, name, (LPARAM) & e, image);
+ HTREEITEM h = tv_folder.InsertChildItem(hItem, name, e, image);
tv_folder.SetItemChild(h, 1);
ExpandChildFolder(h, e);
}
@@ -1521,14 +1521,15 @@
dwc_list.openUrl(L"/sale/view/ProductLibrary/template/cart/goodslist");
dwc_list.SetReadOnly(true);
+ tv_folder.ExpandItem(tv_folder.GetRootItem());
+ tv_folder.ItemFocus(tv_folder.GetRootItem());
+
if (dw_list.GetRowCount())
{
xshtml xs = GetControl(L"html_detail");
xs.SetContent(makeHtml(1));
}
- tv_folder.ExpandItem(tv_folder.GetRootItem());
- tv_folder.ItemFocus(tv_folder.GetRootItem());
return 1;
}
diff --git a/jrj/xframe/xcontrol/xtreeview.hpp b/jrj/xframe/xcontrol/xtreeview.hpp
index e689ad9..d559fcb 100644
--- a/jrj/xframe/xcontrol/xtreeview.hpp
+++ b/jrj/xframe/xcontrol/xtreeview.hpp
@@ -126,7 +126,7 @@
return (HTREEITEM)SendMessage(GetHWND(), TVM_GETNEXTITEM, TVGN_CARET,0);
}
- string GetItemLabel(HTREEITEM hItem)
+ xstring GetItemLabel(HTREEITEM hItem)
{
int TVM_GETITEM = TV_FIRST + 62;
--
Gitblit v1.9.3