Added more keysym checks for Linux to detect RAlt (mod5).

This commit is contained in:
Stefan Schindler 2016-01-20 20:44:49 +01:00
parent f037c2775b
commit 4a12244aab

View File

@ -242,108 +242,110 @@ namespace
{ {
switch (symbol) switch (symbol)
{ {
case XK_Shift_L: return sf::Keyboard::LShift; case XK_Shift_L: return sf::Keyboard::LShift;
case XK_Shift_R: return sf::Keyboard::RShift; case XK_Shift_R: return sf::Keyboard::RShift;
case XK_Control_L: return sf::Keyboard::LControl; case XK_Control_L: return sf::Keyboard::LControl;
case XK_Control_R: return sf::Keyboard::RControl; case XK_Control_R: return sf::Keyboard::RControl;
case XK_Alt_L: return sf::Keyboard::LAlt; case XK_Alt_L: return sf::Keyboard::LAlt;
case XK_Alt_R: return sf::Keyboard::RAlt; case XK_ISO_Level3_Shift:
case XK_Super_L: return sf::Keyboard::LSystem; case XK_Mode_switch:
case XK_Super_R: return sf::Keyboard::RSystem; case XK_Alt_R: return sf::Keyboard::RAlt;
case XK_Menu: return sf::Keyboard::Menu; case XK_Super_L: return sf::Keyboard::LSystem;
case XK_Escape: return sf::Keyboard::Escape; case XK_Super_R: return sf::Keyboard::RSystem;
case XK_semicolon: return sf::Keyboard::SemiColon; case XK_Menu: return sf::Keyboard::Menu;
case XK_slash: return sf::Keyboard::Slash; case XK_Escape: return sf::Keyboard::Escape;
case XK_equal: return sf::Keyboard::Equal; case XK_semicolon: return sf::Keyboard::SemiColon;
case XK_minus: return sf::Keyboard::Dash; case XK_slash: return sf::Keyboard::Slash;
case XK_bracketleft: return sf::Keyboard::LBracket; case XK_equal: return sf::Keyboard::Equal;
case XK_bracketright: return sf::Keyboard::RBracket; case XK_minus: return sf::Keyboard::Dash;
case XK_comma: return sf::Keyboard::Comma; case XK_bracketleft: return sf::Keyboard::LBracket;
case XK_period: return sf::Keyboard::Period; case XK_bracketright: return sf::Keyboard::RBracket;
case XK_apostrophe: return sf::Keyboard::Quote; case XK_comma: return sf::Keyboard::Comma;
case XK_backslash: return sf::Keyboard::BackSlash; case XK_period: return sf::Keyboard::Period;
case XK_grave: return sf::Keyboard::Tilde; case XK_apostrophe: return sf::Keyboard::Quote;
case XK_space: return sf::Keyboard::Space; case XK_backslash: return sf::Keyboard::BackSlash;
case XK_Return: return sf::Keyboard::Return; case XK_grave: return sf::Keyboard::Tilde;
case XK_KP_Enter: return sf::Keyboard::Return; case XK_space: return sf::Keyboard::Space;
case XK_BackSpace: return sf::Keyboard::BackSpace; case XK_Return: return sf::Keyboard::Return;
case XK_Tab: return sf::Keyboard::Tab; case XK_KP_Enter: return sf::Keyboard::Return;
case XK_Prior: return sf::Keyboard::PageUp; case XK_BackSpace: return sf::Keyboard::BackSpace;
case XK_Next: return sf::Keyboard::PageDown; case XK_Tab: return sf::Keyboard::Tab;
case XK_End: return sf::Keyboard::End; case XK_Prior: return sf::Keyboard::PageUp;
case XK_Home: return sf::Keyboard::Home; case XK_Next: return sf::Keyboard::PageDown;
case XK_Insert: return sf::Keyboard::Insert; case XK_End: return sf::Keyboard::End;
case XK_Delete: return sf::Keyboard::Delete; case XK_Home: return sf::Keyboard::Home;
case XK_KP_Add: return sf::Keyboard::Add; case XK_Insert: return sf::Keyboard::Insert;
case XK_KP_Subtract: return sf::Keyboard::Subtract; case XK_Delete: return sf::Keyboard::Delete;
case XK_KP_Multiply: return sf::Keyboard::Multiply; case XK_KP_Add: return sf::Keyboard::Add;
case XK_KP_Divide: return sf::Keyboard::Divide; case XK_KP_Subtract: return sf::Keyboard::Subtract;
case XK_Pause: return sf::Keyboard::Pause; case XK_KP_Multiply: return sf::Keyboard::Multiply;
case XK_F1: return sf::Keyboard::F1; case XK_KP_Divide: return sf::Keyboard::Divide;
case XK_F2: return sf::Keyboard::F2; case XK_Pause: return sf::Keyboard::Pause;
case XK_F3: return sf::Keyboard::F3; case XK_F1: return sf::Keyboard::F1;
case XK_F4: return sf::Keyboard::F4; case XK_F2: return sf::Keyboard::F2;
case XK_F5: return sf::Keyboard::F5; case XK_F3: return sf::Keyboard::F3;
case XK_F6: return sf::Keyboard::F6; case XK_F4: return sf::Keyboard::F4;
case XK_F7: return sf::Keyboard::F7; case XK_F5: return sf::Keyboard::F5;
case XK_F8: return sf::Keyboard::F8; case XK_F6: return sf::Keyboard::F6;
case XK_F9: return sf::Keyboard::F9; case XK_F7: return sf::Keyboard::F7;
case XK_F10: return sf::Keyboard::F10; case XK_F8: return sf::Keyboard::F8;
case XK_F11: return sf::Keyboard::F11; case XK_F9: return sf::Keyboard::F9;
case XK_F12: return sf::Keyboard::F12; case XK_F10: return sf::Keyboard::F10;
case XK_F13: return sf::Keyboard::F13; case XK_F11: return sf::Keyboard::F11;
case XK_F14: return sf::Keyboard::F14; case XK_F12: return sf::Keyboard::F12;
case XK_F15: return sf::Keyboard::F15; case XK_F13: return sf::Keyboard::F13;
case XK_Left: return sf::Keyboard::Left; case XK_F14: return sf::Keyboard::F14;
case XK_Right: return sf::Keyboard::Right; case XK_F15: return sf::Keyboard::F15;
case XK_Up: return sf::Keyboard::Up; case XK_Left: return sf::Keyboard::Left;
case XK_Down: return sf::Keyboard::Down; case XK_Right: return sf::Keyboard::Right;
case XK_KP_Insert: return sf::Keyboard::Numpad0; case XK_Up: return sf::Keyboard::Up;
case XK_KP_End: return sf::Keyboard::Numpad1; case XK_Down: return sf::Keyboard::Down;
case XK_KP_Down: return sf::Keyboard::Numpad2; case XK_KP_Insert: return sf::Keyboard::Numpad0;
case XK_KP_Page_Down: return sf::Keyboard::Numpad3; case XK_KP_End: return sf::Keyboard::Numpad1;
case XK_KP_Left: return sf::Keyboard::Numpad4; case XK_KP_Down: return sf::Keyboard::Numpad2;
case XK_KP_Begin: return sf::Keyboard::Numpad5; case XK_KP_Page_Down: return sf::Keyboard::Numpad3;
case XK_KP_Right: return sf::Keyboard::Numpad6; case XK_KP_Left: return sf::Keyboard::Numpad4;
case XK_KP_Home: return sf::Keyboard::Numpad7; case XK_KP_Begin: return sf::Keyboard::Numpad5;
case XK_KP_Up: return sf::Keyboard::Numpad8; case XK_KP_Right: return sf::Keyboard::Numpad6;
case XK_KP_Page_Up: return sf::Keyboard::Numpad9; case XK_KP_Home: return sf::Keyboard::Numpad7;
case XK_a: return sf::Keyboard::A; case XK_KP_Up: return sf::Keyboard::Numpad8;
case XK_b: return sf::Keyboard::B; case XK_KP_Page_Up: return sf::Keyboard::Numpad9;
case XK_c: return sf::Keyboard::C; case XK_a: return sf::Keyboard::A;
case XK_d: return sf::Keyboard::D; case XK_b: return sf::Keyboard::B;
case XK_e: return sf::Keyboard::E; case XK_c: return sf::Keyboard::C;
case XK_f: return sf::Keyboard::F; case XK_d: return sf::Keyboard::D;
case XK_g: return sf::Keyboard::G; case XK_e: return sf::Keyboard::E;
case XK_h: return sf::Keyboard::H; case XK_f: return sf::Keyboard::F;
case XK_i: return sf::Keyboard::I; case XK_g: return sf::Keyboard::G;
case XK_j: return sf::Keyboard::J; case XK_h: return sf::Keyboard::H;
case XK_k: return sf::Keyboard::K; case XK_i: return sf::Keyboard::I;
case XK_l: return sf::Keyboard::L; case XK_j: return sf::Keyboard::J;
case XK_m: return sf::Keyboard::M; case XK_k: return sf::Keyboard::K;
case XK_n: return sf::Keyboard::N; case XK_l: return sf::Keyboard::L;
case XK_o: return sf::Keyboard::O; case XK_m: return sf::Keyboard::M;
case XK_p: return sf::Keyboard::P; case XK_n: return sf::Keyboard::N;
case XK_q: return sf::Keyboard::Q; case XK_o: return sf::Keyboard::O;
case XK_r: return sf::Keyboard::R; case XK_p: return sf::Keyboard::P;
case XK_s: return sf::Keyboard::S; case XK_q: return sf::Keyboard::Q;
case XK_t: return sf::Keyboard::T; case XK_r: return sf::Keyboard::R;
case XK_u: return sf::Keyboard::U; case XK_s: return sf::Keyboard::S;
case XK_v: return sf::Keyboard::V; case XK_t: return sf::Keyboard::T;
case XK_w: return sf::Keyboard::W; case XK_u: return sf::Keyboard::U;
case XK_x: return sf::Keyboard::X; case XK_v: return sf::Keyboard::V;
case XK_y: return sf::Keyboard::Y; case XK_w: return sf::Keyboard::W;
case XK_z: return sf::Keyboard::Z; case XK_x: return sf::Keyboard::X;
case XK_0: return sf::Keyboard::Num0; case XK_y: return sf::Keyboard::Y;
case XK_1: return sf::Keyboard::Num1; case XK_z: return sf::Keyboard::Z;
case XK_2: return sf::Keyboard::Num2; case XK_0: return sf::Keyboard::Num0;
case XK_3: return sf::Keyboard::Num3; case XK_1: return sf::Keyboard::Num1;
case XK_4: return sf::Keyboard::Num4; case XK_2: return sf::Keyboard::Num2;
case XK_5: return sf::Keyboard::Num5; case XK_3: return sf::Keyboard::Num3;
case XK_6: return sf::Keyboard::Num6; case XK_4: return sf::Keyboard::Num4;
case XK_7: return sf::Keyboard::Num7; case XK_5: return sf::Keyboard::Num5;
case XK_8: return sf::Keyboard::Num8; case XK_6: return sf::Keyboard::Num6;
case XK_9: return sf::Keyboard::Num9; case XK_7: return sf::Keyboard::Num7;
case XK_8: return sf::Keyboard::Num8;
case XK_9: return sf::Keyboard::Num9;
} }
return sf::Keyboard::Unknown; return sf::Keyboard::Unknown;