diff options
author | Andrei Prykhodko | 2018-07-22 20:37:44 +0300 |
---|---|---|
committer | Andrei Prykhodko | 2018-07-22 20:37:44 +0300 |
commit | 62c66bc67a202694229a46e09d6881eea4ebd77f (patch) | |
tree | bc2e36f04525d06a5dd95751611b410b4c117ec2 | |
parent | 71e933e7787e2be450ef8955e7f3289376ddce21 (diff) | |
download | scummvm-rg350-62c66bc67a202694229a46e09d6881eea4ebd77f.tar.gz scummvm-rg350-62c66bc67a202694229a46e09d6881eea4ebd77f.tar.bz2 scummvm-rg350-62c66bc67a202694229a46e09d6881eea4ebd77f.zip |
GRAPHICS: MACGUI: added unicode submenu rendering
-rw-r--r-- | graphics/macgui/macmenu.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/graphics/macgui/macmenu.cpp b/graphics/macgui/macmenu.cpp index 6d0f0fede2..427f605614 100644 --- a/graphics/macgui/macmenu.cpp +++ b/graphics/macgui/macmenu.cpp @@ -504,17 +504,21 @@ void MacMenu::renderSubmenu(MacMenuItem *menu) { for (uint i = 0; i < menu->subitems.size(); i++) { Common::String text(menu->subitems[i]->text); Common::String acceleratorText(getAcceleratorString(menu->subitems[i], "")); + + Common::U32String unicodeText(menu->subitems[i]->unicodeText); + // add unicode accelerator + int accelX = r->right - 25; int color = _wm->_colorBlack; - if (i == (uint)_activeSubItem && !text.empty() && menu->subitems[i]->enabled) { + if (i == (uint)_activeSubItem && (!text.empty() || !unicodeText.empty()) && menu->subitems[i]->enabled) { color = _wm->_colorWhite; Common::Rect trect(r->left, y - (_wm->_fontMan->hasBuiltInFonts() ? 1 : 0), r->right, y + _font->getFontHeight()); _screen.fillRect(trect, _wm->_colorBlack); } - if (!text.empty()) { + if (!text.empty() || !unicodeText.empty()) { ManagedSurface *s = &_screen; int tx = x, ty = y; @@ -527,7 +531,10 @@ void MacMenu::renderSubmenu(MacMenuItem *menu) { _tempSurface.clear(kColorGreen); } - _font->drawString(s, text, tx, ty, r->width(), color); + if (menu->subitems[i]->unicode) + _font->drawString(s, unicodeText, tx, ty, r->width(), color); + else + _font->drawString(s, text, tx, ty, r->width(), color); if (!acceleratorText.empty()) _font->drawString(s, acceleratorText, accelX, ty, r->width(), color); |