summaryrefslogtreecommitdiffstats
path: root/src/libs/7zip/win/CPP/Windows/Menu.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/7zip/win/CPP/Windows/Menu.cpp')
-rw-r--r--src/libs/7zip/win/CPP/Windows/Menu.cpp191
1 files changed, 0 insertions, 191 deletions
diff --git a/src/libs/7zip/win/CPP/Windows/Menu.cpp b/src/libs/7zip/win/CPP/Windows/Menu.cpp
deleted file mode 100644
index 675f86237..000000000
--- a/src/libs/7zip/win/CPP/Windows/Menu.cpp
+++ /dev/null
@@ -1,191 +0,0 @@
-// Windows/Menu.cpp
-
-#include "StdAfx.h"
-
-#ifndef _UNICODE
-#include "Common/StringConvert.h"
-#endif
-#include "Windows/Menu.h"
-
-#ifndef _UNICODE
-extern bool g_IsNT;
-#endif
-
-namespace NWindows {
-
-static void ConvertItemToSysForm(const CMenuItem &item, MENUITEMINFOW &si)
-{
- ZeroMemory(&si, sizeof(si));
- si.cbSize = sizeof(si);
- si.fMask = item.fMask;
- si.fType = item.fType;
- si.fState = item.fState;
- si.wID = item.wID;
- si.hSubMenu = item.hSubMenu;
- si.hbmpChecked = item.hbmpChecked;
- si.hbmpUnchecked = item.hbmpUnchecked;
- si.dwItemData = item.dwItemData;
-}
-
-#ifndef _UNICODE
-static void ConvertItemToSysForm(const CMenuItem &item, MENUITEMINFOA &si)
-{
- ZeroMemory(&si, sizeof(si));
- si.cbSize = sizeof(si);
- si.fMask = item.fMask;
- si.fType = item.fType;
- si.fState = item.fState;
- si.wID = item.wID;
- si.hSubMenu = item.hSubMenu;
- si.hbmpChecked = item.hbmpChecked;
- si.hbmpUnchecked = item.hbmpUnchecked;
- si.dwItemData = item.dwItemData;
-}
-#endif
-
-static void ConvertItemToMyForm(const MENUITEMINFOW &si, CMenuItem &item)
-{
- item.fMask = si.fMask;
- item.fType = si.fType;
- item.fState = si.fState;
- item.wID = si.wID;
- item.hSubMenu = si.hSubMenu;
- item.hbmpChecked = si.hbmpChecked;
- item.hbmpUnchecked = si.hbmpUnchecked;
- item.dwItemData = si.dwItemData;
-}
-
-#ifndef _UNICODE
-static void ConvertItemToMyForm(const MENUITEMINFOA &si, CMenuItem &item)
-{
- item.fMask = si.fMask;
- item.fType = si.fType;
- item.fState = si.fState;
- item.wID = si.wID;
- item.hSubMenu = si.hSubMenu;
- item.hbmpChecked = si.hbmpChecked;
- item.hbmpUnchecked = si.hbmpUnchecked;
- item.dwItemData = si.dwItemData;
-}
-#endif
-
-bool CMenu::GetItem(UINT itemIndex, bool byPosition, CMenuItem &item)
-{
- const UINT kMaxSize = 512;
- #ifndef _UNICODE
- if (!g_IsNT)
- {
- CHAR s[kMaxSize + 1];
- MENUITEMINFOA si;
- ConvertItemToSysForm(item, si);
- if (item.IsString())
- {
- si.cch = kMaxSize;
- si.dwTypeData = s;
- }
- if (GetItemInfo(itemIndex, byPosition, &si))
- {
- ConvertItemToMyForm(si, item);
- if (item.IsString())
- item.StringValue = GetUnicodeString(s);
- return true;
- }
- }
- else
- #endif
- {
- wchar_t s[kMaxSize + 1];
- MENUITEMINFOW si;
- ConvertItemToSysForm(item, si);
- if (item.IsString())
- {
- si.cch = kMaxSize;
- si.dwTypeData = s;
- }
- if (GetItemInfo(itemIndex, byPosition, &si))
- {
- ConvertItemToMyForm(si, item);
- if (item.IsString())
- item.StringValue = s;
- return true;
- }
- }
- return false;
-}
-
-bool CMenu::SetItem(UINT itemIndex, bool byPosition, const CMenuItem &item)
-{
- #ifndef _UNICODE
- if (!g_IsNT)
- {
- MENUITEMINFOA si;
- ConvertItemToSysForm(item, si);
- AString s;
- if (item.IsString())
- {
- s = GetSystemString(item.StringValue);
- si.dwTypeData = (LPTSTR)(LPCTSTR)s;
- }
- return SetItemInfo(itemIndex, byPosition, &si);
- }
- else
- #endif
- {
- MENUITEMINFOW si;
- ConvertItemToSysForm(item, si);
- if (item.IsString())
- si.dwTypeData = (LPWSTR)(LPCWSTR)item.StringValue;
- return SetItemInfo(itemIndex, byPosition, &si);
- }
-}
-
-bool CMenu::InsertItem(UINT itemIndex, bool byPosition, const CMenuItem &item)
-{
- #ifndef _UNICODE
- if (!g_IsNT)
- {
- MENUITEMINFOA si;
- ConvertItemToSysForm(item, si);
- AString s;
- if (item.IsString())
- {
- s = GetSystemString(item.StringValue);
- si.dwTypeData = (LPTSTR)(LPCTSTR)s;
- }
- return InsertItem(itemIndex, byPosition, &si);
- }
- else
- #endif
- {
- MENUITEMINFOW si;
- ConvertItemToSysForm(item, si);
- if (item.IsString())
- si.dwTypeData = (LPWSTR)(LPCWSTR)item.StringValue;
- #ifdef UNDER_CE
- UINT flags = (item.fType & MFT_SEPARATOR) ? MF_SEPARATOR : MF_STRING;
- UINT id = item.wID;
- if ((item.fMask & MIIM_SUBMENU) != 0)
- {
- flags |= MF_POPUP;
- id = (UINT)item.hSubMenu;
- }
- if (!Insert(itemIndex, flags | (byPosition ? MF_BYPOSITION : MF_BYCOMMAND), id, item.StringValue))
- return false;
- return SetItemInfo(itemIndex, byPosition, &si);
- #else
- return InsertItem(itemIndex, byPosition, &si);
- #endif
- }
-}
-
-#ifndef _UNICODE
-bool CMenu::AppendItem(UINT flags, UINT_PTR newItemID, LPCWSTR newItem)
-{
- if (g_IsNT)
- return BOOLToBool(::AppendMenuW(_menu, flags, newItemID, newItem));
- else
- return AppendItem(flags, newItemID, GetSystemString(newItem));
-}
-#endif
-
-}