hotkeys are now universally lowercase

This commit is contained in:
David Rose 2002-02-19 17:23:39 +00:00
parent 4e64da0311
commit f946e7b58b
5 changed files with 45 additions and 91 deletions

View File

@ -1399,18 +1399,18 @@ int framework_main(int argc, char *argv[]) {
event_handler.add_hook("l", event_l); event_handler.add_hook("l", event_l);
event_handler.add_hook("w", event_w); event_handler.add_hook("w", event_w);
event_handler.add_hook("b", event_b); event_handler.add_hook("b", event_b);
event_handler.add_hook("shift-R", event_R); event_handler.add_hook("shift-r", event_R);
event_handler.add_hook("`", event_grave); event_handler.add_hook("`", event_grave);
event_handler.add_hook("n", event_n); event_handler.add_hook("n", event_n);
event_handler.add_hook("c", event_c); event_handler.add_hook("c", event_c);
event_handler.add_hook("shift-D", event_D); event_handler.add_hook("shift-d", event_D);
event_handler.add_hook("g", event_g); event_handler.add_hook("g", event_g);
event_handler.add_hook("shift-C", event_C); event_handler.add_hook("shift-c", event_C);
event_handler.add_hook("shift-N", event_N); event_handler.add_hook("shift-n", event_N);
event_handler.add_hook("shift-S", event_S); event_handler.add_hook("shift-s", event_S);
event_handler.add_hook("shift-A", event_A); event_handler.add_hook("shift-a", event_A);
event_handler.add_hook("p", event_p); event_handler.add_hook("p", event_p);
event_handler.add_hook("shift-P", event_P); event_handler.add_hook("shift-p", event_P);
#ifdef USE_IPC #ifdef USE_IPC
event_handler.add_hook("x", event_x); event_handler.add_hook("x", event_x);

View File

@ -1518,18 +1518,18 @@ int framework_main(int argc, char *argv[]) {
event_handler.add_hook("l", event_l); event_handler.add_hook("l", event_l);
event_handler.add_hook("w", event_w); event_handler.add_hook("w", event_w);
event_handler.add_hook("b", event_b); event_handler.add_hook("b", event_b);
event_handler.add_hook("shift-R", event_R); event_handler.add_hook("shift-r", event_R);
event_handler.add_hook("`", event_grave); event_handler.add_hook("`", event_grave);
event_handler.add_hook("n", event_n); event_handler.add_hook("n", event_n);
event_handler.add_hook("c", event_c); event_handler.add_hook("c", event_c);
event_handler.add_hook("shift-D", event_D); event_handler.add_hook("shift-d", event_D);
event_handler.add_hook("g", event_g); event_handler.add_hook("g", event_g);
event_handler.add_hook("shift-C", event_C); event_handler.add_hook("shift-c", event_C);
event_handler.add_hook("shift-N", event_N); event_handler.add_hook("shift-n", event_N);
event_handler.add_hook("shift-S", event_S); event_handler.add_hook("shift-s", event_S);
event_handler.add_hook("shift-A", event_A); event_handler.add_hook("shift-a", event_A);
event_handler.add_hook("p", event_p); event_handler.add_hook("p", event_p);
event_handler.add_hook("shift-P", event_P); event_handler.add_hook("shift-p", event_P);
#ifdef USE_IPC #ifdef USE_IPC
event_handler.add_hook("x", event_x); event_handler.add_hook("x", event_x);

View File

@ -513,9 +513,9 @@ void demo_keys(EventHandler&) {
event_handler.add_hook("shift-f7", event_fkey); event_handler.add_hook("shift-f7", event_fkey);
event_handler.add_hook("shift-f8", event_fkey); event_handler.add_hook("shift-f8", event_fkey);
event_handler.add_hook("shift-f9", event_fkey); event_handler.add_hook("shift-f9", event_fkey);
event_handler.add_hook("shift-B", event_B); event_handler.add_hook("shift-b", event_B);
event_handler.add_hook("shift-L", event_L); event_handler.add_hook("shift-l", event_L);
event_handler.add_hook("k", event_k); event_handler.add_hook("k", event_k);
event_handler.add_hook("a", event_a); event_handler.add_hook("a", event_a);
event_handler.add_hook("v", event_v); event_handler.add_hook("v", event_v);

View File

@ -2721,44 +2721,21 @@ lookup_key(WPARAM wparam) const {
default: default:
int key = MapVirtualKey(wparam, 2); int key = MapVirtualKey(wparam, 2);
if(isascii(key) && key != 0) { if (isascii(key) && key != 0) {
bool bCapsLockDown=((GetKeyState(VK_CAPITAL) & 0x1)!=0); // We used to try to remap lowercase to uppercase keys
bool bShiftUp = (GetKeyState(VK_SHIFT) >= 0); // here based on the state of the shift and/or caps lock
if(bShiftUp) { // keys. But that's a mistake, and doesn't allow for
if(bCapsLockDown) // international or user-defined keyboards; let Windows
key = toupper(key); // do that mapping.
else key = tolower(key);
} else { // Nowadays, we make a distinction between a "button"
switch(key) { // and a "keystroke". A button corresponds to a
// these keys are unaffected by capslock // physical button on the keyboard and has a down and up
case '1': key = '!'; break; // event associated. A keystroke may or may not
case '2': key = '@'; break; // correspond to a physical button, but will be some
case '3': key = '#'; break; // Unicode character and will not have a corresponding
case '4': key = '$'; break; // up event.
case '5': key = '%'; break; return KeyboardButton::ascii_key(tolower(key));
case '6': key = '^'; break;
case '7': key = '&'; break;
case '8': key = '*'; break;
case '9': key = '('; break;
case '0': key = ')'; break;
case '-': key = '_'; break;
case '=': key = '+'; break;
case ',': key = '<'; break;
case '.': key = '>'; break;
case '/': key = '?'; break;
case ';': key = ':'; break;
case '\'': key = '"'; break;
case '[': key = '{'; break;
case ']': key = '}'; break;
case '\\': key = '|'; break;
case '`': key = '~'; break;
default:
if(bCapsLockDown)
key = tolower(key);
else key = toupper(key);
}
}
return KeyboardButton::ascii_key((uchar)key);
} }
break; break;
} }

View File

@ -1983,43 +1983,20 @@ lookup_key(WPARAM wparam) const {
default: default:
int key = MapVirtualKey(wparam, 2); int key = MapVirtualKey(wparam, 2);
if (isascii(key) && key != 0) { if (isascii(key) && key != 0) {
bool bCapsLockDown=((GetKeyState(VK_CAPITAL) & 0x1)!=0); // We used to try to remap lowercase to uppercase keys
bool bShiftUp = (GetKeyState(VK_SHIFT) >= 0); // here based on the state of the shift and/or caps lock
if (bShiftUp) { // keys. But that's a mistake, and doesn't allow for
if (bCapsLockDown) // international or user-defined keyboards; let Windows
key = toupper(key); // do that mapping.
else key = tolower(key);
} else { // Nowadays, we make a distinction between a "button"
switch(key) { // and a "keystroke". A button corresponds to a
// these keys are unaffected by capslock // physical button on the keyboard and has a down and up
case '1': key = '!'; break; // event associated. A keystroke may or may not
case '2': key = '@'; break; // correspond to a physical button, but will be some
case '3': key = '#'; break; // Unicode character and will not have a corresponding
case '4': key = '$'; break; // up event.
case '5': key = '%'; break; return KeyboardButton::ascii_key(tolower(key));
case '6': key = '^'; break;
case '7': key = '&'; break;
case '8': key = '*'; break;
case '9': key = '('; break;
case '0': key = ')'; break;
case '-': key = '_'; break;
case '=': key = '+'; break;
case ',': key = '<'; break;
case '.': key = '>'; break;
case '/': key = '?'; break;
case ';': key = ':'; break;
case '\'': key = '"'; break;
case '[': key = '{'; break;
case ']': key = '}'; break;
case '\\': key = '|'; break;
case '`': key = '~'; break;
default:
if (bCapsLockDown)
key = tolower(key);
else key = toupper(key);
}
}
return KeyboardButton::ascii_key((uchar)key);
} }
break; break;
} }