|
|
|
@ -63,6 +63,7 @@ pub enum Key {
|
|
|
|
|
F12,
|
|
|
|
|
Char(char),
|
|
|
|
|
Ctrl(char),
|
|
|
|
|
Shift(char),
|
|
|
|
|
Alt(char),
|
|
|
|
|
Unkown,
|
|
|
|
|
}
|
|
|
|
@ -103,6 +104,7 @@ impl fmt::Display for Key {
|
|
|
|
|
Key::Char(' ') => write!(f, "<Space>"),
|
|
|
|
|
Key::Alt(c) => write!(f, "<Alt+{}>", c),
|
|
|
|
|
Key::Ctrl(c) => write!(f, "<Ctrl+{}>", c),
|
|
|
|
|
Key::Shift(c) => write!(f, "<Shift+{}>", c),
|
|
|
|
|
Key::Char(c) => write!(f, "{}", c),
|
|
|
|
|
Key::Left | Key::Right | Key::Up | Key::Down => write!(f, "<{:?} Arrow Key>", self),
|
|
|
|
|
Key::Enter
|
|
|
|
@ -193,6 +195,10 @@ impl From<event::KeyEvent> for Key {
|
|
|
|
|
code: event::KeyCode::Char(c),
|
|
|
|
|
modifiers: event::KeyModifiers::CONTROL,
|
|
|
|
|
} => Key::Ctrl(c),
|
|
|
|
|
event::KeyEvent {
|
|
|
|
|
code: event::KeyCode::Char(c),
|
|
|
|
|
modifiers: event::KeyModifiers::SHIFT,
|
|
|
|
|
} => Key::Shift(c),
|
|
|
|
|
|
|
|
|
|
event::KeyEvent {
|
|
|
|
|
code: event::KeyCode::Char(c),
|
|
|
|
|