pub struct Listen;Expand description
Global input listener for monitoring events.
This provides a way to observe keyboard and mouse actions without blocking them.
§Example
use raw_input::{Listen, Event};
// It must be started first
// Core::start(); // This is a blocking operation
// Start listening to all input
Listen::start(); // defaults to listening to all input
// customizable
// Listen::mouse_move(true);
// Listen::mouse_wheel(true);
// Listen::mouse_button(true);
// Listen::keyboard(true);
// Subscribe to all global input events
let handle = Listen::subscribe(|event| {
match event {
Event::KeyDown { key } => println!("Key pressed: {:?}", key),
Event::MouseMove { delta } => println!("Mouse delta: {:?}", delta),
_ => {},
}
});
// Use handle.pause(), handle.resume(), or handle.unsubscribe() to manage the lifecycle.
Listen::stop();Auto Trait Implementations§
impl Freeze for Listen
impl RefUnwindSafe for Listen
impl Send for Listen
impl Sync for Listen
impl Unpin for Listen
impl UnwindSafe for Listen
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