[−][src]Struct azul_core::window::KeyboardState
Determines which keys are pressed currently (modifiers, etc.)
Fields
shift_down: bool
Tracks, if the Shift
key is currently pressed - (READONLY)
ctrl_down: bool
Tracks, if the Ctrl
key is currently pressed - (READONLY)
alt_down: bool
Tracks, if the Alt
key is currently pressed - (READONLY)
super_down: bool
Tracks, if the Super / Windows / Command
key is currently pressed - (READONLY)
current_char: Option<char>
Currently pressed key, already converted to a char
- (READONLY)
current_virtual_keycode: Option<VirtualKeyCode>
Same as current_char
, but .
DO NOT USE THIS FOR TEXT INPUT, USE current_char
and On::TextInput
instead.
For example entering à
will fire a VirtualKeyCode::Grave
, then VirtualKeyCode::A
,
so to correctly combine characters, use the current_char
field.
pressed_virtual_keycodes: HashSet<VirtualKeyCode>
Currently pressed virtual keycodes (READONLY) - it can happen that more t
This is essentially an "extension" of current_scancodes
- current_keys
stores the characters, but what if the
pressed key is not a character (such as ArrowRight
or PgUp
)?
Note that this can have an overlap, so pressing "a" on the keyboard will insert
both a VirtualKeyCode::A
into current_virtual_keycodes
and an "a"
as a char into current_keys
.
pressed_scancodes: HashSet<ScanCode>
Same as current_virtual_keycodes
, but the scancode identifies the physical key pressed,
independent of the keyboard layout. The scancode does not change if the user adjusts the host's keyboard map.
Use when the physical location of the key is more important than the key's host GUI semantics,
such as for movement controls in a first-person game (German keyboard: Z key, UK keyboard: Y key, etc.)
Trait Implementations
impl Clone for KeyboardState
[src]
fn clone(&self) -> KeyboardState
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for KeyboardState
[src]
impl Default for KeyboardState
[src]
fn default() -> KeyboardState
[src]
impl PartialEq<KeyboardState> for KeyboardState
[src]
fn eq(&self, other: &KeyboardState) -> bool
[src]
fn ne(&self, other: &KeyboardState) -> bool
[src]
impl StructuralPartialEq for KeyboardState
[src]
Auto Trait Implementations
impl RefUnwindSafe for KeyboardState
impl Send for KeyboardState
impl Sync for KeyboardState
impl Unpin for KeyboardState
impl UnwindSafe for KeyboardState
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,