[Scummvm-cvs-logs] SF.net SVN: scummvm: [22607] scummvm/trunk/engines/agi/agi.cpp

aquadran at users.sourceforge.net aquadran at users.sourceforge.net
Wed May 24 06:53:09 CEST 2006


Revision: 22607
Author:   aquadran
Date:     2006-05-24 06:36:38 -0700 (Wed, 24 May 2006)
ViewCVS:  http://svn.sourceforge.net/scummvm/?rev=22607&view=rev

Log Message:
-----------
fixed modifier keys

Modified Paths:
--------------
    scummvm/trunk/engines/agi/agi.cpp
Modified: scummvm/trunk/engines/agi/agi.cpp
===================================================================
--- scummvm/trunk/engines/agi/agi.cpp	2006-05-24 13:08:09 UTC (rev 22606)
+++ scummvm/trunk/engines/agi/agi.cpp	2006-05-24 13:36:38 UTC (rev 22607)
@@ -110,12 +110,14 @@
 			mouse.button = 0;
 			break;
 		case OSystem::EVENT_KEYDOWN:
+			key_control = 0;
+			key_alt = 0;
 			if (event.kbd.flags == OSystem::KBD_CTRL) {
-				key_control |= 1;
+				key_control = 1;
 				key = 0;
 				break;
 			} else if (event.kbd.flags == OSystem::KBD_ALT) {
-				key_alt |= 1;
+				key_alt = 1;
 				key = 0;
 				break;
 			} else if (event.kbd.flags == OSystem::KBD_SHIFT) {
@@ -201,7 +203,7 @@
 				key = KEY_ENTER;
 				break;
 			default:
-				if (!isalpha(key))
+				if (key < 256 && !isalpha(key))
 					break;
 				if (key_control)
 					key = (key & ~0x20) - 0x40;
@@ -212,19 +214,6 @@
 			if (key)
 				key_enqueue(key);
 			break;
-		case OSystem::EVENT_KEYUP:
-			if (event.kbd.flags == OSystem::KBD_CTRL) {
-				key_control &= ~1;
-				key = 0;
-				break;
-			} else if (event.kbd.flags == OSystem::KBD_ALT) {
-				key_alt &= ~1;
-				key = 0;
-				break;
-			} else if (event.kbd.flags == OSystem::KBD_SHIFT) {
-				key = 0;
-				break;
-			}
 			break;
 		default:
 			break;


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.





More information about the Scummvm-git-logs mailing list