Push fake keyboard - Simulatekeyboard
This commit is contained in:
		| @@ -1540,6 +1540,9 @@ void Engine::KeyPressEvent(unsigned char key) { | |||||||
| 		} | 		} | ||||||
| 		//Stop(); | 		//Stop(); | ||||||
| 		break; | 		break; | ||||||
|  | 	case 38: // Shift | ||||||
|  | 		m_keyShift = true; | ||||||
|  | 		break; | ||||||
| 	case 57: // Space - Sauter | 	case 57: // Space - Sauter | ||||||
| 		if (!m_keySpace) { | 		if (!m_keySpace) { | ||||||
| 			m_keySpace = true; | 			m_keySpace = true; | ||||||
| @@ -1661,6 +1664,9 @@ void Engine::KeyReleaseEvent(unsigned char key) { | |||||||
| 	case 28: // 2 | 	case 28: // 2 | ||||||
| 		m_key2 = true; | 		m_key2 = true; | ||||||
| 		break; | 		break; | ||||||
|  | 	case 38: // Shift | ||||||
|  | 		m_keyShift = false; | ||||||
|  | 		break; | ||||||
| 	case 57: // Espace - Stop sauter | 	case 57: // Espace - Stop sauter | ||||||
| 		m_keySpace = false; | 		m_keySpace = false; | ||||||
| 		break; | 		break; | ||||||
| @@ -1704,6 +1710,167 @@ void Engine::MouseMoveEvent(int x, int y) { | |||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  |  | ||||||
|  | char Engine::SimulateKeyboard(unsigned char key) { | ||||||
|  | 	switch (key) { | ||||||
|  | 	case 0: // A | ||||||
|  | 		if (!m_keyShift) { return 'a'; } | ||||||
|  | 		else { return 'A'; } | ||||||
|  | 		break; | ||||||
|  | 	case 1: // B | ||||||
|  | 		if (!m_keyShift) { return 'b'; } | ||||||
|  | 		else { return 'B'; } | ||||||
|  | 		break; | ||||||
|  | 	case 2: // C | ||||||
|  | 		if (!m_keyShift) { return 'c'; } | ||||||
|  | 		else { return 'C'; } | ||||||
|  | 		break; | ||||||
|  | 	case 3: // D | ||||||
|  | 		if (!m_keyShift) { return 'd'; } | ||||||
|  | 		else { return 'D'; } | ||||||
|  | 		break; | ||||||
|  | 	case 4: // E | ||||||
|  | 		if (!m_keyShift) { return 'e'; } | ||||||
|  | 		else { return 'E'; } | ||||||
|  | 		break; | ||||||
|  | 	case 5: // F | ||||||
|  | 		if (!m_keyShift) { return 'f'; } | ||||||
|  | 		else { return 'F'; } | ||||||
|  | 		break; | ||||||
|  | 	case 6: // G | ||||||
|  | 		if (!m_keyShift) { return 'g'; } | ||||||
|  | 		else { return 'G'; } | ||||||
|  | 		break; | ||||||
|  | 	case 7: // H | ||||||
|  | 		if (!m_keyShift) { return 'h'; } | ||||||
|  | 		else { return 'H'; } | ||||||
|  | 		break; | ||||||
|  | 	case 8: // I | ||||||
|  | 		if (!m_keyShift) { return 'i'; } | ||||||
|  | 		else { return 'I'; } | ||||||
|  | 		break; | ||||||
|  | 	case 9: // J | ||||||
|  | 		if (!m_keyShift) { return 'j'; } | ||||||
|  | 		else { return 'J'; } | ||||||
|  | 		break; | ||||||
|  | 	case 10: // K | ||||||
|  | 		if (!m_keyShift) { return 'k'; } | ||||||
|  | 		else { return 'K'; } | ||||||
|  | 		break; | ||||||
|  | 	case 11: // L | ||||||
|  | 		if (!m_keyShift) { return 'l'; } | ||||||
|  | 		else { return 'L'; } | ||||||
|  | 		break; | ||||||
|  | 	case 12: // M | ||||||
|  | 		if (!m_keyShift) { return 'm'; } | ||||||
|  | 		else { return 'M'; } | ||||||
|  | 		break; | ||||||
|  | 	case 13: // N | ||||||
|  | 		if (!m_keyShift) { return 'n'; } | ||||||
|  | 		else { return 'N'; } | ||||||
|  | 		break; | ||||||
|  | 	case 14: // O | ||||||
|  | 		if (!m_keyShift) { return 'o'; } | ||||||
|  | 		else { return 'O'; } | ||||||
|  | 		break; | ||||||
|  | 	case 15: // P | ||||||
|  | 		if (!m_keyShift) { return 'p'; } | ||||||
|  | 		else { return 'P'; } | ||||||
|  | 		break; | ||||||
|  | 	case 16: // Q | ||||||
|  | 		if (!m_keyShift) { return 'q'; } | ||||||
|  | 		else { return 'Q'; } | ||||||
|  | 		break; | ||||||
|  | 	case 17: // R | ||||||
|  | 		if (!m_keyShift) { return 'r'; } | ||||||
|  | 		else { return 'R'; } | ||||||
|  | 		break; | ||||||
|  | 	case 18: // S | ||||||
|  | 		if (!m_keyShift) { return 's'; } | ||||||
|  | 		else { return 'S'; } | ||||||
|  | 		break; | ||||||
|  | 	case 19: // T | ||||||
|  | 		if (!m_keyShift) { return 't'; } | ||||||
|  | 		else { return 'T'; } | ||||||
|  | 		break; | ||||||
|  | 	case 20: // U | ||||||
|  | 		if (!m_keyShift) { return 'u'; } | ||||||
|  | 		else { return 'U'; } | ||||||
|  | 		break; | ||||||
|  | 	case 21: // V | ||||||
|  | 		if (!m_keyShift) { return 'v'; } | ||||||
|  | 		else { return 'V'; } | ||||||
|  | 		break; | ||||||
|  | 	case 22: // W | ||||||
|  | 		if (!m_keyShift) { return 'w'; } | ||||||
|  | 		else { return 'W'; } | ||||||
|  | 		break; | ||||||
|  | 	case 23: // X | ||||||
|  | 		if (!m_keyShift) { return 'x'; } | ||||||
|  | 		else { return 'X'; } | ||||||
|  | 		break; | ||||||
|  | 	case 24: // Y | ||||||
|  | 		if (!m_keyShift) { return 'y'; } | ||||||
|  | 		else { return 'Y'; } | ||||||
|  | 		break; | ||||||
|  | 	case 25: // Z | ||||||
|  | 		if (!m_keyShift) { return 'z'; } | ||||||
|  | 		else { return 'Z'; } | ||||||
|  | 		break; | ||||||
|  | 	case 26: // 0 | ||||||
|  | 		if (!m_keyShift) { return '0'; } | ||||||
|  | 		else { return ')'; } | ||||||
|  | 		break; | ||||||
|  | 	case 27: // 1 | ||||||
|  | 		if (!m_keyShift) { return '1'; } | ||||||
|  | 		else { return '!'; } | ||||||
|  | 		break; | ||||||
|  | 	case 28: // 2 | ||||||
|  | 		if (!m_keyShift) { return '2'; } | ||||||
|  | 		else { return '\"'; } | ||||||
|  | 		break; | ||||||
|  | 	case 29: // 3 | ||||||
|  | 		if (!m_keyShift) { return '3'; } | ||||||
|  | 		else { return '/'; } | ||||||
|  | 		break; | ||||||
|  | 	case 30: // 4 | ||||||
|  | 		if (!m_keyShift) { return '4'; } | ||||||
|  | 		else { return '$'; } | ||||||
|  | 		break; | ||||||
|  | 	case 31: // 5 | ||||||
|  | 		if (!m_keyShift) { return '5'; } | ||||||
|  | 		else { return '%'; } | ||||||
|  | 		break; | ||||||
|  | 	case 32: // 6 | ||||||
|  | 		if (!m_keyShift) { return '6'; } | ||||||
|  | 		else { return '?'; } | ||||||
|  | 		break; | ||||||
|  | 	case 33: // 7 | ||||||
|  | 		if (!m_keyShift) { return '7'; } | ||||||
|  | 		else { return '&'; } | ||||||
|  | 		break; | ||||||
|  | 	case 34: // 8 | ||||||
|  | 		if (!m_keyShift) { return '8'; } | ||||||
|  | 		else { return '*'; } | ||||||
|  | 		break; | ||||||
|  | 	case 35: // 9 | ||||||
|  | 		if (!m_keyShift) { return '9'; } | ||||||
|  | 		else { return '(A)'; } | ||||||
|  | 		break; | ||||||
|  | 	case 36: // SPACE | ||||||
|  | 		return ' '; | ||||||
|  | 		break; | ||||||
|  | 	case 50: // . (Period) | ||||||
|  | 		return '.'; | ||||||
|  | 		break; | ||||||
|  | 	case 56: // _ (Underscore) | ||||||
|  | 		if (!m_keyShift) { return '-'; } | ||||||
|  | 		else { return '_'; } | ||||||
|  | 		break; | ||||||
|  | 	default: | ||||||
|  | 		break; | ||||||
|  | 	} | ||||||
|  | } | ||||||
|  |  | ||||||
| void Engine::MousePressEvent(const MOUSE_BUTTON& button, int x, int y) { | void Engine::MousePressEvent(const MOUSE_BUTTON& button, int x, int y) { | ||||||
| 	m_mousemx = x; | 	m_mousemx = x; | ||||||
| 	m_mousemy = y; | 	m_mousemy = y; | ||||||
|   | |||||||
| @@ -80,6 +80,7 @@ private: | |||||||
|  |  | ||||||
|     void PrintText(float x, float y, const std::string& t, float charSizeMultiplier = 1.0f); |     void PrintText(float x, float y, const std::string& t, float charSizeMultiplier = 1.0f); | ||||||
|     void ProcessNotificationQueue(); |     void ProcessNotificationQueue(); | ||||||
|  |     char SimulateKeyboard(unsigned char key); | ||||||
|  |  | ||||||
|     Connector m_conn; |     Connector m_conn; | ||||||
|  |  | ||||||
| @@ -211,6 +212,7 @@ private: | |||||||
|     bool m_keyS = false; |     bool m_keyS = false; | ||||||
|     bool m_keyD = false; |     bool m_keyD = false; | ||||||
|     bool m_keySpace = false; |     bool m_keySpace = false; | ||||||
|  |     bool m_keyShift = false; | ||||||
|  |  | ||||||
|     bool m_mouseL = false; |     bool m_mouseL = false; | ||||||
|     bool m_mouseR = false; |     bool m_mouseR = false; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user