Produce 'correct' keycode/ascii values for function keys

svn-id: r27642
This commit is contained in:
Max Horn 2007-06-22 23:43:17 +00:00
parent d9718b0684
commit 05a70fc8e4
4 changed files with 13 additions and 8 deletions

View file

@ -262,14 +262,14 @@ bool OSystem_PalmBase::pollEvent(Common::Event &event) {
case vchrLaunch: case vchrLaunch:
event.type = Common::EVENT_KEYDOWN; event.type = Common::EVENT_KEYDOWN;
event.kbd.keycode = Common::KEYCODE_ESCAPE; event.kbd.keycode = Common::KEYCODE_ESCAPE;
event.kbd.ascii = Common::KEYCODE_ESCAPE; event.kbd.ascii = Common::ASCII_ESCAPE;
event.kbd.flags = 0; event.kbd.flags = 0;
return true; return true;
// F5 = menu // F5 = menu
case vchrMenu: case vchrMenu:
event.type = Common::EVENT_KEYDOWN; event.type = Common::EVENT_KEYDOWN;
event.kbd.keycode = Common::ASCII_F5; // FIXME: Should be changed to KEYCODE_F5 event.kbd.keycode = Common::KEYCODE_F5;
event.kbd.ascii = Common::ASCII_F5; event.kbd.ascii = Common::ASCII_F5;
event.kbd.flags = 0; event.kbd.flags = 0;
return true; return true;
@ -411,8 +411,13 @@ bool OSystem_PalmBase::pollEvent(Common::Event &event) {
// F1 -> F10 key // F1 -> F10 key
if (key >= '0' && key <= '9' && mask == (Common::KBD_CTRL|Common::KBD_ALT)) { if (key >= '0' && key <= '9' && mask == (Common::KBD_CTRL|Common::KBD_ALT)) {
key = (key == '0') ? 324 : (Common::ASCII_F1 + key - '1'); key = (key - '0' + 10 - 1) % 10; // '0' -> 9, '1' -> 0, '2' -> 1, ...
mask = 0; _wasKey = true;
event.type = Common::EVENT_KEYDOWN;
event.kbd.keycode = Common::KEYCODE_F1 + key;
event.kbd.ascii = Common::ASCII_F1 + key;
event.kbd.flags = 0;
return true;
#ifdef STDLIB_TRACE_MEMORY #ifdef STDLIB_TRACE_MEMORY
// print memory // print memory

View file

@ -46,7 +46,7 @@ bool OSystem_PalmZodiac::check_event(Common::Event &event, EventPtr ev) {
// F5 = menu // F5 = menu
case vchrThumbWheelBack: case vchrThumbWheelBack:
event.type = Common::EVENT_KEYDOWN; event.type = Common::EVENT_KEYDOWN;
event.kbd.keycode = Common::ASCII_F5; // FIXME: Should be KEYCODE_F5 event.kbd.keycode = Common::KEYCODE_F5;
event.kbd.ascii = Common::ASCII_F5; event.kbd.ascii = Common::ASCII_F5;
event.kbd.flags = 0; event.kbd.flags = 0;
return true; return true;

View file

@ -1253,7 +1253,7 @@ void addEventsToQueue() {
if ((getKeysChanged() & KEY_START)) { if ((getKeysChanged() & KEY_START)) {
event.type = getKeyEvent(KEY_START); event.type = getKeyEvent(KEY_START);
event.kbd.keycode = Common::ASCII_F5; // FIXME: Should be KEYCODE_F5 event.kbd.keycode = Common::KEYCODE_F5;
event.kbd.ascii = Common::ASCII_F5; event.kbd.ascii = Common::ASCII_F5;
event.kbd.flags = 0; event.kbd.flags = 0;
system->addEvent(event); system->addEvent(event);

View file

@ -529,7 +529,7 @@ bool OSystem_GP32::pollEvent(Common::Event &event) {
if (_overlayVisible) if (_overlayVisible)
event.kbd.keycode = event.kbd.ascii = 13; event.kbd.keycode = event.kbd.ascii = 13;
else { else {
event.kbd.keycode = Common::ASCII_F5; // FIXME: Should be KEYCODE_F5 event.kbd.keycode = Common::KEYCODE_F5;
event.kbd.ascii = Common::ASCII_F5; event.kbd.ascii = Common::ASCII_F5;
} }
return true; return true;
@ -603,7 +603,7 @@ bool OSystem_GP32::pollEvent(Common::Event &event) {
if (_overlayVisible) if (_overlayVisible)
event.kbd.keycode = event.kbd.ascii = 13; event.kbd.keycode = event.kbd.ascii = 13;
else { else {
event.kbd.keycode = Common::ASCII_F5; // FIXME: Should be KEYCODE_F5 event.kbd.keycode = Common::KEYCODE_F5;
event.kbd.ascii = Common::ASCII_F5; event.kbd.ascii = Common::ASCII_F5;
} }
return true; return true;