From ffbfe8922a3cfa2d2750fca3a2cb2d953fd1e4ca Mon Sep 17 00:00:00 2001 From: Gregory Montoir Date: Fri, 26 Dec 2003 12:58:27 +0000 Subject: new debugging code, using Common::Debugger svn-id: r11940 --- queen/input.cpp | 52 ++++++++++++---------------------------------------- 1 file changed, 12 insertions(+), 40 deletions(-) (limited to 'queen/input.cpp') diff --git a/queen/input.cpp b/queen/input.cpp index d8b35e37af..cf964dd3ad 100644 --- a/queen/input.cpp +++ b/queen/input.cpp @@ -36,7 +36,7 @@ const char* Input::_commandKeys[LANGUAGE_COUNT] = { Input::Input(Language language, OSystem *system) : _system(system), _fastMode(false), _keyVerb(VERB_NONE), _cutawayRunning(false), _cutawayQuit(false), _talkQuit(false), - _quickSave(false), _quickLoad(false), + _quickSave(false), _quickLoad(false), _debugger(false), _inKey(0), _mouse_x(0), _mouse_y(0), _mouseButton(0) { switch (language) { @@ -83,7 +83,17 @@ void Input::delay(uint amount) { event.kbd.keycode, isprint(event.kbd.keycode) ? event.kbd.keycode : '.'); - _inKey = event.kbd.keycode; + if (event.kbd.flags == OSystem::KBD_CTRL) { + if (event.kbd.keycode == 'd') { + _debugger = true; + } + else if (event.kbd.keycode == 'f') { + _fastMode = !_fastMode; + } + } + else { + _inKey = event.kbd.keycode; + } break; case OSystem::EVENT_MOUSEMOVE: @@ -219,43 +229,5 @@ int Input::checkKeys() { } -bool Input::waitForNumber(int &i, keyPressedCallback callback, void *refCon) { - - i = 0; - int key = 0; - do { - delay(DELAY_SHORT); - key = _inKey; - _inKey = 0; - if (key >= '0' && key <= '9') { - i = i * 10 + key - '0'; - (*callback)(refCon, key); - } - else if (key == KEY_BACKSPACE) { - i /= 10; - (*callback)(refCon, -1); - } - } while (key != KEY_ESCAPE && key != KEY_RETURN); - return key != KEY_ESCAPE; -} - - -bool Input::waitForCharacter(char &c) { - - int key = 0; - do { - delay(DELAY_SHORT); - if (_inKey >= 'a' && _inKey <= 'z' || _inKey == KEY_ESCAPE) { - key = _inKey; - if (_inKey != KEY_ESCAPE) { - c = (char)_inKey; - } - } - _inKey = 0; - } while (key == 0); - return key != KEY_ESCAPE; -} - - } // End of namespace Queen -- cgit v1.2.3