aboutsummaryrefslogtreecommitdiffstats
path: root/src/api/cocoa/event.rs
diff options
context:
space:
mode:
authorPierre Krieger <pierre.krieger1708@gmail.com>2015-04-24 09:51:23 +0200
committerPierre Krieger <pierre.krieger1708@gmail.com>2015-04-24 09:51:23 +0200
commit3ad7f9a58429b02b11b18f6a70ac011f698b6f4b (patch)
tree3061216335701a5faa8bd3c5c9ec0499a357be5a /src/api/cocoa/event.rs
parentc1af76550f311e3da7a08d393b4ea9805cb61a7b (diff)
downloadglutin-3ad7f9a58429b02b11b18f6a70ac011f698b6f4b.tar.gz
glutin-3ad7f9a58429b02b11b18f6a70ac011f698b6f4b.zip
Create reorganization
Diffstat (limited to 'src/api/cocoa/event.rs')
-rw-r--r--src/api/cocoa/event.rs136
1 files changed, 136 insertions, 0 deletions
diff --git a/src/api/cocoa/event.rs b/src/api/cocoa/event.rs
new file mode 100644
index 0000000..31bed10
--- /dev/null
+++ b/src/api/cocoa/event.rs
@@ -0,0 +1,136 @@
+use events;
+
+pub fn vkeycode_to_element(code: u16) -> Option<events::VirtualKeyCode> {
+ Some(match code {
+ 0x00 => events::VirtualKeyCode::A,
+ 0x01 => events::VirtualKeyCode::S,
+ 0x02 => events::VirtualKeyCode::D,
+ 0x03 => events::VirtualKeyCode::F,
+ 0x04 => events::VirtualKeyCode::H,
+ 0x05 => events::VirtualKeyCode::G,
+ 0x06 => events::VirtualKeyCode::Z,
+ 0x07 => events::VirtualKeyCode::X,
+ 0x08 => events::VirtualKeyCode::C,
+ 0x09 => events::VirtualKeyCode::V,
+ //0x0a => World 1,
+ 0x0b => events::VirtualKeyCode::B,
+ 0x0c => events::VirtualKeyCode::Q,
+ 0x0d => events::VirtualKeyCode::W,
+ 0x0e => events::VirtualKeyCode::E,
+ 0x0f => events::VirtualKeyCode::R,
+ 0x10 => events::VirtualKeyCode::Y,
+ 0x11 => events::VirtualKeyCode::T,
+ 0x12 => events::VirtualKeyCode::Key1,
+ 0x13 => events::VirtualKeyCode::Key2,
+ 0x14 => events::VirtualKeyCode::Key3,
+ 0x15 => events::VirtualKeyCode::Key4,
+ 0x16 => events::VirtualKeyCode::Key6,
+ 0x17 => events::VirtualKeyCode::Key5,
+ 0x18 => events::VirtualKeyCode::Equals,
+ 0x19 => events::VirtualKeyCode::Key9,
+ 0x1a => events::VirtualKeyCode::Key7,
+ 0x1b => events::VirtualKeyCode::Minus,
+ 0x1c => events::VirtualKeyCode::Key8,
+ 0x1d => events::VirtualKeyCode::Key0,
+ 0x1e => events::VirtualKeyCode::RBracket,
+ 0x1f => events::VirtualKeyCode::O,
+ 0x20 => events::VirtualKeyCode::U,
+ 0x21 => events::VirtualKeyCode::LBracket,
+ 0x22 => events::VirtualKeyCode::I,
+ 0x23 => events::VirtualKeyCode::P,
+ 0x24 => events::VirtualKeyCode::Return,
+ 0x25 => events::VirtualKeyCode::L,
+ 0x26 => events::VirtualKeyCode::J,
+ 0x27 => events::VirtualKeyCode::Apostrophe,
+ 0x28 => events::VirtualKeyCode::K,
+ 0x29 => events::VirtualKeyCode::Semicolon,
+ 0x2a => events::VirtualKeyCode::Backslash,
+ 0x2b => events::VirtualKeyCode::Comma,
+ 0x2c => events::VirtualKeyCode::Slash,
+ 0x2d => events::VirtualKeyCode::N,
+ 0x2e => events::VirtualKeyCode::M,
+ 0x2f => events::VirtualKeyCode::Period,
+ 0x30 => events::VirtualKeyCode::Tab,
+ 0x31 => events::VirtualKeyCode::Space,
+ 0x32 => events::VirtualKeyCode::Grave,
+ 0x33 => events::VirtualKeyCode::Back,
+ //0x34 => unkown,
+ 0x35 => events::VirtualKeyCode::Escape,
+ 0x36 => events::VirtualKeyCode::RWin,
+ 0x37 => events::VirtualKeyCode::LWin,
+ 0x38 => events::VirtualKeyCode::LShift,
+ //0x39 => Caps lock,
+ //0x3a => Left alt,
+ 0x3b => events::VirtualKeyCode::LControl,
+ 0x3c => events::VirtualKeyCode::RShift,
+ //0x3d => Right alt,
+ 0x3e => events::VirtualKeyCode::RControl,
+ //0x3f => Fn key,
+ //0x40 => F17 Key,
+ 0x41 => events::VirtualKeyCode::Decimal,
+ //0x42 -> unkown,
+ 0x43 => events::VirtualKeyCode::Multiply,
+ //0x44 => unkown,
+ 0x45 => events::VirtualKeyCode::Add,
+ //0x46 => unkown,
+ 0x47 => events::VirtualKeyCode::Numlock,
+ //0x48 => KeypadClear,
+ 0x49 => events::VirtualKeyCode::VolumeUp,
+ 0x4a => events::VirtualKeyCode::VolumeDown,
+ 0x4b => events::VirtualKeyCode::Divide,
+ 0x4c => events::VirtualKeyCode::NumpadEnter,
+ //0x4d => unkown,
+ 0x4e => events::VirtualKeyCode::Subtract,
+ //0x4f => F18 key,
+ //0x50 => F19 Key,
+ 0x51 => events::VirtualKeyCode::NumpadEquals,
+ 0x52 => events::VirtualKeyCode::Numpad0,
+ 0x53 => events::VirtualKeyCode::Numpad1,
+ 0x54 => events::VirtualKeyCode::Numpad2,
+ 0x55 => events::VirtualKeyCode::Numpad3,
+ 0x56 => events::VirtualKeyCode::Numpad4,
+ 0x57 => events::VirtualKeyCode::Numpad5,
+ 0x58 => events::VirtualKeyCode::Numpad6,
+ 0x59 => events::VirtualKeyCode::Numpad7,
+ //0x5a => F20 Key,
+ 0x5b => events::VirtualKeyCode::Numpad8,
+ 0x5c => events::VirtualKeyCode::Numpad9,
+ //0x5d => unkown,
+ //0x5e => unkown,
+ //0x5f => unkown,
+ 0x60 => events::VirtualKeyCode::F5,
+ 0x61 => events::VirtualKeyCode::F6,
+ 0x62 => events::VirtualKeyCode::F7,
+ 0x63 => events::VirtualKeyCode::F3,
+ 0x64 => events::VirtualKeyCode::F8,
+ 0x65 => events::VirtualKeyCode::F9,
+ //0x66 => unkown,
+ 0x67 => events::VirtualKeyCode::F11,
+ //0x68 => unkown,
+ 0x69 => events::VirtualKeyCode::F13,
+ //0x6a => F16 Key,
+ 0x6b => events::VirtualKeyCode::F14,
+ //0x6c => unkown,
+ 0x6d => events::VirtualKeyCode::F10,
+ //0x6e => unkown,
+ 0x6f => events::VirtualKeyCode::F12,
+ //0x70 => unkown,
+ 0x71 => events::VirtualKeyCode::F15,
+ 0x72 => events::VirtualKeyCode::Insert,
+ 0x73 => events::VirtualKeyCode::Home,
+ 0x74 => events::VirtualKeyCode::PageUp,
+ 0x75 => events::VirtualKeyCode::Delete,
+ 0x76 => events::VirtualKeyCode::F4,
+ 0x77 => events::VirtualKeyCode::End,
+ 0x78 => events::VirtualKeyCode::F2,
+ 0x79 => events::VirtualKeyCode::PageDown,
+ 0x7a => events::VirtualKeyCode::F1,
+ 0x7b => events::VirtualKeyCode::Left,
+ 0x7c => events::VirtualKeyCode::Right,
+ 0x7d => events::VirtualKeyCode::Down,
+ 0x7e => events::VirtualKeyCode::Up,
+ //0x7f => unkown,
+
+ _ => return None,
+ })
+}