Advertisement
Guest User

Untitled

a guest
May 31st, 2016
262
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.94 KB | None | 0 0
  1.  
  2. PyObject * Python::PyIrr_getKey(PyObject * self,PyObject * args){
  3. //irr::EKEY_CODE StringToEKey_Code( std::string tempString )
  4. s32 key;
  5. int keyValue;
  6. std::string tempString;
  7. char * tempString2;
  8. // EKEY_CODE ekey;
  9. PyArg_ParseTuple(args,"s",&tempString2);
  10. tempString = tempString2;
  11.  
  12.  
  13. //switch ( EKEY_CODE(tempString)){// case KEY_KEY_P: 'KEY_KEY_E'
  14. // //mouse
  15. // case KEY_KEY_E://
  16. // keyValue = 0x45;
  17. // break;
  18. // case KEY_LBUTTON:
  19. // keyValue = 0x01;
  20. // break;
  21. //}
  22.  
  23. if ( tempString == "KEY_LBUTTON" ) { keyValue = 0x01; }
  24. // else if( tempString == "KEY_RBUTTON" ) { keyValue = 0x02;}
  25. // else if( tempString == "KEY_CANCEL" ) { keyValue = 0x03;}
  26. // else if( tempString == "KEY_MBUTTON" ) { keyValue = 0x04;}
  27. // else if( tempString == "KEY_XBUTTON1" ) { keyValue = 0x05;}
  28. // else if( tempString == "KEY_XBUTTON2" ) { keyValue = 0x06;}
  29. // else if( tempString == "KEY_BACK" ) { keyValue = 0x08;}
  30. // else if( tempString == "KEY_TAB" ) { keyValue = 0x09;}
  31. // else if( tempString == "KEY_CLEAR" ) { keyValue = 0x0C;}
  32. else if( tempString == "KEY_RETURN" ) { keyValue = 0x0D;}
  33. // else if( tempString == "KEY_SHIFT" ) { keyValue = 0x10;}
  34. // else if( tempString == "KEY_CONTROL" ) { keyValue = 0x08;}
  35. // else if( tempString == "KEY_MENU" ) { keyValue = 0x12;}
  36. // else if( tempString == "KEY_PAUSE" ) { keyValue = 0x13;}
  37. // else if( tempString == "KEY_CAPITAL" ) { keyValue = 0x14;}
  38. // else if( tempString == "KEY_KANA" ) { keyValue = 0x15}
  39. // else if( tempString == "KEY_HANGUEL" ) { keyValue = 0x15;}
  40. // else if( tempString == "KEY_HANGUL" ) { keyValue = 0x15;}
  41. // else if( tempString == "KEY_JUNJA" ) { keyValue = 0x17;}
  42. // else if( tempString == "KEY_FINAL" ) { keyValue = 0x18;}
  43. // else if( tempString == "KEY_HANJA" ) { keyValue = 0x19;}
  44. // else if( tempString == "KEY_KANJI" ) { keyValue = 0x19;}
  45. else if( tempString == "KEY_ESCAPE" ) { keyValue = 0x18;}
  46. // else if( tempString == "KEY_CONVERT" ) { keyValue = 0x1C;}
  47. // else if( tempString == "KEY_NONCONVERT" ) { keyValue = 0x1D;}
  48. // else if( tempString == "KEY_ACCEPT" ) { keyValue = 0x1E;}
  49. // else if( tempString == "KEY_MODECHANGE" ) { keyValue = 0x1F;}
  50. //
  51. //
  52. else if( tempString == "KEY_SPACE" ) { keyValue = 0x20; }
  53. // else if( tempString == "KEY_PRIOR" ) { keyValue = 0x21; }
  54. // else if( tempString == "KEY_NEXT" ) { keyValue = 0x22; }
  55. // else if( tempString == "KEY_END" ) { keyValue = 0x23; }
  56. // else if( tempString == "KEY_HOME" ) { keyValue = 0x24; }
  57. else if( tempString == "KEY_LEFT" ) { keyValue = 0x25; }
  58. else if( tempString == "KEY_UP" ) { keyValue = 0x26; }
  59. else if( tempString == "KEY_RIGHT" ) { keyValue = 0x27; }
  60. else if( tempString == "KEY_DOWN" ) { keyValue = 0x28; }
  61. // else if( tempString == "KEY_SELECT" ) { keyValue = 0x29; }
  62. // else if( tempString == "KEY_PRINT" ) { keyValue = 0x2A; }
  63. // else if( tempString == "KEY_EXECUT" ) { keyValue = 0x2B; }
  64. // else if( tempString == "KEY_SNAPSHOT" ) { keyValue = 0x2C; }
  65. // else if( tempString == "KEY_INSERT" ) { keyValue = 0x2D; }
  66. // else if( tempString == "KEY_DELETE" ) { keyValue = 0x2E; }
  67. // else if( tempString == "KEY_HELP" ) { keyValue = 0x2F; }
  68.  
  69. // parse key_key from tempString
  70. //
  71. // //numbers
  72. // else if( tempString == "KEY_KEY_1" ) { keyValue = 0x30; }
  73. // else if( tempString == "KEY_KEY_2" ) { keyValue = 0x31; }
  74. // else if( tempString == "KEY_KEY_3" ) { keyValue = 0x32; }
  75. // else if( tempString == "KEY_KEY_4" ) { keyValue = 0x33; }
  76. // else if( tempString == "KEY_KEY_5" ) { keyValue = 0x34; }
  77. // else if( tempString == "KEY_KEY_6" ) { keyValue = 0x35; }
  78. // else if( tempString == "KEY_KEY_7" ) { keyValue = 0x36; }
  79. // else if( tempString == "KEY_KEY_8" ) { keyValue = 0x37; }
  80. // else if( tempString == "KEY_KEY_8" ) { keyValue = 0x38; }
  81.  
  82. //letters
  83. // else if( tempString == "KEY_KEY_A" ) { keyValue = 0x41; }
  84. // else if( tempString == "KEY_KEY_B" ) { keyValue = 0x42; }
  85. // else if( tempString == "KEY_KEY_C" ) { keyValue = 0x43;}
  86. // else if( tempString == "KEY_KEY_D" ) { keyValue = 0x44;}
  87. else if( tempString == "KEY_KEY_E" ) { keyValue = 0x45;}
  88. // else if( tempString == "KEY_KEY_F" ) { keyValue = 0x46;}
  89. // else if( tempString == "KEY_KEY_G" ) { keyValue = 0x47;}
  90. // else if( tempString == "KEY_KEY_H" ) { keyValue = 0x48;}
  91. // else if( tempString == "KEY_KEY_I" ) { keyValue = 0x49;}
  92. // else if( tempString == "KEY_KEY_J" ) { keyValue = 0x4A;}
  93. else if( tempString == "KEY_KEY_A" ) { keyValue = 0x41; }
  94. // else if( tempString == "KEY_KEY_B" ) { keyValue = 0x42; }
  95. // else if( tempString == "KEY_KEY_C" ) { keyValue = 0x43;}
  96. else if( tempString == "KEY_KEY_D" ) { keyValue = 0x44;}
  97. // else if( tempString == "KEY_KEY_E" ) { keyValue = 0x45;}
  98. // else if( tempString == "KEY_KEY_F" ) { keyValue = 0x46;}
  99. // else if( tempString == "KEY_KEY_G" ) { keyValue = 0x47;}
  100. // else if( tempString == "KEY_KEY_H" ) { keyValue = 0x48;}
  101. // else if( tempString == "KEY_KEY_I" ) { keyValue = 0x49;}
  102. // else if( tempString == "KEY_KEY_J" ) { keyValue = 0x4A;}
  103. // else if( tempString == "KEY_KEY_K" ) { keyValue = 0x43;}
  104. // else if( tempString == "KEY_KEY_L" ) { keyValue = 0x44;}
  105. // else if( tempString == "KEY_KEY_M" ) { keyValue = 0x45;}
  106. // else if( tempString == "KEY_KEY_N" ) { keyValue = 0x46;}
  107. // else if( tempString == "KEY_KEY_O" ) { keyValue = 0x47;}
  108. // else if( tempString == "KEY_KEY_P" ) { keyValue = 0x48;}
  109. // else if( tempString == "KEY_KEY_Q" ) { keyValue = 0x49;}
  110. // else if( tempString == "KEY_KEY_R" ) { keyValue = 0x4A;}
  111. else if( tempString == "KEY_KEY_S" ) { keyValue = 0x43;}
  112. // else if( tempString == "KEY_KEY_T" ) { keyValue = 0x44;}
  113. // else if( tempString == "KEY_KEY_U" ) { keyValue = 0x45;}
  114. // else if( tempString == "KEY_KEY_V" ) { keyValue = 0x46;}
  115. else if( tempString == "KEY_KEY_W" ) { keyValue = 0x47;}
  116. // else if( tempString == "KEY_KEY_X" ) { keyValue = 0x48;}
  117. // else if( tempString == "KEY_KEY_Y" ) { keyValue = 0x49;}
  118. // else if( tempString == "KEY_KEY_Z" ) { keyValue = 0x4A;}
  119. //
  120. // //fkeys
  121. // else if( tempString == "KEY_F1" ) { keyValue = 0x70;}
  122. // else if( tempString == "KEY_F2" ) { keyValue = 0x71;}
  123. // else if( tempString == "KEY_F3" ) { keyValue = 0x72;}
  124. // else if( tempString == "KEY_F4" ) { keyValue = 0x73;}
  125. // else if( tempString == "KEY_F5" ) { keyValue = 0x74;}
  126. // else if( tempString == "KEY_F6" ) { keyValue = 0x75;}
  127. // else if( tempString == "KEY_F7" ) { keyValue = 0x76;}
  128. // else if( tempString == "KEY_F8" ) { keyValue = 0x77;}
  129. // else if( tempString == "KEY_F9" ) { keyValue = 0x78;}
  130. // else if( tempString == "KEY_F10" ) { keyValue = 0x79;}
  131. // else if( tempString == "KEY_F11" ) { keyValue = 0x7A;}
  132. // else if( tempString == "KEY_F12" ) { keyValue = 0x7B;}
  133.  
  134.  
  135. // else if( tempString == "KEY_F13" ) { keyValue = 0x7C;}
  136. // else if( tempString == "KEY_F14" ) { keyValue = 0x7D;}
  137. // else if( tempString == "KEY_F15" ) { keyValue = 0x7E;}
  138. // else if( tempString == "KEY_F16" ) { keyValue = 0x7F;}
  139. //KEY_F16
  140. //KEY_F17
  141. //KEY_F18
  142. //KEY_F19
  143. //KEY_F20
  144. //KEY_F21
  145. //KEY_F22
  146. //KEY_F23
  147. //KEY_F24
  148.  
  149. //numberpad
  150.  
  151. // else if( tempString == "KEY_LWIN" ) { keyValue = 0x7E;}
  152. // else if( tempString == "KEY_RWIN" ) { keyValue = 0x7F;}
  153. // else if( tempString == "KEY_APPS" ) { keyValue = 0x7E;}
  154. // else if( tempString == "KEY_SLEEP" ) { keyValue = 0x7F;}
  155. //
  156. // else if( tempString == "KEY_NUMPAD0" ) { keyValue = 0x60;}
  157. // else if( tempString == "KEY_NUMPAD1" ) { keyValue = 0x61;}
  158. // else if( tempString == "KEY_NUMPAD2" ) { keyValue = 0x62;}
  159. // else if( tempString == "KEY_NUMPAD3" ) { keyValue = 0x63;}
  160. // else if( tempString == "KEY_NUMPAD4" ) { keyValue = 0x64;}
  161. // else if( tempString == "KEY_NUMPAD5" ) { keyValue = 0x65;}
  162. // else if( tempString == "KEY_NUMPAD6" ) { keyValue = 0x66;}
  163. // else if( tempString == "KEY_NUMPAD7" ) { keyValue = 0x67;}
  164. // else if( tempString == "KEY_NUMPAD8" ) { keyValue = 0x68;}
  165. // else if( tempString == "KEY_NUMPAD9" ) { keyValue = 0x69;}
  166. // else if( tempString == "KEY_MULTIPLY" ) { keyValue = 0x6A;}
  167. // else if( tempString == "KEY_ADD" ) { keyValue = 0x6B;}
  168. // else if( tempString == "KEY_SEPARATOR" ) { keyValue = 0x6C;}
  169. // else if( tempString == "KEY_SUBTRACT" ) { keyValue = 0x6D;}
  170. // else if( tempString == "KEY_DECIMAL" ) { keyValue = 0x6E;}
  171. // else if( tempString == "KEY_DIVIDE" ) { keyValue = 0x6F;}
  172. //
  173. // else if( tempString == " KEY_NUMLOCK" ) { keyValue = 0x90;}
  174. // else if( tempString == "KEY_SCROLL" ) { keyValue = 0x91;}
  175. // else if( tempString == " KEY_LSHIFT" ) { keyValue = 0xA0;}
  176. // else if( tempString == "KEY_RSHIFT" ) { keyValue = 0xA1;}
  177. // else if( tempString == " KEY_LCONTROL" ) { keyValue = 0xA2;}
  178. // else if( tempString == "KEY_RCONTROL" ) { keyValue = 0xA3;}
  179. // else if( tempString == " KEY_LMENU" ) { keyValue = 0xA4;}
  180. // else if( tempString == "KEY_RMENU" ) { keyValue = 0xA5;}
  181. //
  182. // else if( tempString == " KEY_OEM_1" ) { keyValue = 0xBA;}
  183. // else if( tempString == "KEY_PLUS" ) { keyValue = 0xBB;}
  184. // else if( tempString == " KEY_COMMA" ) { keyValue = 0xBC;}
  185. // else if( tempString == "KEY_MINUS" ) { keyValue = 0xBD;}
  186. //
  187. // else if( tempString == " KEY_PERIOD" ) { keyValue = 0xBE;}
  188. // else if( tempString == "KEY_OEM_2" ) { keyValue = 0xBF;}
  189. // else if( tempString == " KEY_OEM_3" ) { keyValue = 0xC0;}
  190. // else if( tempString == "KEY_OEM_4" ) { keyValue = 0xDB;}
  191. // else if( tempString == " KEY_OEM_5" ) { keyValue = 0xDC;}
  192. // else if( tempString == "KEY_OEM_6" ) { keyValue = 0xDD;}
  193. // else if( tempString == " KEY_OEM_7" ) { keyValue = 0xDE;}
  194. // else if( tempString == "KEY_OEM_8" ) { keyValue = 0xDF;}
  195. // else if( tempString == "KEY_OEM_9" ) { keyValue = 0xE0;}// NOT SURE ABOUT THIS KEYVALUE
  196. //
  197. // else if( tempString == "KEY_OEM_AX" ) { keyValue = 0xE1;}
  198. // else if( tempString == " KEY_OEM_102" ) { keyValue = 0xE2;}
  199. // else if( tempString == "KEY_ATTN" ) { keyValue = 0xF6;}
  200. // else if( tempString == " KEY_CRSEL" ) { keyValue = 0xF7;}
  201. // else if( tempString == "KEY_EXSEL" ) { keyValue = 0xF8;}
  202. // else if( tempString == " KEY_EREOF" ) { keyValue = 0xF9;}
  203. // else if( tempString == "KEY_PLAY" ) { keyValue = 0xFA;}
  204. // else if( tempString == "KEY_ZOOM" ) { keyValue = 0xFB;}
  205. //
  206. // else if( tempString == "KEY_PA1" ) { keyValue = 0xFC;}
  207. // else if( tempString == " KEY_OEM_CLEAR" ) { keyValue = 0xFE;}
  208. // else if( tempString == "KEY_KEY_CODES_COUNT" ) { keyValue = 0xFF;}
  209. //extras
  210.  
  211. else
  212. {
  213. return Py_BuildValue("b",0);
  214. // No keycode match for string.
  215. }
  216. keyValue=0;
  217. // bool keystate = mEvent.getKeyState(irr::EKEY_CODE(keyValue));
  218. bool keystate ;
  219. if (keyValue > 0 ){
  220. keystate = CheckKeyState( keyValue );
  221. }
  222. // if (keystate == true ){printf("the key was pressed");}
  223. return Py_BuildValue("b",keystate);
  224. }
  225.  
  226.  
  227. bool Python::CheckKeyState(int key){
  228. //EKEY_CODE akey;
  229. //printf("checking key state \n");
  230. //printf("value is %i \n",key);
  231. bool keystate = mEvent.getKeyState( irr::EKEY_CODE(key) );
  232. //if ( keystate == true ){printf("pyKeyE pressed")};
  233. //irr::EKEY_CODE(KEY_KEY_P)
  234. //return irr::EKEY_CODE( keyValue );
  235. return (keystate);
  236. //return 1;
  237. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement