// Copyright (C) 2015 Jérôme Leclercq // This file is part of the "Nazara Engine - Utility module" // For conditions of distribution and use, see copyright notice in Config.hpp // Interface inspirée de la SFML par Laurent Gomila #pragma once #ifndef NAZARA_KEYBOARD_HPP #define NAZARA_KEYBOARD_HPP #include #include #include namespace Nz { class NAZARA_UTILITY_API Keyboard { public: enum Key { Undefined = -1, // Lettres A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, // Touches de fonction F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13, F14, F15, // Flèches directionnelles Down, Left, Right, Up, // Pavé numérique Add, Decimal, Divide, Multiply, Numpad0, Numpad1, Numpad2, Numpad3, Numpad4, Numpad5, Numpad6, Numpad7, Numpad8, Numpad9, Subtract, // Divers Backslash, Backspace, Clear, Comma, Dash, Delete, End, Equal, Escape, Home, Insert, LAlt, LBracket, LControl, LShift, LSystem, Num0, Num1, Num2, Num3, Num4, Num5, Num6, Num7, Num8, Num9, PageDown, PageUp, Pause, Period, Print, PrintScreen, Quote, RAlt, RBracket, RControl, Return, RShift, RSystem, Semicolon, Slash, Space, Tab, Tilde, // Touches navigateur Browser_Back, Browser_Favorites, Browser_Forward, Browser_Home, Browser_Refresh, Browser_Search, Browser_Stop, // Touches de contrôle de lecture Media_Next, Media_Play, Media_Previous, Media_Stop, // Touches de contrôle du volume Volume_Down, Volume_Mute, Volume_Up, // Touches à verrouillage CapsLock, NumLock, ScrollLock, Count }; Keyboard() = delete; ~Keyboard() = delete; static String GetKeyName(Key key); static bool IsKeyPressed(Key key); }; } #endif // NAZARA_KEYBOARD_HPP