From a8d1454e165fa2178a0463e96a2ee40bd9487627 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Sun, 8 Jun 2014 16:57:51 -0400 Subject: TSAGE: Fix for R2R game/help dialog not accepting Fn keys --- engines/tsage/ringworld2/ringworld2_dialogs.cpp | 32 ++++++++++++++++++++++++- engines/tsage/ringworld2/ringworld2_dialogs.h | 2 ++ 2 files changed, 33 insertions(+), 1 deletion(-) (limited to 'engines/tsage/ringworld2') diff --git a/engines/tsage/ringworld2/ringworld2_dialogs.cpp b/engines/tsage/ringworld2/ringworld2_dialogs.cpp index dfbb281cfb..99f88a1687 100644 --- a/engines/tsage/ringworld2/ringworld2_dialogs.cpp +++ b/engines/tsage/ringworld2/ringworld2_dialogs.cpp @@ -365,7 +365,7 @@ void HelpDialog::show() { HelpDialog *dlg = new HelpDialog(); dlg->draw(); - // Show the character selection dialog + // Show the help dialog GfxButton *btn = dlg->execute(&dlg->_btnResume); // If a function button was selected, take care of it @@ -458,6 +458,36 @@ HelpDialog::HelpDialog() { setCenter(160, 100); } +bool HelpDialog::handleKeypress(Event &event, GfxButton *&btn) { + switch (event.kbd.keycode) { + case Common::KEYCODE_F2: + btn = &_btnList[0]; + break; + case Common::KEYCODE_F3: + btn = &_btnList[1]; + break; + case Common::KEYCODE_F4: + btn = &_btnList[2]; + break; + case Common::KEYCODE_F5: + btn = &_btnList[3]; + break; + case Common::KEYCODE_F7: + btn = &_btnList[4]; + break; + case Common::KEYCODE_F8: + btn = &_btnList[5]; + break; + case Common::KEYCODE_F10: + btn = &_btnList[6]; + break; + default: + return false; + } + + return true; +} + } // End of namespace Ringworld2 } // End of namespace TsAGE diff --git a/engines/tsage/ringworld2/ringworld2_dialogs.h b/engines/tsage/ringworld2/ringworld2_dialogs.h index 8ef35c9024..3d1e1ad48c 100644 --- a/engines/tsage/ringworld2/ringworld2_dialogs.h +++ b/engines/tsage/ringworld2/ringworld2_dialogs.h @@ -83,6 +83,8 @@ public: virtual ~HelpDialog() {} static void show(); + + virtual bool handleKeypress(Event &event, GfxButton *&btn); }; } // End of namespace Ringworld2 -- cgit v1.2.3