💿🐜 Antkeeper source code https://antkeeper.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

281 lines
3.4 KiB

/*
* Copyright (C) 2021 Christopher J. Howard
*
* This file is part of Antkeeper source code.
*
* Antkeeper source code is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Antkeeper source code is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Antkeeper source code. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef ANTKEEPER_INPUT_SCANCODE_HPP
#define ANTKEEPER_INPUT_SCANCODE_HPP
namespace input {
/**
* Enumerates keyboard scancodes.
*/
enum class scancode
{
unknown,
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,
one,
two,
three,
four,
five,
six,
seven,
eight,
nine,
zero,
enter,
escape,
backspace,
tab,
space,
minus,
equal,
left_brace,
right_brace,
backslash,
non_us_hash,
semicolon,
apostrophe,
grave,
comma,
dot,
slash,
caps_lock,
f1,
f2,
f3,
f4,
f5,
f6,
f7,
f8,
f9,
f10,
f11,
f12,
print_screen,
scroll_lock,
pause,
insert,
home,
page_up,
del,
end,
page_down,
right,
left,
down,
up,
num_lock,
kp_slash,
kp_asterisk,
kp_minus,
kp_plus,
kp_enter,
kp_1,
kp_2,
kp_3,
kp_4,
kp_5,
kp_6,
kp_7,
kp_8,
kp_9,
kp_0,
kp_dot,
non_us_backslash,
application,
power,
kp_equal,
f13,
f14,
f15,
f16,
f17,
f18,
f19,
f20,
f21,
f22,
f23,
f24,
execute,
help,
menu,
select,
stop,
again,
undo,
cut,
copy,
paste,
find,
mute,
volume_up,
volume_down,
locking_caps_lock,
locking_num_lock,
locking_scroll_lock,
kp_comma,
kp_equal_as400,
international_1,
international_2,
international_3,
international_4,
international_5,
international_6,
international_7,
international_8,
international_9,
lang_1,
lang_2,
lang_3,
lang_4,
lang_5,
lang_6,
lang_7,
lang_8,
lang_9,
alt_erase,
sys_req,
cancel,
clear,
prior,
return_2,
separator,
_out,
oper,
clear_again,
cr_sel,
ex_sel,
kp_00,
kp_000,
thousands_separator,
decimal_separator,
currency_unit,
currency_sub_unit,
kp_left_paren,
kp_right_paren,
kp_left_brace,
kp_right_brace,
kp_tab,
kp_backspace,
kp_a,
kp_b,
kp_c,
kp_d,
kp_e,
kp_f,
kp_xor,
kp_power,
kp_percent,
kp_less,
kp_greater,
kp_ampersand,
kp_double_ampersand,
kp_vertical_bar,
kp_double_vertical_bar,
kp_colon,
kp_hash,
kp_space,
kp_at,
kp_exclam,
kp_mem_store,
kp_mem_recall,
kp_mem_clear,
kp_mem_add,
kp_mem_subtract,
kp_mem_multiply,
kp_mem_divide,
kp_plus_minus,
kp_clear,
kp_clear_entry,
kp_binary,
kp_octal,
kp_decimal,
kp_hexadecimal,
left_ctrl,
left_shift,
left_alt,
left_gui,
right_ctrl,
right_shift,
right_alt,
right_gui,
mode,
audio_next,
audio_prev,
audio_stop,
audio_play,
audio_mute,
media_select,
www,
mail,
calculator,
computer,
ac_search,
ac_home,
ac_back,
ac_forward,
ac_stop,
ac_refresh,
ac_bookmarks,
brightness_down,
brightness_up,
display_switch,
kbd_illum_toggle,
kbd_illum_down,
kbd_illum_up,
eject,
sleep,
app_1,
app_2,
audio_rewind,
audio_fast_forward
};
} // namespace input
#endif // ANTKEEPER_INPUT_SCANCODE_HPP