From 773f5d597361ab42544ca272f4eaf7898b01d241 Mon Sep 17 00:00:00 2001 From: yuanyuanxiang <962914132@qq.com> Date: Thu, 11 Jun 2026 22:13:30 +0200 Subject: [PATCH] Feat: add HideMsg toggle to hide/show message log panel with menu checkmark --- server/2015Remote/2015Remote.rc | Bin 156978 -> 157110 bytes server/2015Remote/2015RemoteDlg.cpp | 60 ++++++++++++++++++++-------- server/2015Remote/2015RemoteDlg.h | 1 + server/2015Remote/lang/en_US.ini | 1 + server/2015Remote/lang/zh_TW.ini | 1 + server/2015Remote/resource.h | 4 +- 6 files changed, 49 insertions(+), 18 deletions(-) diff --git a/server/2015Remote/2015Remote.rc b/server/2015Remote/2015Remote.rc index a60572ffae5bac79ca4aa5665d60009e4352ca38..2522559609c67c8d36ca750a1fc6e1361d765728 100644 GIT binary patch delta 52 zcmV-40L%Zf$_cj134pW#_}m1Lmd}Nkkj();m+IaD3JFL6NdQCuMF3xyk#_+Tmp+>T K9Jlz~0Xm3hG8IGs delta 17 ZcmdmXnsd`B&W0_FKkjU=xyxwP0RU4*2EnableMenuItem(ID_TOOL_V2_PRIVATEKEY, GetMasterHash() == GetPwdHash() ? MF_ENABLED : MF_GRAYED); } + SubMenu = m_MainMenu.GetSubMenu(4); // 帮助菜单 + if (SubMenu) { + BOOL hideLog = THIS_CFG.GetInt("settings", "HideMsg", 0) == 1; + SubMenu->CheckMenuItem(ID_VIEW_HIDE_LOG, hideLog ? MF_CHECKED : MF_UNCHECKED); + } + std::map myMap = {{SOFTWARE_CAMERA, std::string(_TR("摄像头"))}, {SOFTWARE_TELEGRAM, std::string(_TR("电报")) }}; std::string str = myMap[n]; LVCOLUMN lvColumn; @@ -3111,13 +3118,15 @@ void CMy2015RemoteDlg::OnSize(UINT nType, int cx, int cy) bool needRefresh = (lastType != nType); lastType = nType; + BOOL hideLog = THIS_CFG.GetInt("settings", "HideMsg", 0) == 1; + EnterCriticalSection(&m_cs); if (m_CList_Online.m_hWnd!=NULL) { //(控件也是窗口因此也有句柄) CRect rc; rc.left = 1; //列表的左坐标 rc.top = m_ToolBar.IsVisible() ? 80:1; //列表的上坐标 rc.right = cx-1; //列表的右坐标 - rc.bottom = cy-160; //列表的下坐标 + rc.bottom = hideLog ? cy-20 : cy-160; //隐藏日志时扩展到状态栏 m_GroupTab.MoveWindow(rc); CRect rcInside; @@ -3135,22 +3144,27 @@ void CMy2015RemoteDlg::OnSize(UINT nType, int cx, int cy) LeaveCriticalSection(&m_cs); if (m_CList_Message.m_hWnd!=NULL) { - CRect rc; - rc.left = 1; //列表的左坐标 - rc.top = cy-160; //列表的上坐标 - rc.right = cx-1; //列表的右坐标 - rc.bottom = cy-20; //列表的下坐标 - m_CList_Message.MoveWindow(rc); - if (needRefresh) { - m_CList_Message.RedrawWindow(NULL, NULL, RDW_ERASE | RDW_INVALIDATE | RDW_ALLCHILDREN | RDW_UPDATENOW); - } - auto total = cx - 24; - for(int i=0; iCheckMenuItem(ID_VIEW_HIDE_LOG, hide ? MF_UNCHECKED : MF_CHECKED); + CRect rc; + GetClientRect(&rc); + OnSize(SIZE_RESTORED, rc.Width(), rc.Height()); +} diff --git a/server/2015Remote/2015RemoteDlg.h b/server/2015Remote/2015RemoteDlg.h index 6d9caa6..f4fab04 100644 --- a/server/2015Remote/2015RemoteDlg.h +++ b/server/2015Remote/2015RemoteDlg.h @@ -611,4 +611,5 @@ public: afx_msg void OnMenuCompress(); afx_msg void OnMenuUncompress(); afx_msg void OnUninstallSoftware(); + afx_msg void OnViewHideLog(); }; diff --git a/server/2015Remote/lang/en_US.ini b/server/2015Remote/lang/en_US.ini index 67f3db1..7b8649a 100644 --- a/server/2015Remote/lang/en_US.ini +++ b/server/2015Remote/lang/en_US.ini @@ -1748,6 +1748,7 @@ Ghostִ ɾѡ=Delete Selected ѡ=Copy Selected ־=Clear Log +־=Hide Message FRPS ڱ=FRPS runs on localhost ַ:=LAN Address: õַΪFRPIP=Address must be FRP proxy server IP diff --git a/server/2015Remote/lang/zh_TW.ini b/server/2015Remote/lang/zh_TW.ini index e432bd3..a061405 100644 --- a/server/2015Remote/lang/zh_TW.ini +++ b/server/2015Remote/lang/zh_TW.ini @@ -1741,6 +1741,7 @@ Ghostִ ɾѡ=hx ѡ=x ־=I +־=I FRPS ڱ=FRPS ڱ ַ:=ھWַ: õַΪFRPIP=ԓַ횞FRPIP diff --git a/server/2015Remote/resource.h b/server/2015Remote/resource.h index e3908dd..2ff78f4 100644 --- a/server/2015Remote/resource.h +++ b/server/2015Remote/resource.h @@ -995,6 +995,8 @@ #define ID_MENU_UNCOMPRESS 33057 #define ID_33058 33058 #define ID_UNINSTALL_SOFTWARE 33059 +#define ID_33060 33060 +#define ID_VIEW_HIDE_LOG 33061 #define ID_EXIT_FULLSCREEN 40001 // Next default values for new objects @@ -1002,7 +1004,7 @@ #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NEXT_RESOURCE_VALUE 389 -#define _APS_NEXT_COMMAND_VALUE 33060 +#define _APS_NEXT_COMMAND_VALUE 33062 #define _APS_NEXT_CONTROL_VALUE 2542 #define _APS_NEXT_SYMED_VALUE 105 #endif