pub struct EventLoopProxy<T: 'static> { /* private fields */ }Expand description
Used to send custom events to EventLoop.
Implementations§
Source§impl<T: 'static> EventLoopProxy<T>
impl<T: 'static> EventLoopProxy<T>
Sourcepub fn send_event(&self, event: T) -> Result<(), EventLoopClosed<T>>
pub fn send_event(&self, event: T) -> Result<(), EventLoopClosed<T>>
Send an event to the EventLoop from which this proxy was created. This emits a
UserEvent(event) event in the event loop, where event is the value passed to this
function.
Returns an Err if the associated EventLoop no longer exists.
Examples found in repository?
examples/window.rs (line 57)
41fn main() -> Result<(), Box<dyn Error>> {
42 #[cfg(web_platform)]
43 console_error_panic_hook::set_once();
44
45 tracing::init();
46
47 let event_loop = EventLoop::<UserEvent>::with_user_event().build()?;
48 let _event_loop_proxy = event_loop.create_proxy();
49
50 // Wire the user event from another thread.
51 #[cfg(not(web_platform))]
52 std::thread::spawn(move || {
53 // Wake up the `event_loop` once every second and dispatch a custom event
54 // from a different thread.
55 info!("Starting to send user event every second");
56 loop {
57 let _ = _event_loop_proxy.send_event(UserEvent::WakeUp);
58 std::thread::sleep(std::time::Duration::from_secs(1));
59 }
60 });
61
62 let mut state = Application::new(&event_loop);
63
64 event_loop.run_app(&mut state).map_err(Into::into)
65}Trait Implementations§
Source§impl<T: 'static> Clone for EventLoopProxy<T>
impl<T: 'static> Clone for EventLoopProxy<T>
Auto Trait Implementations§
impl<T> Freeze for EventLoopProxy<T>
impl<T> RefUnwindSafe for EventLoopProxy<T>
impl<T> Send for EventLoopProxy<T>where
T: Send,
impl<T> Sync for EventLoopProxy<T>where
T: Send,
impl<T> Unpin for EventLoopProxy<T>
impl<T> UnwindSafe for EventLoopProxy<T>
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