pub struct KeyState {
pub pressed: bool,
pub shift: bool,
pub ctrl: bool,
pub alt: bool,
pub vkey: Option<VirtualKeyCode>,
pub code: Option<char>,
}
Expand description
Can provide information about a key press or release, and will maintain the current state of shift modifiers at all time.
Fields§
§pressed: bool
If KeyState::vkey
is not None
, this will be true if the key was
pressed, otherwise it was released.
shift: bool
True if either shift key is being held down.
ctrl: bool
True if either ctrl key is being held down.
alt: bool
True if the alt key is being held down.
vkey: Option<VirtualKeyCode>
If a key has been pressed or released, this will contains its virtual
key code as defined by the winit
crate.
code: Option<char>
[NOT IMPLEMENTED YET] If a key was pressed, and is mappable to a character, this will contain the character.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for KeyState
impl RefUnwindSafe for KeyState
impl Send for KeyState
impl Sync for KeyState
impl Unpin for KeyState
impl UnwindSafe for KeyState
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more