| 229 | } |
| 230 | |
| 231 | static unsigned int KeyCodeToCharacter(int32_t keyCode, bool upperCase) |
| 232 | { |
| 233 | switch (keyCode) |
| 234 | { |
| 235 | case AKEYCODE_SPACE: |
| 236 | return ' '; |
| 237 | // case AKEYCODE_ENTER: |
| 238 | // return '\n'; |
| 239 | case AKEYCODE_APOSTROPHE: |
| 240 | return upperCase ? '"' : '\''; |
| 241 | case AKEYCODE_COMMA: |
| 242 | return upperCase ? '<' : ','; |
| 243 | case AKEYCODE_MINUS: |
| 244 | return upperCase ? '_' : '-'; |
| 245 | case AKEYCODE_PERIOD: |
| 246 | return upperCase ? '>' : '.'; |
| 247 | case AKEYCODE_SLASH: |
| 248 | return upperCase ? '?' : '/'; |
| 249 | case AKEYCODE_SEMICOLON: |
| 250 | return upperCase ? ':' : ';'; |
| 251 | case AKEYCODE_EQUALS: |
| 252 | return upperCase ? '+' : '='; |
| 253 | case AKEYCODE_LEFT_BRACKET: |
| 254 | return upperCase ? '{' : '['; |
| 255 | case AKEYCODE_BACKSLASH: |
| 256 | return upperCase ? '|' : '\\'; |
| 257 | case AKEYCODE_RIGHT_BRACKET: |
| 258 | return upperCase ? '}' : ']'; |
| 259 | case AKEYCODE_GRAVE: |
| 260 | return upperCase ? '~' : '`'; |
| 261 | case AKEYCODE_NUMPAD_0: |
| 262 | return '0'; |
| 263 | case AKEYCODE_NUMPAD_1: |
| 264 | return '1'; |
| 265 | case AKEYCODE_NUMPAD_2: |
| 266 | return '2'; |
| 267 | case AKEYCODE_NUMPAD_3: |
| 268 | return '3'; |
| 269 | case AKEYCODE_NUMPAD_4: |
| 270 | return '4'; |
| 271 | case AKEYCODE_NUMPAD_5: |
| 272 | return '5'; |
| 273 | case AKEYCODE_NUMPAD_6: |
| 274 | return '6'; |
| 275 | case AKEYCODE_NUMPAD_7: |
| 276 | return '7'; |
| 277 | case AKEYCODE_NUMPAD_8: |
| 278 | return '8'; |
| 279 | case AKEYCODE_NUMPAD_9: |
| 280 | return '9'; |
| 281 | case AKEYCODE_NUMPAD_DOT: |
| 282 | return '.'; |
| 283 | case AKEYCODE_NUMPAD_DIVIDE: |
| 284 | return '/'; |
| 285 | case AKEYCODE_NUMPAD_MULTIPLY: |
| 286 | return '*'; |
| 287 | case AKEYCODE_NUMPAD_SUBTRACT: |
| 288 | return '-'; |