Files
managarr/src/app/key_binding.rs
2023-08-08 10:50:04 -06:00

35 lines
607 B
Rust

use crate::event::Key;
macro_rules! generate_keybindings {
($($field:ident),+) => {
pub struct KeyBindings {
$(pub $field: KeyBinding),+
}
};
}
generate_keybindings! {
quit,
up,
down
}
pub struct KeyBinding {
pub key: Key,
pub desc: &'static str
}
pub const DEFAULT_KEYBINDINGS: KeyBindings = KeyBindings {
quit: KeyBinding {
key: Key::Char('q'),
desc: "Quit",
},
up: KeyBinding {
key: Key::Up,
desc: "Scroll up"
},
down: KeyBinding {
key: Key::Down,
desc: "Scroll down"
}
};