aboutsummaryrefslogtreecommitdiff
path: root/graphics/macgui/macmenu.h
diff options
context:
space:
mode:
authorAndrei Prykhodko2018-07-21 11:57:01 +0300
committerAndrei Prykhodko2018-07-21 12:16:54 +0300
commitdf63dea4b66c61a00e3fca50dd355e4d313aa9b1 (patch)
treee4e0539bd80bebcee4d2b55df7e8f927c2a548b6 /graphics/macgui/macmenu.h
parent1f914ea7591dd457e4220b1eccb85cc0bbee1d42 (diff)
downloadscummvm-rg350-df63dea4b66c61a00e3fca50dd355e4d313aa9b1.tar.gz
scummvm-rg350-df63dea4b66c61a00e3fca50dd355e4d313aa9b1.tar.bz2
scummvm-rg350-df63dea4b66c61a00e3fca50dd355e4d313aa9b1.zip
GRAPHICS: MACMENU: added partial unicode support
It misses renderSubmenu impl and accelerator rendering
Diffstat (limited to 'graphics/macgui/macmenu.h')
-rw-r--r--graphics/macgui/macmenu.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/graphics/macgui/macmenu.h b/graphics/macgui/macmenu.h
index c98dd1f0d6..b9d8e0125b 100644
--- a/graphics/macgui/macmenu.h
+++ b/graphics/macgui/macmenu.h
@@ -25,6 +25,10 @@
#include "common/str-array.h"
+namespace Common {
+class U32String;
+}
+
namespace Graphics {
struct MacMenuItem;
@@ -46,12 +50,15 @@ public:
static Common::StringArray *readMenuFromResource(Common::SeekableReadStream *res);
void setCommandsCallback(void (*callback)(int, Common::String &, void *), void *data) { _ccallback = callback; _cdata = data; }
+ void setCommandsCallback(void (*callback)(int, Common::U32String &, void *), void *data) { _unicodeccallback = callback; _cdata = data; }
void addStaticMenus(const MacMenuData *data);
void calcDimensions();
int addMenuItem(const char *name);
+ int addMenuItem(const Common::U32String &name);
void addMenuSubItem(int id, const char *text, int action, int style = 0, char shortcut = 0, bool enabled = true);
+ void addMenuSubItem(int id, const Common::U32String &text, int action, int style = 0, char shortcut = 0, bool enabled = true);
void createSubMenuFromString(int id, const char *string, int commandId);
void clearSubMenu(int id);
@@ -60,6 +67,7 @@ public:
void enableCommand(int menunum, int action, bool state);
void enableCommand(const char *menuitem, const char *menuaction, bool state);
+ void enableCommand(const Common::U32String &menuitem, const Common::U32String &menuaction, bool state);
void disableAllMenus();
void setActive(bool active) { _menuActivated = active; }
@@ -99,6 +107,7 @@ private:
int _activeSubItem;
void (*_ccallback)(int action, Common::String &text, void *data);
+ void (*_unicodeccallback)(int action, Common::U32String &text, void *data);
void *_cdata;
};