From a4d2315ee4ca3f6177b4fb2526bed2feff3d89be Mon Sep 17 00:00:00 2001
From: lifan <2308045698@qq.com>
Date: 星期三, 22 十月 2025 16:52:58 +0800
Subject: [PATCH] update
---
jrj/project/IndexMenuWin.cpp | 49 ++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 42 insertions(+), 7 deletions(-)
diff --git a/jrj/project/IndexMenuWin.cpp b/jrj/project/IndexMenuWin.cpp
index 8c0c021..836d85c 100644
--- a/jrj/project/IndexMenuWin.cpp
+++ b/jrj/project/IndexMenuWin.cpp
@@ -11,6 +11,9 @@
#include "wobject/xnode.hpp"
#include "platform/nstring.hpp"
+#include <vector>
+//#include <stdio.h>
+
class __declspec(dllexport)IndexMenuWin: public xwin
{
public:
@@ -28,7 +31,7 @@
HWND m_nHwnd;
int tabNo;
- //int m_panelNo; // 褰撳墠鑿滃崟缁�
+ //int m_panelNo; // 当前菜单组
xstring m_Assignment;
public:
IndexMenuWin(void* implPtr, HWND hWnd) :xwin(implPtr, hWnd) {}
@@ -199,7 +202,7 @@
if(hItem == 0) return 1;
int hasChild = tv_menu.GetItemChild1(hItem);
if(hasChild > 0) return 1;
- int ret = rClick(L"鏀惰棌鑿滃崟");
+ int ret = rClick(L"收藏菜单");
if(ret == 1)
{
xstring id = (xstring)tv_menu.GetItemData(hItem);
@@ -210,7 +213,7 @@
if(xaserver::ExecXQuery(GetServerUrl(),L"[menu.user.edit.xq]",arg.GetString(),x)!=1)
{
trace(x.xml());
- //alert("鏀惰棌澶辫触!");
+ //alert("收藏失败!");
return -1;
}
createTree1();
@@ -290,7 +293,38 @@
dbClick(tv_menu, hItem);
return 1;
}
-
+
+ int SetMenuAgent()
+ {
+ xaserverarg arg;
+ KXMLDOMDocument x;
+ arg.SetArg(L"pid", L"null");
+ arg.SetArg(L"Assignment", this->m_Assignment);
+ if (xaserver::ExecXQuery(GetServerUrl(), L"[Items.menu.xq]", arg.GetString(), x) != 1)
+ {
+ trace(x.xml());
+ alert("取消失败!");
+ return -1;
+ }
+ KXMLDOMNodeList items = x.selectNodes(L"*/item");
+ long len = items.length();
+ xstring tools;
+ wchar_t tool[1204];
+ const wchar_t * templ = L"<vbox width ='90' height='110' style='margin:8,0,0,8'><xtoolbutton width ='70' imageflow1 ='top' height ='70' caption ='%s' name ='Menu-%d' src ='icons32/%s白.png' style ='background-color:%s;background-radius:8pt;'><help>%s</help></xtoolbutton><xlabel width ='70' caption='%s' style ='font-family:思源黑体 CN Bold;font-size:9pt;text-align:center;'/></vbox>";
+ std::vector<const wchar_t*> colors{L"#DE9832",L"#32B2E6",L"#FFEF34",L"#2EA14A",L"#D54C84"};
+ for (int i = 0; i < len; i++)
+ {
+ if (i >= 20)break;
+ xstring name = items.item(i).selectSingleNode(L"name").text();
+ xstring id = items.item(i).selectSingleNode(L"id").text();
+ xstring src = name.replace(L"管理", L"").replace(L"模块", L"");
+ swprintf_s(tool, 1024, templ, L"", i, src.c_str(), colors[i % 5], name.c_str(), name.c_str());
+ if (i == 0) tools = tool; else tools += tool;
+ }
+ tools = L"<box layerflow ='htmlflow'>" + tools + L"</box>";
+ xnode node = this->GetAgentNode(L"menu-item");
+ if(node)this->SetAgentNode(node, tools);
+ }
int SetInitAgent()
{
int no = GetCurPanel();
@@ -346,7 +380,7 @@
xstring str = xc.GetText();
if(str.isEmpty())
{
- alert(L"璇疯緭鍏ユ煡璇㈡潯浠�!");
+ alert(L"请输入查询条件!");
return -1;
}
HTREEITEM rItem = tv_menu2.GetRootItem();
@@ -425,7 +459,7 @@
TVNNMHDR& nmtv = *(TVNNMHDR*)evt->notify.pnmh;
HTREEITEM hItem = nmtv.FromItem;
if(!hItem) return 1;
- int ret = rClick(L"鍙栨秷鏀惰棌");
+ int ret = rClick(L"取消收藏");
if(ret == 1)
{
xstring id = (xstring)tv_menu1.GetItemData(hItem);
@@ -436,7 +470,7 @@
if(xaserver::ExecXQuery(GetServerUrl(),L"[menu.user.edit.xq]",arg.GetString(),x)!=1)
{
trace(x.xml());
- alert("鍙栨秷澶辫触!");
+ alert("取消失败!");
return -1;
}
tv_menu1.DeleteItem(hItem);
@@ -505,6 +539,7 @@
SetInitAgent();
createTree1();
+ SetMenuAgent();
xutil::RestoreCursor(hCursor);
//this->Redraw();
--
Gitblit v1.9.3