Skip to main content

devela/ui/event/key/
state.rs

1// devela/src/ui/event/key/state.rs
2//
3//! Defines [`KeyState`].
4//
5
6use crate::ConstInit;
7
8#[doc = crate::_tags!(interaction)]
9/// Represents the state of a [`Key`][crate::Key].
10#[doc = crate::_doc_meta!{location("ui/event")}]
11#[repr(u8)]
12#[derive(Clone, Copy, Debug, Default, PartialEq, Eq, Hash)]
13pub enum KeyState {
14    /// The key was pressed.
15    #[default]
16    Press,
17    /// The key was released.
18    Release,
19    /// The key was repeated.
20    Repeat,
21}
22impl ConstInit for KeyState {
23    const INIT: Self = Self::Press;
24}