summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorge Hazan <ghazan@miranda.im>2021-03-19 17:11:48 +0300
committerGeorge Hazan <ghazan@miranda.im>2021-03-19 17:11:48 +0300
commitbe033094b81ececb2fd911b0212d3542491212f5 (patch)
tree6894b521325c4eceb85cedf2786d62ddea147495
parentee4f504dd03d02468d6aa08e11a497325d8dee51 (diff)
Menu_ConfigureItem(hUserMenu, MCI_OPT_DISABLED, TRUE) - a setting to make a menu item hidden by default
-rw-r--r--include/m_genmenu.h1
-rw-r--r--src/mir_app/src/genmenu.h2
-rw-r--r--src/mir_app/src/menu_utils.cpp4
3 files changed, 6 insertions, 1 deletions
diff --git a/include/m_genmenu.h b/include/m_genmenu.h
index db2c362e2d..9c7a444116 100644
--- a/include/m_genmenu.h
+++ b/include/m_genmenu.h
@@ -239,6 +239,7 @@ __forceinline int Menu_ConfigureObject(int hMenuObject, int iSetting, LPCSTR psz
#define MCI_OPT_HOTKEY 2 // DWORD value = MAKELONG(VK_*, VK_SHIFT)
#define MCI_OPT_EXECPARAM 3 // INT_PTR or void*, associated with this item
#define MCI_OPT_UID 4 // TMenuItem::uid as string like "2E407C55-5E89-4E83-9B79-15A803E7EE90"
+#define MCI_OPT_DISABLED 5 // Hidden by default
EXTERN_C MIR_APP_DLL(int) Menu_ConfigureItem(HGENMENU hItem, int iOption, INT_PTR value);
diff --git a/src/mir_app/src/genmenu.h b/src/mir_app/src/genmenu.h
index 27c72b947d..37ee580d52 100644
--- a/src/mir_app/src/genmenu.h
+++ b/src/mir_app/src/genmenu.h
@@ -49,7 +49,7 @@ struct TMO_IntMenuItem
int iconId; // icon index in the section's image list
TMO_MenuItem mi; // user-defined data
char* pszUniqName; // unique name
- wchar_t* ptszCustomName;
+ wchar_t* ptszCustomName;
HANDLE hIcolibItem; // handle of iconlib item
HBITMAP hBmp;
int originalPosition; // !!!!!!!!!!!!!!!!!!!!!!!!
diff --git a/src/mir_app/src/menu_utils.cpp b/src/mir_app/src/menu_utils.cpp
index 7804d588a0..1380de2271 100644
--- a/src/mir_app/src/menu_utils.cpp
+++ b/src/mir_app/src/menu_utils.cpp
@@ -503,6 +503,10 @@ MIR_APP_DLL(int) Menu_ConfigureItem(HGENMENU hItem, int iOption, INT_PTR value)
case MCI_OPT_UID:
UuidFromStringA((RPC_CSTR)value, (UUID*)&pimi->mi.uid);
return 0;
+
+ case MCI_OPT_DISABLED:
+ pimi->customVisible = false;
+ return 0;
}
return 1;