#[non_exhaustive]pub enum AppEvent<A: Application> {
PingUserInput,
RunIdle(Box<dyn FnOnce(&mut A, Args<'_, A>) + Send + Sync>),
RunIdleSimple(Box<dyn FnOnce() + Send + Sync>),
User(A::UserEvent),
}
Expand description
The main event type to be used with winit::EventLoop
.
It is generic on the Application
type.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
PingUserInput
Calls ping_user_input
on the main window.
RunIdle(Box<dyn FnOnce(&mut A, Args<'_, A>) + Send + Sync>)
Runs the given callback in the main loop idle step, with the regular arguments.
RunIdleSimple(Box<dyn FnOnce() + Send + Sync>)
Runs the given callback in the main loop idle step, without arguments.
User(A::UserEvent)
Sends the custom user event.
Trait Implementations§
Source§impl<A> ApplicationHandler<AppEvent<A>> for AppHandler<A>where
A: Application,
impl<A> ApplicationHandler<AppEvent<A>> for AppHandler<A>where
A: Application,
Source§fn suspended(&mut self, event_loop: &ActiveEventLoop)
fn suspended(&mut self, event_loop: &ActiveEventLoop)
Emitted when the application has been suspended. Read more
Source§fn resumed(&mut self, event_loop: &ActiveEventLoop)
fn resumed(&mut self, event_loop: &ActiveEventLoop)
Emitted when the application has been resumed. Read more
Source§fn window_event(
&mut self,
event_loop: &ActiveEventLoop,
window_id: WindowId,
event: WindowEvent,
)
fn window_event( &mut self, event_loop: &ActiveEventLoop, window_id: WindowId, event: WindowEvent, )
Emitted when the OS sends an event to a winit window.
Source§fn device_event(
&mut self,
event_loop: &ActiveEventLoop,
device_id: DeviceId,
event: DeviceEvent,
)
fn device_event( &mut self, event_loop: &ActiveEventLoop, device_id: DeviceId, event: DeviceEvent, )
Emitted when the OS sends an event to a device.
Source§fn user_event(&mut self, event_loop: &ActiveEventLoop, event: AppEvent<A>)
fn user_event(&mut self, event_loop: &ActiveEventLoop, event: AppEvent<A>)
Emitted when an event is sent from
EventLoopProxy::send_event
.Source§fn new_events(&mut self, _event_loop: &ActiveEventLoop, _cause: StartCause)
fn new_events(&mut self, _event_loop: &ActiveEventLoop, _cause: StartCause)
Emitted when new events arrive from the OS to be processed. Read more
Source§fn about_to_wait(&mut self, _event_loop: &ActiveEventLoop)
fn about_to_wait(&mut self, _event_loop: &ActiveEventLoop)
Emitted when the event loop is about to block and wait for new events. Read more
Source§fn exiting(&mut self, event_loop: &ActiveEventLoop)
fn exiting(&mut self, event_loop: &ActiveEventLoop)
Emitted when the event loop is being shut down. Read more
Source§fn memory_warning(&mut self, event_loop: &ActiveEventLoop)
fn memory_warning(&mut self, event_loop: &ActiveEventLoop)
Emitted when the application has received a memory warning. Read more
Auto Trait Implementations§
impl<A> Freeze for AppEvent<A>
impl<A> !RefUnwindSafe for AppEvent<A>
impl<A> Send for AppEvent<A>
impl<A> Sync for AppEvent<A>
impl<A> Unpin for AppEvent<A>
impl<A> !UnwindSafe for AppEvent<A>
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> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.