diff options
| -rw-r--r-- | engines/sci/engine/kevent.cpp | 18 | ||||
| -rw-r--r-- | engines/sci/engine/kgraphics.cpp | 13 | ||||
| -rw-r--r-- | engines/sci/engine/kmenu.cpp | 16 | ||||
| -rw-r--r-- | engines/sci/gfx/gfx_driver.cpp | 24 | ||||
| -rw-r--r-- | engines/sci/gfx/operations.cpp | 23 | ||||
| -rw-r--r-- | engines/sci/include/uinput.h | 14 | 
6 files changed, 67 insertions, 41 deletions
| diff --git a/engines/sci/engine/kevent.cpp b/engines/sci/engine/kevent.cpp index 2b236e329f..451d49c413 100644 --- a/engines/sci/engine/kevent.cpp +++ b/engines/sci/engine/kevent.cpp @@ -27,8 +27,6 @@  #include "sci/gfx/gfx_widgets.h"  #include "sci/engine/kernel.h" -#include "common/keyboard.h" -  namespace Sci {  int stop_on_event; @@ -153,32 +151,32 @@ reg_t kMapKeyToDir(EngineState *s, int funct_nr, int argc, reg_t *argv) {  	if (GET_SEL32V(obj, type) == SCI_EVT_KEYBOARD) { // Keyboard  		int mover = -1;  		switch (GET_SEL32V(obj, message)) { -		case Common::KEYCODE_HOME: +		case SCI_K_HOME:  			mover = 8;  			break; -		case Common::KEYCODE_UP: +		case SCI_K_UP:  			mover = 1;  			break; -		case Common::KEYCODE_PAGEUP: +		case SCI_K_PGUP:  			mover = 2;  			break; -		case Common::KEYCODE_LEFT: +		case SCI_K_LEFT:  			mover = 7;  			break;  		case SCI_K_CENTER:  		case 76:  			mover = 0;  			break; -		case Common::KEYCODE_RIGHT: +		case SCI_K_RIGHT:  			mover = 3;  			break; -		case Common::KEYCODE_END: +		case SCI_K_END:  			mover = 6;  			break; -		case Common::KEYCODE_DOWN: +		case SCI_K_DOWN:  			mover = 5;  			break; -		case Common::KEYCODE_PAGEDOWN: +		case SCI_K_PGDOWN:  			mover = 4;  			break;  		default: diff --git a/engines/sci/engine/kgraphics.cpp b/engines/sci/engine/kgraphics.cpp index 088c351c82..75b989e0c4 100644 --- a/engines/sci/engine/kgraphics.cpp +++ b/engines/sci/engine/kgraphics.cpp @@ -24,7 +24,6 @@   */  #include "common/system.h" -#include "common/keyboard.h"  #include "sci/include/sciresource.h"  #include "sci/include/engine.h" @@ -1450,7 +1449,7 @@ reg_t kEditControl(EngineState *s, int funct_nr, int argc, reg_t *argv) {  				} else if (key < 31) {  					PUT_SEL32V(event, claimed, 1);  					switch (key) { -					case Common::KEYCODE_BACKSPACE: +					case SCI_K_BACKSPACE:  						_K_EDIT_BACKSPACE;  						break;  					default: @@ -1458,21 +1457,21 @@ reg_t kEditControl(EngineState *s, int funct_nr, int argc, reg_t *argv) {  					}  				} else if (key & 0xff00) {  					switch (key) { -					case Common::KEYCODE_HOME: +					case SCI_K_HOME:  						cursor = 0;  						break; -					case Common::KEYCODE_END: +					case SCI_K_END:  						cursor = textlen;  						break; -					case Common::KEYCODE_RIGHT: +					case SCI_K_RIGHT:  						if (cursor + 1 <= textlen)  							++cursor;  						break; -					case Common::KEYCODE_LEFT: +					case SCI_K_LEFT:  						if (cursor > 0)  							--cursor;  						break; -					case Common::KEYCODE_DELETE: +					case SCI_K_DELETE:  						_K_EDIT_DELETE;  						break;  					} diff --git a/engines/sci/engine/kmenu.cpp b/engines/sci/engine/kmenu.cpp index d6b75160c2..300a762e76 100644 --- a/engines/sci/engine/kmenu.cpp +++ b/engines/sci/engine/kmenu.cpp @@ -29,8 +29,6 @@  #include "sci/gfx/menubar.h"  #include "sci/engine/kernel.h" -#include "common/keyboard.h" -  namespace Sci {  reg_t @@ -328,7 +326,7 @@ kMenuSelect(EngineState *s, int funct_nr, int argc, reg_t *argv) {  		int menuc, itemc;  		if ((type == SCI_EVT_KEYBOARD) -		        && (message == Common::KEYCODE_ESCAPE)) +		        && (message == SCI_K_ESC))  			menu_mode = 1;  		else if ((type == SCI_EVT_SAID) || message) { /* Don't claim 0 keyboard event */ @@ -405,17 +403,17 @@ kMenuSelect(EngineState *s, int funct_nr, int argc, reg_t *argv) {  						s->visual->print(GFXW(s->visual), 0);  					break; -				case Common::KEYCODE_ESCAPE: +				case SCI_K_ESC:  					menu_mode = 0;  					break; -				case Common::KEYCODE_RETURN: +				case SCI_K_ENTER:  					menu_mode = 0;  					if ((item_nr >= 0) && (menu_nr >= 0))  						claimed = 1;  					break; -				case Common::KEYCODE_LEFT: +				case SCI_K_LEFT:  					if (menu_nr > 0)  						--menu_nr;  					else @@ -424,7 +422,7 @@ kMenuSelect(EngineState *s, int funct_nr, int argc, reg_t *argv) {  					item_nr = _menu_go_down(s, menu_nr, -1);  					break; -				case Common::KEYCODE_RIGHT: +				case SCI_K_RIGHT:  					if (menu_nr < (s->menubar->menus_nr - 1))  						++menu_nr;  					else @@ -433,7 +431,7 @@ kMenuSelect(EngineState *s, int funct_nr, int argc, reg_t *argv) {  					item_nr = _menu_go_down(s, menu_nr, -1);  					break; -				case Common::KEYCODE_UP: +				case SCI_K_UP:  					if (item_nr > -1) {  						do { --item_nr; } @@ -441,7 +439,7 @@ kMenuSelect(EngineState *s, int funct_nr, int argc, reg_t *argv) {  					}  					break; -				case Common::KEYCODE_DOWN: { +				case SCI_K_DOWN: {  					item_nr = _menu_go_down(s, menu_nr, item_nr);  				}  				break; diff --git a/engines/sci/gfx/gfx_driver.cpp b/engines/sci/gfx/gfx_driver.cpp index e9b1036d79..28c16ee820 100644 --- a/engines/sci/gfx/gfx_driver.cpp +++ b/engines/sci/gfx/gfx_driver.cpp @@ -375,11 +375,11 @@ static sci_event_t scummvm_get_event(gfx_driver_t *drv) {  				if (input.data == Common::KEYCODE_TAB) {  					// Tab  					input.type = SCI_EVT_KEYBOARD; -					input.data = Common::KEYCODE_TAB; +					input.data = SCI_K_TAB;  					if (input.buckybits & (SCI_EVM_LSHIFT | SCI_EVM_RSHIFT))  						input.character = SCI_K_SHIFT_TAB;  					else -						input.character = Common::KEYCODE_TAB; +						input.character = SCI_K_TAB;  				}  			} else if ((input.data >= Common::KEYCODE_F1) && input.data <= Common::KEYCODE_F10) {  				// F1-F10 @@ -396,16 +396,34 @@ static sci_event_t scummvm_get_event(gfx_driver_t *drv) {  				input.type = SCI_EVT_KEYBOARD;  				switch (ev.kbd.keycode) {  				case Common::KEYCODE_UP: +					input.data = SCI_K_UP; +					break;  				case Common::KEYCODE_DOWN: +					input.data = SCI_K_DOWN; +					break;  				case Common::KEYCODE_RIGHT: +					input.data = SCI_K_RIGHT; +					break;  				case Common::KEYCODE_LEFT: +					input.data = SCI_K_LEFT; +					break;  				case Common::KEYCODE_INSERT: +					input.data = SCI_K_INSERT; +					break;  				case Common::KEYCODE_HOME: +					input.data = SCI_K_HOME; +					break;  				case Common::KEYCODE_END: +					input.data = SCI_K_END; +					break;  				case Common::KEYCODE_PAGEUP: +					input.data = SCI_K_PGUP; +					break;  				case Common::KEYCODE_PAGEDOWN: +					input.data = SCI_K_PGDOWN; +					break;  				case Common::KEYCODE_DELETE: -					input.data = ev.kbd.keycode; +					input.data = SCI_K_DELETE;  					break;  					//TODO: SCI_K_CENTER  				default: diff --git a/engines/sci/gfx/operations.cpp b/engines/sci/gfx/operations.cpp index 96721090fe..746414a9c0 100644 --- a/engines/sci/gfx/operations.cpp +++ b/engines/sci/gfx/operations.cpp @@ -29,7 +29,6 @@  #include "sci/gfx/operations.h"  #include "common/system.h" -#include "common/keyboard.h"  namespace Sci { @@ -1375,7 +1374,7 @@ int _gfxop_shiftify(int c) {  			return shifted_numbers[c-'0'];  		switch (c) { -		case Common::KEYCODE_TAB: +		case SCI_K_TAB:  			return SCI_K_SHIFT_TAB;  		case ']':  			return '}'; @@ -1432,27 +1431,27 @@ int _gfxop_shiftify(int c) {  static int _gfxop_numlockify(int c) {  	switch (c) { -	case Common::KEYCODE_DELETE: +	case SCI_K_DELETE:  		return '.'; -	case Common::KEYCODE_INSERT: +	case SCI_K_INSERT:  		return '0'; -	case Common::KEYCODE_END: +	case SCI_K_END:  		return '1'; -	case Common::KEYCODE_DOWN: +	case SCI_K_DOWN:  		return '2'; -	case Common::KEYCODE_PAGEDOWN: +	case SCI_K_PGDOWN:  		return '3'; -	case Common::KEYCODE_LEFT: +	case SCI_K_LEFT:  		return '4';  	case SCI_K_CENTER:  		return '5'; -	case Common::KEYCODE_RIGHT: +	case SCI_K_RIGHT:  		return '6'; -	case Common::KEYCODE_HOME: +	case SCI_K_HOME:  		return '7'; -	case Common::KEYCODE_UP: +	case SCI_K_UP:  		return '8'; -	case Common::KEYCODE_PAGEUP: +	case SCI_K_PGUP:  		return '9';  	default:  		return c; // Unchanged diff --git a/engines/sci/include/uinput.h b/engines/sci/include/uinput.h index dbf8cc424f..5c003f3c06 100644 --- a/engines/sci/include/uinput.h +++ b/engines/sci/include/uinput.h @@ -69,9 +69,23 @@ struct sci_event_t {  /* Keycodes of special keys: */ +#define SCI_K_ESC 27 +#define SCI_K_BACKSPACE 8 +#define SCI_K_ENTER 13 +#define SCI_K_TAB '\t'  #define SCI_K_SHIFT_TAB (0xf << 8) +#define SCI_K_END (79 << 8) +#define SCI_K_DOWN (80 << 8) +#define SCI_K_PGDOWN (81 << 8) +#define SCI_K_LEFT (75 << 8)  #define SCI_K_CENTER (76 << 8) +#define SCI_K_RIGHT (77 << 8) +#define SCI_K_HOME (71 << 8) +#define SCI_K_UP (72 << 8) +#define SCI_K_PGUP (73 << 8) +#define SCI_K_INSERT (82 << 8) +#define SCI_K_DELETE (83 << 8)  #define SCI_K_F1 (59<<8)  #define SCI_K_F2 (60<<8) | 
