X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FWinInput.cpp;fp=Source%2FWinInput.cpp;h=c5a59c349e653415d097c32f10bbb512c52aa602;hb=326621743b8eea53a3a040f657ad77e9f19fc7da;hp=d42ae78ef310c4f73181e1772ed3f66ef14b9572;hpb=4ec0f8c7dd3faf7878b1bb460a381ebe98848e6c;p=lugaru.git diff --git a/Source/WinInput.cpp b/Source/WinInput.cpp index d42ae78..c5a59c3 100644 --- a/Source/WinInput.cpp +++ b/Source/WinInput.cpp @@ -21,6 +21,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. /**> HEADER FILES <**/ #include "WinInput.h" +#include "SDL.h" #ifdef WIN32 #include @@ -31,822 +32,153 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #endif extern bool keyboardfrozen; -extern bool buttons[3]; /********************> IsKeyDown() <*****/ -Boolean IsKeyDown( unsigned char *keyMap, unsigned short theKey ) -{ - if(keyboardfrozen)return 0; - if(theKey< 0x80 /*1000*/){ - static long keyMapIndex; - static Boolean isKeyDown; - static short bitToCheck; - - // Calculate the key map index - keyMapIndex = keyMap[theKey/8]; - - // Calculate the individual bit to check - bitToCheck = theKey%8; - - // Check the status of the key - isKeyDown = ( keyMapIndex >> bitToCheck ) & 0x01; - - // Return the status of the key - return isKeyDown; - } - else if(theKey==MAC_MOUSEBUTTON1) - return buttons[0]; - else if(theKey==MAC_MOUSEBUTTON2) - return buttons[1]; - - return 0; -} unsigned short CharToKey(const char* which) { - // alphabetic keys - if(!strcasecmp(which,"a")){ - return MAC_A_KEY; - } - if(!strcasecmp(which,"b")){ - return MAC_B_KEY; - } - if(!strcasecmp(which,"c")){ - return MAC_C_KEY; - } - if(!strcasecmp(which,"d")){ - return MAC_D_KEY; - } - if(!strcasecmp(which,"e")){ - return MAC_E_KEY; - } - if(!strcasecmp(which,"f")){ - return MAC_F_KEY; - } - if(!strcasecmp(which,"g")){ - return MAC_G_KEY; - } - if(!strcasecmp(which,"h")){ - return MAC_H_KEY; - } - if(!strcasecmp(which,"i")){ - return MAC_I_KEY; - } - if(!strcasecmp(which,"j")){ - return MAC_J_KEY; - } - if(!strcasecmp(which,"k")){ - return MAC_K_KEY; - } - if(!strcasecmp(which,"l")){ - return MAC_L_KEY; - } - if(!strcasecmp(which,"m")){ - return MAC_M_KEY; - } - if(!strcasecmp(which,"n")){ - return MAC_N_KEY; - } - if(!strcasecmp(which,"o")){ - return MAC_O_KEY; - } - if(!strcasecmp(which,"p")){ - return MAC_P_KEY; - } - if(!strcasecmp(which,"q")){ - return MAC_Q_KEY; - } - if(!strcasecmp(which,"r")){ - return MAC_R_KEY; - } - if(!strcasecmp(which,"s")){ - return MAC_S_KEY; - } - if(!strcasecmp(which,"t")){ - return MAC_T_KEY; - } - if(!strcasecmp(which,"u")){ - return MAC_U_KEY; - } - if(!strcasecmp(which,"v")){ - return MAC_V_KEY; - } - if(!strcasecmp(which,"w")){ - return MAC_W_KEY; - } - if(!strcasecmp(which,"x")){ - return MAC_X_KEY; - } - if(!strcasecmp(which,"y")){ - return MAC_Y_KEY; - } - if(!strcasecmp(which,"z")){ - return MAC_Z_KEY; - } - - // keypad keys - if(!strcasecmp(which,"KP0")){ - return MAC_NUMPAD_0_KEY; - } - if(!strcasecmp(which,"KP1")){ - return MAC_NUMPAD_1_KEY; - } - if(!strcasecmp(which,"KP2")){ - return MAC_NUMPAD_2_KEY; - } - if(!strcasecmp(which,"KP3")){ - return MAC_NUMPAD_3_KEY; - } - if(!strcasecmp(which,"KP4")){ - return MAC_NUMPAD_4_KEY; - } - if(!strcasecmp(which,"KP5")){ - return MAC_NUMPAD_5_KEY; - } - if(!strcasecmp(which,"KP6")){ - return MAC_NUMPAD_6_KEY; - } - if(!strcasecmp(which,"KP7")){ - return MAC_NUMPAD_7_KEY; - } - if(!strcasecmp(which,"KP8")){ - return MAC_NUMPAD_8_KEY; - } - if(!strcasecmp(which,"KP9")){ - return MAC_NUMPAD_9_KEY; - } - - // enter - if(!strcasecmp(which,"enter")){ - return MAC_ENTER_KEY; - } - - // number keys - if(!strcasecmp(which,"0")){ - return MAC_0_KEY; - } - if(!strcasecmp(which,"1")){ - return MAC_1_KEY; - } - if(!strcasecmp(which,"2")){ - return MAC_2_KEY; - } - if(!strcasecmp(which,"3")){ - return MAC_3_KEY; - } - if(!strcasecmp(which,"4")){ - return MAC_4_KEY; - } - if(!strcasecmp(which,"5")){ - return MAC_5_KEY; - } - if(!strcasecmp(which,"6")){ - return MAC_6_KEY; - } - if(!strcasecmp(which,"7")){ - return MAC_7_KEY; - } - if(!strcasecmp(which,"8")){ - return MAC_8_KEY; - } - if(!strcasecmp(which,"9")){ - return MAC_9_KEY; - } - - // function keys - if(!strcasecmp(which,"F1")){ - return MAC_F1_KEY; - } - if(!strcasecmp(which,"F2")){ - return MAC_F2_KEY; - } - if(!strcasecmp(which,"F3")){ - return MAC_F3_KEY; - } - if(!strcasecmp(which,"F4")){ - return MAC_F4_KEY; - } - if(!strcasecmp(which,"F5")){ - return MAC_F5_KEY; - } - if(!strcasecmp(which,"F6")){ - return MAC_F6_KEY; - } - if(!strcasecmp(which,"F7")){ - return MAC_F7_KEY; - } - if(!strcasecmp(which,"F8")){ - return MAC_F8_KEY; - } - if(!strcasecmp(which,"F9")){ - return MAC_F9_KEY; - } - if(!strcasecmp(which,"F10")){ - return MAC_F10_KEY; - } - if(!strcasecmp(which,"F11")){ - return MAC_F11_KEY; - } - if(!strcasecmp(which,"F12")){ - return MAC_F12_KEY; - } - - // escape - if(!strcasecmp(which,"escape")){ - return MAC_ESCAPE_KEY; - } - if(!strcasecmp(which,"backspace")){ - return MAC_DELETE_KEY; - } - if(!strcasecmp(which,"tab")){ - return MAC_TAB_KEY; - } - if(!strcasecmp(which,"`")){ - return MAC_TILDE_KEY; - } - if(!strcasecmp(which,"caps_lock")){ - return MAC_CAPS_LOCK_KEY; - } -// if(which==){ -// return ""; -// } - if(!strcasecmp(which,"command")){ - return MAC_COMMAND_KEY; - } - if(!strcasecmp(which,"option")){ - return MAC_OPTION_KEY; - } - if(!strcasecmp(which,"delete")){ - return MAC_DEL_KEY; - } - if(!strcasecmp(which,"insert")){ - return MAC_INSERT_KEY; - } - if(!strcasecmp(which,"home")){ - return MAC_HOME_KEY; - } - if(!strcasecmp(which,"end")){ - return MAC_END_KEY; - } - if(!strcasecmp(which,"page_up")){ - return MAC_PAGE_UP_KEY; - } - if(!strcasecmp(which,"page_down")){ - return MAC_PAGE_DOWN_KEY; - } - if(!strcasecmp(which,"clear")){ - return MAC_NUMPAD_CLEAR_KEY; - } - - if(!strcasecmp(which,"control")){ - return MAC_CONTROL_KEY; - } - if(!strcasecmp(which,"return")){ - return MAC_RETURN_KEY; - } - if(!strcasecmp(which,"space")){ - return MAC_SPACE_KEY; - } - if(!strcasecmp(which,"shift")){ - return MAC_SHIFT_KEY; - } - if(!strcasecmp(which,"uparrow")){ - return MAC_ARROW_UP_KEY; - } - if(!strcasecmp(which,"downarrow")){ - return MAC_ARROW_DOWN_KEY; - } - if(!strcasecmp(which,"leftarrow")){ - return MAC_ARROW_LEFT_KEY; - } - if(!strcasecmp(which,"rightarrow")){ - return MAC_ARROW_RIGHT_KEY; + for(unsigned short i=0;i