MCPcopy Create free account
hub / github.com/Bloom-Engine/engine / map_keycode

Function map_keycode

native/windows/src/lib.rs:15–45  ·  view source on GitHub ↗

Map Win32 virtual key code to Bloom key code.

(vk: u32)

Source from the content-addressed store, hash-verified

13
14/// Map Win32 virtual key code to Bloom key code.
15fn map_keycode(vk: u32) -> usize {
16 match vk {
17 0x41..=0x5A => vk as usize, // A-Z map directly (65-90)
18 0x30..=0x39 => vk as usize, // 0-9 map directly (48-57)
19 0x70..=0x7B => (vk - 0x70 + 112) as usize, // F1-F12
20 0x26 => 256, // VK_UP
21 0x28 => 257, // VK_DOWN
22 0x25 => 258, // VK_LEFT
23 0x27 => 259, // VK_RIGHT
24 0x20 => 32, // VK_SPACE
25 0x0D => 265, // VK_RETURN → Bloom ENTER
26 0x1B => 27, // VK_ESCAPE
27 0x09 => 9, // VK_TAB
28 0x08 => 8, // VK_BACK
29 0x2E => 127, // VK_DELETE
30 0x2D => 260, // VK_INSERT
31 0x24 => 261, // VK_HOME
32 0x23 => 262, // VK_END
33 0x21 => 263, // VK_PRIOR (Page Up)
34 0x22 => 264, // VK_NEXT (Page Down)
35 0xA0 => 280, // VK_LSHIFT
36 0xA1 => 281, // VK_RSHIFT
37 0xA2 => 282, // VK_LCONTROL
38 0xA3 => 283, // VK_RCONTROL
39 0xA4 => 284, // VK_LMENU (Left Alt)
40 0xA5 => 285, // VK_RMENU (Right Alt)
41 0x5B => 286, // VK_LWIN
42 0x5C => 287, // VK_RWIN
43 _ => 0,
44 }
45}
46
47// Win32 windowing implementation
48#[cfg(windows)]

Callers 1

wndprocFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected