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 59)
43fn main() -> Result<(), Box<dyn Error>> {
44 #[cfg(web_platform)]
45 console_error_panic_hook::set_once();
46
47 tracing::init();
48
49 let event_loop = EventLoop::<UserEvent>::with_user_event().build()?;
50 let _event_loop_proxy = event_loop.create_proxy();
51
52 // Wire the user event from another thread.
53 #[cfg(not(web_platform))]
54 std::thread::spawn(move || {
55 // Wake up the `event_loop` once every second and dispatch a custom event
56 // from a different thread.
57 info!("Starting to send user event every second");
58 loop {
59 let _ = _event_loop_proxy.send_event(UserEvent::WakeUp);
60 std::thread::sleep(std::time::Duration::from_secs(1));
61 }
62 });
63
64 let mut state = Application::new(&event_loop);
65
66 event_loop.run_app(&mut state).map_err(Into::into)
67}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> UnsafeUnpin 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