diff options
Diffstat (limited to 'gui/predictivedialog.cpp')
-rw-r--r-- | gui/predictivedialog.cpp | 418 |
1 files changed, 209 insertions, 209 deletions
diff --git a/gui/predictivedialog.cpp b/gui/predictivedialog.cpp index a894b02f80..6ff10267db 100644 --- a/gui/predictivedialog.cpp +++ b/gui/predictivedialog.cpp @@ -24,6 +24,7 @@ #include "gui/widget.h" #include "gui/widgets/edittext.h" #include "gui/gui-manager.h" +#include "gui/ThemeEval.h" #include "common/config-manager.h" #include "common/translation.h" @@ -69,74 +70,57 @@ enum { PredictiveDialog::PredictiveDialog() : Dialog("Predictive") { new StaticTextWidget(this, "Predictive.Headline", "Enter Text"); - _btns = (ButtonWidget **)calloc(16, sizeof(ButtonWidget *)); - - _btns[kCancelAct] = new ButtonWidget(this, "Predictive.Cancel", _("Cancel") , 0, kCancelCmd); - _btns[kOkAct] = new ButtonWidget(this, "Predictive.OK", _("Ok") , 0, kOkCmd); - _btns[kBtn1Act] = new ButtonWidget(this, "Predictive.Button1", "1 `-.&" , 0, kBut1Cmd); - _btns[kBtn2Act] = new ButtonWidget(this, "Predictive.Button2", "2 abc" , 0, kBut2Cmd); - _btns[kBtn3Act] = new ButtonWidget(this, "Predictive.Button3", "3 def" , 0, kBut3Cmd); - _btns[kBtn4Act] = new ButtonWidget(this, "Predictive.Button4", "4 ghi" , 0, kBut4Cmd); - _btns[kBtn5Act] = new ButtonWidget(this, "Predictive.Button5", "5 jkl" , 0, kBut5Cmd); - _btns[kBtn6Act] = new ButtonWidget(this, "Predictive.Button6", "6 mno" , 0, kBut6Cmd); - _btns[kBtn7Act] = new ButtonWidget(this, "Predictive.Button7", "7 pqrs" , 0, kBut7Cmd); - _btns[kBtn8Act] = new ButtonWidget(this, "Predictive.Button8", "8 tuv" , 0, kBut8Cmd); - _btns[kBtn9Act] = new ButtonWidget(this, "Predictive.Button9", "9 wxyz" , 0, kBut9Cmd); - _btns[kBtn0Act] = new ButtonWidget(this, "Predictive.Button0", "0" , 0, kBut0Cmd); - // I18N: You must leave "#" as is, only word 'next' is translatable - _btns[kNextAct] = new ButtonWidget(this, "Predictive.Next", _("# next") , 0, kNextCmd); - _btns[kAddAct] = new ButtonWidget(this, "Predictive.Add", _("add") , 0, kAddCmd); - _btns[kAddAct]->setEnabled(false); - - #ifndef DISABLE_FANCY_THEMES - _btns[kDelAct] = new PicButtonWidget(this, "Predictive.Delete", _("Delete char"), kDelCmd); - ((PicButtonWidget *)_btns[kDelAct])->useThemeTransparency(true); - ((PicButtonWidget *)_btns[kDelAct])->setGfx(g_gui.theme()->getImageSurface(ThemeEngine::kImageDelbtn)); - #endif - _btns[kDelAct] = new ButtonWidget(this, "Predictive.Delete" , _("<") , 0, kDelCmd); - // I18N: Pre means 'Predictive', leave '*' as is - _btns[kModeAct] = new ButtonWidget(this, "Predictive.Pre", _("* Pre"), 0, kModeCmd); - _edittext = new EditTextWidget(this, "Predictive.Word", _search, 0, 0, 0); + _button[kCancelAct] = new ButtonWidget(this, "Predictive.Cancel", _("Cancel") , 0, kCancelCmd); + _button[kOkAct] = new ButtonWidget(this, "Predictive.OK", _("Ok") , 0, kOkCmd); + _button[kButton1Act] = new ButtonWidget(this, "Predictive.Button1", "1 `-.&" , 0, kBut1Cmd); + _button[kButton2Act] = new ButtonWidget(this, "Predictive.Button2", "2 abc" , 0, kBut2Cmd); + _button[kButton3Act] = new ButtonWidget(this, "Predictive.Button3", "3 def" , 0, kBut3Cmd); + _button[kButton4Act] = new ButtonWidget(this, "Predictive.Button4", "4 ghi" , 0, kBut4Cmd); + _button[kButton5Act] = new ButtonWidget(this, "Predictive.Button5", "5 jkl" , 0, kBut5Cmd); + _button[kButton6Act] = new ButtonWidget(this, "Predictive.Button6", "6 mno" , 0, kBut6Cmd); + _button[kButton7Act] = new ButtonWidget(this, "Predictive.Button7", "7 pqrs" , 0, kBut7Cmd); + _button[kButton8Act] = new ButtonWidget(this, "Predictive.Button8", "8 tuv" , 0, kBut8Cmd); + _button[kButton9Act] = new ButtonWidget(this, "Predictive.Button9", "9 wxyz" , 0, kBut9Cmd); + _button[kButton0Act] = new ButtonWidget(this, "Predictive.Button0", "0" , 0, kBut0Cmd); + // I18N: You must leave "#" as is, only word 'next' is translatable + _button[kNextAct] = new ButtonWidget(this, "Predictive.Next", _("# next") , 0, kNextCmd); + _button[kAddAct] = new ButtonWidget(this, "Predictive.Add", _("add") , 0, kAddCmd); + _button[kAddAct]->setEnabled(false); + +#ifndef DISABLE_FANCY_THEMES + if (g_gui.xmlEval()->getVar("Globals.Predictive.ShowDeletePic") == 1 && g_gui.theme()->supportsImages()) { + _button[kDelAct] = new PicButtonWidget(this, "Predictive.Delete", _("Delete char"), kDelCmd); + ((PicButtonWidget *)_button[kDelAct])->useThemeTransparency(true); + ((PicButtonWidget *)_button[kDelAct])->setGfx(g_gui.theme()->getImageSurface(ThemeEngine::kImageDelButton)); + } else +#endif + _button[kDelAct] = new ButtonWidget(this, "Predictive.Delete" , _("<") , 0, kDelCmd); + // I18N: Pre means 'Predictive', leave '*' as is + _button[kModeAct] = new ButtonWidget(this, "Predictive.Pre", _("* Pre"), 0, kModeCmd); + _editText = new EditTextWidget(this, "Predictive.Word", _search, 0, 0, 0); _userDictHasChanged = false; _predictiveDict.nameDict = "predictive_dictionary"; - _predictiveDict.fnameDict = "pred.dic"; - _predictiveDict.dictActLine = NULL; + _predictiveDict.defaultFilename = "pred.dic"; _userDict.nameDict = "user_dictionary"; - _userDict.fnameDict = "user.dic"; - _userDict.dictActLine = NULL; - - _unitedDict.nameDict = ""; - _unitedDict.fnameDict = ""; - - _predictiveDict.dictLine = NULL; - _predictiveDict.dictText = NULL; - _predictiveDict.dictLineCount = 0; + _userDict.defaultFilename = "user.dic"; if (!_predictiveDict.dictText) { loadAllDictionary(_predictiveDict); if (!_predictiveDict.dictText) - debug("Predictive Dialog: pred.dic not loaded"); + debug(5, "Predictive Dialog: pred.dic not loaded"); } - _userDict.dictLine = NULL; - _userDict.dictText = NULL; - _userDict.dictTextSize = 0; - _userDict.dictLineCount = 0; - if (!_userDict.dictText) { loadAllDictionary(_userDict); if (!_userDict.dictText) - debug("Predictive Dialog: user.dic not loaded"); + debug(5, "Predictive Dialog: user.dic not loaded"); } mergeDicts(); - _unitedDict.dictActLine = NULL; - _unitedDict.dictText = NULL; - memset(_repeatcount, 0, sizeof(_repeatcount)); _prefix.clear(); @@ -146,18 +130,18 @@ PredictiveDialog::PredictiveDialog() : Dialog("Predictive") { _numMatchingWords = 0; memset(_predictiveResult, 0, sizeof(_predictiveResult)); - _lastbutton = kNoAct; + _lastButton = kNoAct; _mode = kModePre; _lastTime = 0; _curTime = 0; - _lastPressBtn = kNoAct; + _lastPressedButton = kNoAct; _memoryList[0] = _predictiveDict.dictText; _memoryList[1] = _userDict.dictText; _numMemory = 0; - _navigationwithkeys = false; + _navigationWithKeys = false; } PredictiveDialog::~PredictiveDialog() { @@ -167,8 +151,25 @@ PredictiveDialog::~PredictiveDialog() { free(_userDict.dictLine); free(_predictiveDict.dictLine); free(_unitedDict.dictLine); +} - free(_btns); +void PredictiveDialog::reflowLayout() { +#ifndef DISABLE_FANCY_THEMES + removeWidget(_button[kDelAct]); + _button[kDelAct]->setNext(0); + delete _button[kDelAct]; + _button[kDelAct] = nullptr; + + if (g_gui.xmlEval()->getVar("Globals.Predictive.ShowDeletePic") == 1 && g_gui.theme()->supportsImages()) { + _button[kDelAct] = new PicButtonWidget(this, "Predictive.Delete", _("Delete char"), kDelCmd); + ((PicButtonWidget *)_button[kDelAct])->useThemeTransparency(true); + ((PicButtonWidget *)_button[kDelAct])->setGfx(g_gui.theme()->getImageSurface(ThemeEngine::kImageDelButton)); + } else { + _button[kDelAct] = new ButtonWidget(this, "Predictive.Delete" , _("<") , 0, kDelCmd); + } +#endif + + Dialog::reflowLayout(); } void PredictiveDialog::saveUserDictToFile() { @@ -188,22 +189,22 @@ void PredictiveDialog::saveUserDictToFile() { } void PredictiveDialog::handleKeyUp(Common::KeyState state) { - if (_currBtn != kNoAct && !_needRefresh) { - _btns[_currBtn]->startAnimatePressedState(); - processBtnActive(_currBtn); + if (_curPressedButton != kNoAct && !_needRefresh) { + _button[_curPressedButton]->startAnimatePressedState(); + processButton(_curPressedButton); } } void PredictiveDialog::handleKeyDown(Common::KeyState state) { - _currBtn = kNoAct; + _curPressedButton = kNoAct; _needRefresh = false; - if (getFocusWidget() == _edittext) { - setFocusWidget(_btns[kAddAct]); + if (getFocusWidget() == _editText) { + setFocusWidget(_button[kAddAct]); } - if (_lastbutton == kNoAct) { - _lastbutton = kBtn5Act; + if (_lastButton == kNoAct) { + _lastButton = kButton5Act; } switch (state.keycode) { @@ -212,128 +213,128 @@ void PredictiveDialog::handleKeyDown(Common::KeyState state) { close(); return; case Common::KEYCODE_LEFT: - _navigationwithkeys = true; - if (_lastbutton == kBtn1Act || _lastbutton == kBtn4Act || _lastbutton == kBtn7Act) - _currBtn = ButtonId(_lastbutton + 2); - else if (_lastbutton == kDelAct) - _currBtn = kBtn1Act; - else if (_lastbutton == kModeAct) - _currBtn = kNextAct; - else if (_lastbutton == kNextAct) - _currBtn = kBtn0Act; - else if (_lastbutton == kAddAct) - _currBtn = kOkAct; - else if (_lastbutton == kCancelAct) - _currBtn = kAddAct; + _navigationWithKeys = true; + if (_lastButton == kButton1Act || _lastButton == kButton4Act || _lastButton == kButton7Act) + _curPressedButton = ButtonId(_lastButton + 2); + else if (_lastButton == kDelAct) + _curPressedButton = kButton1Act; + else if (_lastButton == kModeAct) + _curPressedButton = kNextAct; + else if (_lastButton == kNextAct) + _curPressedButton = kButton0Act; + else if (_lastButton == kAddAct) + _curPressedButton = kOkAct; + else if (_lastButton == kCancelAct) + _curPressedButton = kAddAct; else - _currBtn = ButtonId(_lastbutton - 1); + _curPressedButton = ButtonId(_lastButton - 1); - if (_mode != kModeAbc && _lastbutton == kCancelAct) - _currBtn = kOkAct; + if (_mode != kModeAbc && _lastButton == kCancelAct) + _curPressedButton = kOkAct; _needRefresh = true; break; case Common::KEYCODE_RIGHT: - _navigationwithkeys = true; - if (_lastbutton == kBtn3Act || _lastbutton == kBtn6Act || _lastbutton == kBtn9Act || _lastbutton == kOkAct) - _currBtn = ButtonId(_lastbutton - 2); - else if (_lastbutton == kDelAct) - _currBtn = kBtn3Act; - else if (_lastbutton == kBtn0Act) - _currBtn = kNextAct; - else if (_lastbutton == kNextAct) - _currBtn = kModeAct; - else if (_lastbutton == kAddAct) - _currBtn = kCancelAct; - else if (_lastbutton == kOkAct) - _currBtn = kAddAct; + _navigationWithKeys = true; + if (_lastButton == kButton3Act || _lastButton == kButton6Act || _lastButton == kButton9Act || _lastButton == kOkAct) + _curPressedButton = ButtonId(_lastButton - 2); + else if (_lastButton == kDelAct) + _curPressedButton = kButton3Act; + else if (_lastButton == kButton0Act) + _curPressedButton = kNextAct; + else if (_lastButton == kNextAct) + _curPressedButton = kModeAct; + else if (_lastButton == kAddAct) + _curPressedButton = kCancelAct; + else if (_lastButton == kOkAct) + _curPressedButton = kAddAct; else - _currBtn = ButtonId(_lastbutton + 1); + _curPressedButton = ButtonId(_lastButton + 1); - if (_mode != kModeAbc && _lastbutton == kOkAct) - _currBtn = kCancelAct; + if (_mode != kModeAbc && _lastButton == kOkAct) + _curPressedButton = kCancelAct; _needRefresh = true; break; case Common::KEYCODE_UP: - _navigationwithkeys = true; - if (_lastbutton <= kBtn3Act) - _currBtn = kDelAct; - else if (_lastbutton == kDelAct) - _currBtn = kOkAct; - else if (_lastbutton == kModeAct) - _currBtn = kBtn7Act; - else if (_lastbutton == kBtn0Act) - _currBtn = kBtn8Act; - else if (_lastbutton == kNextAct) - _currBtn = kBtn9Act; - else if (_lastbutton == kAddAct) - _currBtn = kModeAct; - else if (_lastbutton == kCancelAct) - _currBtn = kBtn0Act; - else if (_lastbutton == kOkAct) - _currBtn = kNextAct; + _navigationWithKeys = true; + if (_lastButton <= kButton3Act) + _curPressedButton = kDelAct; + else if (_lastButton == kDelAct) + _curPressedButton = kOkAct; + else if (_lastButton == kModeAct) + _curPressedButton = kButton7Act; + else if (_lastButton == kButton0Act) + _curPressedButton = kButton8Act; + else if (_lastButton == kNextAct) + _curPressedButton = kButton9Act; + else if (_lastButton == kAddAct) + _curPressedButton = kModeAct; + else if (_lastButton == kCancelAct) + _curPressedButton = kButton0Act; + else if (_lastButton == kOkAct) + _curPressedButton = kNextAct; else - _currBtn = ButtonId(_lastbutton - 3); + _curPressedButton = ButtonId(_lastButton - 3); _needRefresh = true; break; case Common::KEYCODE_DOWN: - _navigationwithkeys = true; - if (_lastbutton == kDelAct) - _currBtn = kBtn3Act; - else if (_lastbutton == kBtn7Act) - _currBtn = kModeAct; - else if (_lastbutton == kBtn8Act) - _currBtn = kBtn0Act; - else if (_lastbutton == kBtn9Act) - _currBtn = kNextAct; - else if (_lastbutton == kModeAct) - _currBtn = kAddAct; - else if (_lastbutton == kBtn0Act) - _currBtn = kCancelAct; - else if (_lastbutton == kNextAct) - _currBtn = kOkAct; - else if (_lastbutton == kAddAct || _lastbutton == kCancelAct || _lastbutton == kOkAct) - _currBtn = kDelAct; + _navigationWithKeys = true; + if (_lastButton == kDelAct) + _curPressedButton = kButton3Act; + else if (_lastButton == kButton7Act) + _curPressedButton = kModeAct; + else if (_lastButton == kButton8Act) + _curPressedButton = kButton0Act; + else if (_lastButton == kButton9Act) + _curPressedButton = kNextAct; + else if (_lastButton == kModeAct) + _curPressedButton = kAddAct; + else if (_lastButton == kButton0Act) + _curPressedButton = kCancelAct; + else if (_lastButton == kNextAct) + _curPressedButton = kOkAct; + else if (_lastButton == kAddAct || _lastButton == kCancelAct || _lastButton == kOkAct) + _curPressedButton = kDelAct; else - _currBtn = ButtonId(_lastbutton + 3); + _curPressedButton = ButtonId(_lastButton + 3); - if (_mode != kModeAbc && _lastbutton == kModeAct) - _currBtn = kCancelAct; + if (_mode != kModeAbc && _lastButton == kModeAct) + _curPressedButton = kCancelAct; _needRefresh = true; break; case Common::KEYCODE_KP_ENTER: case Common::KEYCODE_RETURN: if (state.flags & Common::KBD_CTRL) { - _currBtn = kOkAct; + _curPressedButton = kOkAct; break; } - if (_navigationwithkeys) { + if (_navigationWithKeys) { // when the user has utilized arrow key navigation, - // interpret enter as 'click' on the _currBtn button - _currBtn = _lastbutton; + // interpret enter as 'click' on the _curPressedButton button + _curPressedButton = _lastButton; _needRefresh = false; } else { // else it is a shortcut for 'Ok' - _currBtn = kOkAct; + _curPressedButton = kOkAct; } break; case Common::KEYCODE_KP_PLUS: - _currBtn = kAddAct; + _curPressedButton = kAddAct; break; case Common::KEYCODE_BACKSPACE: case Common::KEYCODE_KP_MINUS: - _currBtn = kDelAct; + _curPressedButton = kDelAct; break; case Common::KEYCODE_KP_DIVIDE: - _currBtn = kNextAct; + _curPressedButton = kNextAct; break; case Common::KEYCODE_KP_MULTIPLY: - _currBtn = kModeAct; + _curPressedButton = kModeAct; break; case Common::KEYCODE_KP0: - _currBtn = kBtn0Act; + _curPressedButton = kButton0Act; break; case Common::KEYCODE_KP1: case Common::KEYCODE_KP2: @@ -344,79 +345,79 @@ void PredictiveDialog::handleKeyDown(Common::KeyState state) { case Common::KEYCODE_KP7: case Common::KEYCODE_KP8: case Common::KEYCODE_KP9: - _currBtn = ButtonId(state.keycode - Common::KEYCODE_KP1); + _curPressedButton = ButtonId(state.keycode - Common::KEYCODE_KP1); break; default: Dialog::handleKeyDown(state); } - if (_lastbutton != _currBtn) - _btns[_lastbutton]->stopAnimatePressedState(); + if (_lastButton != _curPressedButton) + _button[_lastButton]->stopAnimatePressedState(); - if (_currBtn != kNoAct && !_needRefresh) - _btns[_currBtn]->setPressedState(); + if (_curPressedButton != kNoAct && !_needRefresh) + _button[_curPressedButton]->setPressedState(); else - updateHighLightedButton(_currBtn); + updateHighLightedButton(_curPressedButton); } void PredictiveDialog::updateHighLightedButton(ButtonId act) { - if (_currBtn != kNoAct) { - _btns[_lastbutton]->setHighLighted(false); - _lastbutton = act; - _btns[_lastbutton]->setHighLighted(true); + if (_curPressedButton != kNoAct) { + _button[_lastButton]->setHighLighted(false); + _lastButton = act; + _button[_lastButton]->setHighLighted(true); } } void PredictiveDialog::handleCommand(CommandSender *sender, uint32 cmd, uint32 data) { - _currBtn = kNoAct; + _curPressedButton = kNoAct; - _navigationwithkeys = false; + _navigationWithKeys = false; - if (_lastbutton != kNoAct) - _btns[_lastbutton]->setHighLighted(false); + if (_lastButton != kNoAct) + _button[_lastButton]->setHighLighted(false); switch (cmd) { case kDelCmd: - _currBtn = kDelAct; + _curPressedButton = kDelAct; break; case kNextCmd: - _currBtn = kNextAct; + _curPressedButton = kNextAct; break; case kAddCmd: - _currBtn = kAddAct; + _curPressedButton = kAddAct; break; case kModeCmd: - _currBtn = kModeAct; + _curPressedButton = kModeAct; break; case kBut1Cmd: - _currBtn = kBtn1Act; + _curPressedButton = kButton1Act; break; case kBut2Cmd: - _currBtn = kBtn2Act; + _curPressedButton = kButton2Act; break; case kBut3Cmd: - _currBtn = kBtn3Act; + _curPressedButton = kButton3Act; break; case kBut4Cmd: - _currBtn = kBtn4Act; + _curPressedButton = kButton4Act; break; case kBut5Cmd: - _currBtn = kBtn5Act; + _curPressedButton = kButton5Act; break; case kBut6Cmd: - _currBtn = kBtn6Act; + _curPressedButton = kButton6Act; break; case kBut7Cmd: - _currBtn = kBtn7Act; + _curPressedButton = kButton7Act; break; case kBut8Cmd: - _currBtn = kBtn8Act; + _curPressedButton = kButton8Act; break; case kBut9Cmd: - _currBtn = kBtn9Act; + _curPressedButton = kButton9Act; break; case kBut0Cmd: - _currBtn = kBtn0Act; + _curPressedButton = kButton0Act; break; case kCancelCmd: saveUserDictToFile(); @@ -426,19 +427,18 @@ void PredictiveDialog::handleCommand(CommandSender *sender, uint32 cmd, uint32 d _predictiveResult[0] = 0; return; case kOkCmd: - _currBtn = kOkAct; + _curPressedButton = kOkAct; break; default: Dialog::handleCommand(sender, cmd, data); } - if (_currBtn != kNoAct) { - processBtnActive(_currBtn); + if (_curPressedButton != kNoAct) { + processButton(_curPressedButton); } } -void PredictiveDialog::processBtnActive(ButtonId button) { - uint8 x; +void PredictiveDialog::processButton(ButtonId button) { static const char *const buttonStr[] = { "1", "2", "3", "4", "5", "6", @@ -457,10 +457,10 @@ void PredictiveDialog::processBtnActive(ButtonId button) { }; if (_mode == kModeAbc) { - if (button >= kBtn1Act && button <= kBtn9Act) { + if (button >= kButton1Act && button <= kButton9Act) { if (!_lastTime) _lastTime = g_system->getMillis(); - if (_lastPressBtn == button) { + if (_lastPressedButton == button) { _curTime = g_system->getMillis(); if ((_curTime - _lastTime) < kRepeatDelay) { button = kNextAct; @@ -469,15 +469,15 @@ void PredictiveDialog::processBtnActive(ButtonId button) { _lastTime = 0; } } else { - _lastPressBtn = button; + _lastPressedButton = button; _lastTime = g_system->getMillis(); } } } - if (button >= kBtn1Act) { - _lastbutton = button; - if (button == kBtn0Act && _mode != kModeNum) { // Space + if (button >= kButton1Act) { + _lastButton = button; + if (button == kButton0Act && _mode != kModeNum) { // Space // bring MRU word at the top of the list when changing words if (_mode == kModePre && _unitedDict.dictActLine && _numMatchingWords > 1 && _wordNumber != 0) bringWordtoTop(_unitedDict.dictActLine, _wordNumber); @@ -491,9 +491,9 @@ void PredictiveDialog::processBtnActive(ButtonId button) { _numMatchingWords = 0; memset(_repeatcount, 0, sizeof(_repeatcount)); _lastTime = 0; - _lastPressBtn = kNoAct; + _lastPressedButton = kNoAct; _curTime = 0; - } else if (button < kNextAct || button == kDelAct || button == kBtn0Act) { // number or backspace + } else if (button < kNextAct || button == kDelAct || button == kButton0Act) { // number or backspace if (button == kDelAct) { // backspace if (_currentCode.size()) { _repeatcount[_currentCode.size() - 1] = 0; @@ -505,7 +505,7 @@ void PredictiveDialog::processBtnActive(ButtonId button) { _prefix.deleteLastChar(); } } else if (_prefix.size() + _currentCode.size() < kMaxWordLen - 1) { // don't overflow the dialog line - if (button == kBtn0Act) { // zero + if (button == kButton0Act) { // zero _currentCode += buttonStr[9]; } else { _currentCode += buttonStr[button]; @@ -524,7 +524,7 @@ void PredictiveDialog::processBtnActive(ButtonId button) { _numMatchingWords = countWordsInString(_unitedDict.dictActLine); break; case kModeAbc: - for (x = 0; x < _currentCode.size(); x++) + for (uint x = 0; x < _currentCode.size(); x++) if (_currentCode[x] >= '1') _temp[x] = buttons[_currentCode[x] - '1'][_repeatcount[x]]; _temp[_currentCode.size()] = 0; @@ -543,7 +543,7 @@ void PredictiveDialog::processBtnActive(ButtonId button) { _currentWord = Common::String(tok, _currentCode.size()); } } else if (_mode == kModeAbc) { - x = _currentCode.size(); + uint x = _currentCode.size(); if (x) { if (_currentCode.lastChar() == '1' || _currentCode.lastChar() == '7' || _currentCode.lastChar() == '9') _repeatcount[x - 1] = (_repeatcount[x - 1] + 1) % 4; @@ -558,25 +558,25 @@ void PredictiveDialog::processBtnActive(ButtonId button) { if (_mode == kModeAbc) addWordToDict(); else - debug("Predictive Dialog: button Add doesn't work in this mode"); + debug(5, "Predictive Dialog: button Add doesn't work in this mode"); } else if (button == kOkAct) { // Ok // bring MRU word at the top of the list when ok'ed out of the dialog if (_mode == kModePre && _unitedDict.dictActLine && _numMatchingWords > 1 && _wordNumber != 0) bringWordtoTop(_unitedDict.dictActLine, _wordNumber); } else if (button == kModeAct) { // Mode _mode++; - _btns[kAddAct]->setEnabled(false); + _button[kAddAct]->setEnabled(false); if (_mode > kModeAbc) { _mode = kModePre; // I18N: Pre means 'Predictive', leave '*' as is - _btns[kModeAct]->setLabel("* Pre"); + _button[kModeAct]->setLabel(_("* Pre")); } else if (_mode == kModeNum) { // I18N: 'Num' means Numbers - _btns[kModeAct]->setLabel("* Num"); + _button[kModeAct]->setLabel(_("* Num")); } else { // I18N: 'Abc' means Latin alphabet input - _btns[kModeAct]->setLabel("* Abc"); - _btns[kAddAct]->setEnabled(true); + _button[kModeAct]->setLabel(_("* Abc")); + _button[kAddAct]->setEnabled(true); } // truncate current input at mode change @@ -588,7 +588,7 @@ void PredictiveDialog::processBtnActive(ButtonId button) { memset(_repeatcount, 0, sizeof(_repeatcount)); _lastTime = 0; - _lastPressBtn = kNoAct; + _lastPressedButton = kNoAct; _curTime = 0; } } @@ -598,10 +598,10 @@ void PredictiveDialog::processBtnActive(ButtonId button) { if (button == kOkAct) close(); - if (button == kCancelAct) { - saveUserDictToFile(); - close(); - } + if (button == kCancelAct) { + saveUserDictToFile(); + close(); + } } void PredictiveDialog::handleTickle() { @@ -621,7 +621,7 @@ void PredictiveDialog::mergeDicts() { _unitedDict.dictLine = (char **)calloc(_unitedDict.dictLineCount, sizeof(char *)); if (!_unitedDict.dictLine) { - debug("Predictive Dialog: cannot allocate memory for united dic"); + debug(5, "Predictive Dialog: cannot allocate memory for united dic"); return; } @@ -658,7 +658,7 @@ uint8 PredictiveDialog::countWordsInString(const char *const str) { ptr = strchr(str, ' '); if (!ptr) { - debug("Predictive Dialog: Invalid dictionary line"); + debug(5, "Predictive Dialog: Invalid dictionary line"); return 0; } @@ -684,7 +684,7 @@ void PredictiveDialog::bringWordtoTop(char *str, int wordnum) { buf[kMaxLineLen - 1] = 0; char *word = strtok(buf, " "); if (!word) { - debug("Predictive Dialog: Invalid dictionary line"); + debug(5, "Predictive Dialog: Invalid dictionary line"); return; } @@ -734,7 +734,7 @@ bool PredictiveDialog::matchWord() { // The entries in the dictionary consist of a code, a space, and then // a space-separated list of words matching this code. - // To ex_currBtnly match a code, we therefore match the code plus the trailing + // To exactly match a code, we therefore match the code plus the trailing // space in the dictionary. Common::String code = _currentCode + " "; @@ -929,7 +929,7 @@ void PredictiveDialog::loadDictionary(Common::SeekableReadStream *in, Dict &dict in->read(dict.dictText, dict.dictTextSize); dict.dictText[dict.dictTextSize] = 0; uint32 time2 = g_system->getMillis(); - debug("Predictive Dialog: Time to read %s: %d bytes, %d ms", ConfMan.get(dict.nameDict).c_str(), dict.dictTextSize, time2 - time1); + debug(5, "Predictive Dialog: Time to read %s: %d bytes, %d ms", ConfMan.get(dict.nameDict).c_str(), dict.dictTextSize, time2 - time1); delete in; char *ptr = dict.dictText; @@ -960,7 +960,7 @@ void PredictiveDialog::loadDictionary(Common::SeekableReadStream *in, Dict &dict lines--; dict.dictLineCount = lines; - debug("Predictive Dialog: Loaded %d lines", dict.dictLineCount); + debug(5, "Predictive Dialog: Loaded %d lines", dict.dictLineCount); // FIXME: We use binary search on _predictiveDict.dictLine, yet we make no at_tempt // to ever sort this array (except for the DS port). That seems risky, doesn't it? @@ -971,23 +971,23 @@ void PredictiveDialog::loadDictionary(Common::SeekableReadStream *in, Dict &dict #endif uint32 time3 = g_system->getMillis(); - debug("Predictive Dialog: Time to parse %s: %d, total: %d", ConfMan.get(dict.nameDict).c_str(), time3 - time2, time3 - time1); + debug(5, "Predictive Dialog: Time to parse %s: %d, total: %d", ConfMan.get(dict.nameDict).c_str(), time3 - time2, time3 - time1); } void PredictiveDialog::loadAllDictionary(Dict &dict) { - ConfMan.registerDefault(dict.nameDict, dict.fnameDict); + ConfMan.registerDefault(dict.nameDict, dict.defaultFilename); if (dict.nameDict == "predictive_dictionary") { Common::File *inFile = new Common::File(); if (!inFile->open(ConfMan.get(dict.nameDict))) { - warning("Predictive Dialog: cannot read file: %s", dict.fnameDict.c_str()); + warning("Predictive Dialog: cannot read file: %s", dict.defaultFilename.c_str()); return; } loadDictionary(inFile, dict); } else { Common::InSaveFile *inFile = g_system->getSavefileManager()->openForLoading(ConfMan.get(dict.nameDict)); if (!inFile) { - warning("Predictive Dialog: cannot read file: %s", dict.fnameDict.c_str()); + warning("Predictive Dialog: cannot read file: %s", dict.defaultFilename.c_str()); return; } loadDictionary(inFile, dict); @@ -997,9 +997,9 @@ void PredictiveDialog::loadAllDictionary(Dict &dict) { void PredictiveDialog::pressEditText() { Common::strlcpy(_predictiveResult, _prefix.c_str(), sizeof(_predictiveResult)); Common::strlcat(_predictiveResult, _currentWord.c_str(), sizeof(_predictiveResult)); - _edittext->setEditString(_predictiveResult); - //_edittext->setCaretPos(_prefix.size() + _currentWord.size()); - _edittext->draw(); + _editText->setEditString(_predictiveResult); + //_editText->setCaretPos(_prefix.size() + _currentWord.size()); + _editText->draw(); } } // namespace GUI |