| 41 | sf::priv::EnumArray<sf::Keyboard::Scancode, sf::Keyboard::Key, sf::Keyboard::ScancodeCount> scancodeToKeyMapping; ///< Mapping from Scancode to Key |
| 42 | |
| 43 | sf::Keyboard::Key virtualKeyToSfKey(UINT virtualKey) |
| 44 | { |
| 45 | // clang-format off |
| 46 | switch (virtualKey) |
| 47 | { |
| 48 | case 'A': return sf::Keyboard::Key::A; |
| 49 | case 'B': return sf::Keyboard::Key::B; |
| 50 | case 'C': return sf::Keyboard::Key::C; |
| 51 | case 'D': return sf::Keyboard::Key::D; |
| 52 | case 'E': return sf::Keyboard::Key::E; |
| 53 | case 'F': return sf::Keyboard::Key::F; |
| 54 | case 'G': return sf::Keyboard::Key::G; |
| 55 | case 'H': return sf::Keyboard::Key::H; |
| 56 | case 'I': return sf::Keyboard::Key::I; |
| 57 | case 'J': return sf::Keyboard::Key::J; |
| 58 | case 'K': return sf::Keyboard::Key::K; |
| 59 | case 'L': return sf::Keyboard::Key::L; |
| 60 | case 'M': return sf::Keyboard::Key::M; |
| 61 | case 'N': return sf::Keyboard::Key::N; |
| 62 | case 'O': return sf::Keyboard::Key::O; |
| 63 | case 'P': return sf::Keyboard::Key::P; |
| 64 | case 'Q': return sf::Keyboard::Key::Q; |
| 65 | case 'R': return sf::Keyboard::Key::R; |
| 66 | case 'S': return sf::Keyboard::Key::S; |
| 67 | case 'T': return sf::Keyboard::Key::T; |
| 68 | case 'U': return sf::Keyboard::Key::U; |
| 69 | case 'V': return sf::Keyboard::Key::V; |
| 70 | case 'W': return sf::Keyboard::Key::W; |
| 71 | case 'X': return sf::Keyboard::Key::X; |
| 72 | case 'Y': return sf::Keyboard::Key::Y; |
| 73 | case 'Z': return sf::Keyboard::Key::Z; |
| 74 | case '0': return sf::Keyboard::Key::Num0; |
| 75 | case '1': return sf::Keyboard::Key::Num1; |
| 76 | case '2': return sf::Keyboard::Key::Num2; |
| 77 | case '3': return sf::Keyboard::Key::Num3; |
| 78 | case '4': return sf::Keyboard::Key::Num4; |
| 79 | case '5': return sf::Keyboard::Key::Num5; |
| 80 | case '6': return sf::Keyboard::Key::Num6; |
| 81 | case '7': return sf::Keyboard::Key::Num7; |
| 82 | case '8': return sf::Keyboard::Key::Num8; |
| 83 | case '9': return sf::Keyboard::Key::Num9; |
| 84 | case VK_ESCAPE: return sf::Keyboard::Key::Escape; |
| 85 | case VK_LCONTROL: return sf::Keyboard::Key::LControl; |
| 86 | case VK_LSHIFT: return sf::Keyboard::Key::LShift; |
| 87 | case VK_LMENU: return sf::Keyboard::Key::LAlt; |
| 88 | case VK_LWIN: return sf::Keyboard::Key::LSystem; |
| 89 | case VK_RCONTROL: return sf::Keyboard::Key::RControl; |
| 90 | case VK_RSHIFT: return sf::Keyboard::Key::RShift; |
| 91 | case VK_RMENU: return sf::Keyboard::Key::RAlt; |
| 92 | case VK_RWIN: return sf::Keyboard::Key::RSystem; |
| 93 | case VK_APPS: return sf::Keyboard::Key::Menu; |
| 94 | case VK_OEM_4: return sf::Keyboard::Key::LBracket; |
| 95 | case VK_OEM_6: return sf::Keyboard::Key::RBracket; |
| 96 | case VK_OEM_1: return sf::Keyboard::Key::Semicolon; |
| 97 | case VK_OEM_COMMA: return sf::Keyboard::Key::Comma; |
| 98 | case VK_OEM_PERIOD: return sf::Keyboard::Key::Period; |
| 99 | case VK_OEM_7: return sf::Keyboard::Key::Apostrophe; |
| 100 | case VK_OEM_2: return sf::Keyboard::Key::Slash; |