commit 521e943e8616d20a6c79d1d61665527d47748fd7
parent 77d39b49fa820008dee793a6715a7add31e29bd0
Author: cfillion <cfillion@users.noreply.github.com>
Date: Wed, 30 Dec 2015 00:59:06 -0500
use unicode variant of win32 menu functions for menus
Diffstat:
3 files changed, 12 insertions(+), 14 deletions(-)
diff --git a/src/main.cpp b/src/main.cpp
@@ -35,15 +35,15 @@ static void menuHook(const char *name, HMENU handle, int f)
if(strcmp(name, "Main extensions") || f != 0)
return;
- Menu menu = Menu(handle).addMenu("ReaPack");
+ Menu menu = Menu(handle).addMenu(AUTO_STR("ReaPack"));
- menu.addAction("Synchronize packages",
+ menu.addAction(AUTO_STR("Synchronize packages"),
NamedCommandLookup("_REAPACK_SYNC"));
- menu.addAction("Import remote repository...",
+ menu.addAction(AUTO_STR("Import remote repository..."),
NamedCommandLookup("_REAPACK_IMPORT"));
- menu.addAction("Manage remotes...",
+ menu.addAction(AUTO_STR("Manage remotes..."),
NamedCommandLookup("_REAPACK_MANAGE"));
}
diff --git a/src/menu.cpp b/src/menu.cpp
@@ -32,14 +32,14 @@ Menu::Menu(HMENU handle)
addSeparator();
}
-void Menu::addAction(const char *label, const int commandId)
+void Menu::addAction(const auto_char *label, const int commandId)
{
MENUITEMINFO mii{};
mii.cbSize = sizeof(MENUITEMINFO);
mii.fMask |= MIIM_TYPE;
mii.fType = MFT_STRING;
- mii.dwTypeData = const_cast<char *>(label);
+ mii.dwTypeData = const_cast<auto_char *>(label);
mii.fMask |= MIIM_ID;
mii.wID = commandId;
@@ -58,14 +58,14 @@ void Menu::addSeparator()
append(mii);
}
-Menu Menu::addMenu(const char *label)
+Menu Menu::addMenu(const auto_char *label)
{
MENUITEMINFO mii{};
mii.cbSize = sizeof(MENUITEMINFO);
mii.fMask |= MIIM_TYPE;
mii.fType = MFT_STRING;
- mii.dwTypeData = const_cast<char *>(label);
+ mii.dwTypeData = const_cast<auto_char *>(label);
mii.fMask |= MIIM_SUBMENU;
mii.hSubMenu = CreatePopupMenu();
diff --git a/src/menu.hpp b/src/menu.hpp
@@ -24,6 +24,8 @@
#include <swell/swell.h>
#endif
+#include "encoding.hpp"
+
class Menu {
public:
Menu(HMENU handle);
@@ -31,16 +33,12 @@ public:
unsigned int size() { return m_size; }
bool empty() const { return m_size == 0; }
- void addAction(const char *label, const int commandId);
+ void addAction(const auto_char *label, const int commandId);
void addSeparator();
- Menu addMenu(const char *label);
+ Menu addMenu(const auto_char *label);
private:
-#ifdef _WIN32
- void append(MENUITEMINFOA &);
-#else
void append(MENUITEMINFO &);
-#endif
HMENU m_handle;
unsigned int m_size;