Antkeeper  0.0.1
modifier-key.hpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2023 Christopher J. Howard
3  *
4  * This file is part of Antkeeper source code.
5  *
6  * Antkeeper source code is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * Antkeeper source code is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with Antkeeper source code. If not, see <http://www.gnu.org/licenses/>.
18  */
19 
20 #ifndef ANTKEEPER_INPUT_MODIFIER_KEY_HPP
21 #define ANTKEEPER_INPUT_MODIFIER_KEY_HPP
22 
23 #include <cstdint>
24 
25 namespace input {
26 
30 namespace modifier_key {
31 
33 enum: std::uint16_t
34 {
36  none = 0b0000000000000000,
37 
39  left_shift = 0b0000000000000001,
40 
42  right_shift = 0b0000000000000010,
43 
46 
48  left_ctrl = 0b0000000000000100,
49 
51  right_ctrl = 0b0000000000001000,
52 
55 
57  left_alt = 0b0000000000010000,
58 
60  right_alt = 0b0000000000100000,
61 
64 
66  left_gui = 0b0000000001000000,
67 
69  right_gui = 0b0000000010000000,
70 
73 
75  num_lock = 0b0000000100000000,
76 
78  caps_lock = 0b0000001000000000,
79 
81  scroll_lock = 0b0000010000000000,
82 
84  alt_gr = 0b0000100000000000
85 };
86 
87 } // namespace modifier_key
88 } // namespace input
89 
90 #endif // ANTKEEPER_INPUT_MODIFIER_KEY_HPP
@ right_alt
Right alt modifier key is pressed.
@ gui
One or both gui modifier keys are pressed.
@ left_gui
Left gui modifier key is pressed.
@ right_shift
Right shift modifier key is pressed.
@ left_shift
Left shift modifier key is pressed.
@ left_alt
Left alt modifier key is pressed.
@ num_lock
Num lock modifier key is pressed.
@ scroll_lock
Scroll lock modifier key is pressed.
@ left_ctrl
Left ctrl modifier key is pressed.
@ none
No modifier key is pressed.
@ right_gui
Right gui modifier key is pressed.
@ ctrl
One or both ctrl modifier keys are pressed.
@ shift
One or both shift modifier keys are pressed.
@ alt
One or both alt modifier keys are pressed.
@ right_ctrl
Right ctrl modifier key is pressed.
@ caps_lock
Caps lock modifier key is pressed.
@ alt_gr
AltGr modifier key is pressed.
Input devices, events, and mapping.