Trait piston_window::prelude::GenericEvent
source · pub trait GenericEvent: Sized + AfterRenderEvent + CloseEvent + ControllerAxisEvent + CursorEvent + FocusEvent + IdleEvent + MouseCursorEvent + MouseRelativeEvent + MouseScrollEvent + ButtonEvent + PressEvent + ReleaseEvent + RenderEvent + ResizeEvent + TextEvent + TouchEvent + UpdateEvent + From<Input> + From<Loop> + Into<Option<Input>> + Into<Option<Loop>> {
// Required methods
fn event_id(&self) -> EventId;
fn with_args<F, U>(&self, f: F) -> U
where F: FnMut(&(dyn Any + 'static)) -> U;
fn time_stamp(&self) -> Option<u32>;
}
Expand description
Implemented by all events.
Use this trait when you need to handle events, e.g. fn event(&mut self, e: &impl GenericEvent)
.
Events are usually handles by controllers (in the Model-View-Controller programming pattern).
There is no requirement that you need to implement some trait for controllers,
just that the standard convention for handling events is through a event
method.
For more information about Model-View-Controller, see Wikipedia article.
This trait makes it possible to auto impl new events for all types that implements GenericEvent
.
This way, you can define your own event types without breaking compatibility with Piston.
Required Methods§
sourcefn time_stamp(&self) -> Option<u32>
fn time_stamp(&self) -> Option<u32>
Gets the time stamp of this event.
Measured in milliseconds since initialization of window.
Object Safety§
This trait is not object safe.