input-actions 0.1.1

An input system for binding PC & Gamepad inputs to application actions
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use crate::device::GamepadKind;

#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
pub(crate) enum Id {
	Mouse,
	Keyboard,
	Gamepad(GamepadKind, gilrs::GamepadId),
}

impl std::fmt::Display for Id {
	fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
		match *self {
			Id::Mouse => write!(f, "Mouse"),
			Id::Keyboard => write!(f, "Keyboard"),
			Id::Gamepad(kind, id) => write!(f, "Gamepad({:?}, {})", kind, id),
		}
	}
}