changeset 3914:4fd12011d8d6 SDL-1.2

Quartz code should use F13, F14, and F15 keys instead of PrintScreen, ScrollLock, and Pause, since that's what's on the standard Apple keyboards (minus the laptops, which have neither set). Ideally we'll find a better way to distinguish this...the keys being replaced would be correct on a USB keyboard for Windows. Sigh. Fixes Bugzilla #301.
author Ryan C. Gordon <icculus@icculus.org>
date Wed, 14 Feb 2007 10:23:23 +0000
parents 9e454eb693a5
children 89b0f3d12fe2
files src/video/quartz/SDL_QuartzEvents.m src/video/quartz/SDL_QuartzKeys.h
diffstat 2 files changed, 12 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/video/quartz/SDL_QuartzEvents.m	Tue Feb 13 09:58:04 2007 +0000
+++ b/src/video/quartz/SDL_QuartzEvents.m	Wed Feb 14 10:23:23 2007 +0000
@@ -87,9 +87,14 @@
     keymap[QZ_F10] = SDLK_F10;
     keymap[QZ_F11] = SDLK_F11;
     keymap[QZ_F12] = SDLK_F12;
+    keymap[QZ_F13] = SDLK_F13;
+    keymap[QZ_F14] = SDLK_F14;
+    keymap[QZ_F15] = SDLK_F15;
+/*
     keymap[QZ_PRINT] = SDLK_PRINT;
     keymap[QZ_SCROLLOCK] = SDLK_SCROLLOCK;
     keymap[QZ_PAUSE] = SDLK_PAUSE;
+*/
     keymap[QZ_POWER] = SDLK_POWER;
     keymap[QZ_BACKQUOTE] = SDLK_BACKQUOTE;
     keymap[QZ_1] = SDLK_1;
@@ -270,6 +275,7 @@
     if (numChars == 0) {
       
         key.scancode = [ event keyCode ];
+printf("numChars == 0, scancode == %d\n", (int) key.scancode);
         key.sym      = keymap [ key.scancode ];
         key.unicode  = 0;
         key.mod      = KMOD_NONE;
@@ -279,6 +285,7 @@
     else if (numChars == 1) {
 
         key.scancode = [ event keyCode ];
+printf("numChars == 1, scancode == %d\n", (int) key.scancode);
         key.sym      = keymap [ key.scancode ];
         key.unicode  = [ chars characterAtIndex:0 ];
         key.mod      = KMOD_NONE;
--- a/src/video/quartz/SDL_QuartzKeys.h	Tue Feb 13 09:58:04 2007 +0000
+++ b/src/video/quartz/SDL_QuartzKeys.h	Wed Feb 14 10:23:23 2007 +0000
@@ -36,9 +36,14 @@
 #define QZ_F10			0x6D
 #define QZ_F11			0x67
 #define QZ_F12			0x6F
+#define QZ_F13			0x69
+#define QZ_F14			0x6B
+#define QZ_F15			0x71
+/*
 #define QZ_PRINT		0x69
 #define QZ_SCROLLOCK    0x6B
 #define QZ_PAUSE		0x71
+*/
 #define QZ_POWER		0x7F
 #define QZ_BACKQUOTE	0x32
 #define QZ_1			0x12