Files
NazaraEngine/include/Nazara/Utility/Keyboard.hpp
Lynix 80c4ef6b5a Removed constructor and destructor from static classes Keyboard and Mouse
Former-commit-id: 9c9054723b33535ec444bda4621dd678284d6983
2014-03-04 19:11:03 +01:00

172 lines
2.1 KiB
C++

// Copyright (C) 2014 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 <Nazara/Prerequesites.hpp>
#include <Nazara/Core/String.hpp>
class NAZARA_API NzKeyboard
{
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
};
NzKeyboard() = delete;
~NzKeyboard() = delete;
static NzString GetKeyName(Key key);
static bool IsKeyPressed(Key key);
};
#endif // NAZARA_KEYBOARD_HPP