From 6fb80da1a184c90c7839c125b4ecc9878ed62183 Mon Sep 17 00:00:00 2001 From: hax0kartik Date: Thu, 10 Aug 2023 17:12:56 +0530 Subject: [PATCH] CRAB: Implement DebugConsole::handleEvents() --- engines/crab/ui/DevConsole.cpp | 30 ++++++++++++++---------------- engines/crab/ui/DevConsole.h | 2 ++ 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/engines/crab/ui/DevConsole.cpp b/engines/crab/ui/DevConsole.cpp index b55760960b5..623414d7901 100644 --- a/engines/crab/ui/DevConsole.cpp +++ b/engines/crab/ui/DevConsole.cpp @@ -90,38 +90,36 @@ void DebugConsole::draw(pyrodactyl::event::Info &info) { } } -#if 0 -void DebugConsole::handleEvents(const SDL_Event &Event) { - switch (state) { +void DebugConsole::handleEvents(const Common::Event &event) { + switch (_state) { case STATE_NORMAL: { - int choice = menu.handleEvents(Event); + int choice = _menu.handleEvents(event); if (choice == 0) - state = STATE_VAR; + _state = STATE_VAR; } break; case STATE_VAR: - text_field.handleEvents(Event); + _textField.handleEvents(event); - if (check.handleEvents(Event)) - var_name = text_field.text; + if (_check.handleEvents(event)) + _varName = _textField._text; // Control+V pastes clipboard text into text field - if (Event.type == SDL_KEYDOWN && Event.key.keysym.scancode == SDL_SCANCODE_V && Event.key.keysym.mod & KMOD_CTRL) { - if (SDL_HasClipboardText() == SDL_TRUE) { - char *temp = SDL_GetClipboardText(); - text_field.text = temp; - SDL_free(temp); + if (event.kbd.hasFlags(Common::KBD_CTRL) && event.kbd.keycode == Common::KEYCODE_v) { + if (g_system->hasTextInClipboard()) { + Common::U32String str = g_system->getTextFromClipboard(); + _textField._text = convertFromU32String(str).c_str(); } } - if (back.handleEvents(Event)) - state = STATE_NORMAL; + if (_back.handleEvents(event)) { + _state = STATE_NORMAL; + } break; default: break; } } -#endif void DebugConsole::internalEvents() { } diff --git a/engines/crab/ui/DevConsole.h b/engines/crab/ui/DevConsole.h index 5fd48be526f..a8b415b73ee 100644 --- a/engines/crab/ui/DevConsole.h +++ b/engines/crab/ui/DevConsole.h @@ -71,6 +71,8 @@ public: return (_state == STATE_VAR || _menu.hoverIndex() != -1); } + void handleEvents(const Common::Event &event); + void load(const Common::String &filename); void draw(pyrodactyl::event::Info &info);