summaryrefslogtreecommitdiffstats
path: root/src/input/button_state.rs
blob: e62c14e3854928c04abbb58cfdd51abbacb8ef98 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/// The state of a button.
#[derive(Debug, Hash, Ord, PartialOrd, PartialEq, Eq, Clone, Copy)]
pub enum ButtonState {
    /// The button is pressed.
    Pressed,

    /// The button is __not__ pressed.
    Released,
}

#[cfg(feature = "winit")]
mod winit_conversion {
    use winit::event::ElementState;

    impl From<ElementState> for super::ButtonState {
        fn from(element_state: ElementState) -> Self {
            match element_state {
                ElementState::Pressed => super::ButtonState::Pressed,
                ElementState::Released => super::ButtonState::Released,
            }
        }
    }
}