Struct EventPump
pub struct EventPump { /* private fields */ }
dep_sdl2
only.Expand description
A type that encapsulates SDL event-pumping functions.
Implementations§
§impl EventPump
impl EventPump
pub fn is_event_enabled(&self, event_type: EventType) -> bool
pub fn is_event_enabled(&self, event_type: EventType) -> bool
Query if an event type is enabled.
pub fn enable_event(&mut self, event_type: EventType) -> bool
pub fn enable_event(&mut self, event_type: EventType) -> bool
Enable an event type. Returns if the event type was enabled before the call.
pub fn disable_event(&mut self, event_type: EventType) -> bool
pub fn disable_event(&mut self, event_type: EventType) -> bool
Disable an event type. Returns if the event type was enabled before the call.
pub fn poll_event(&mut self) -> Option<Event> ⓘ
pub fn poll_event(&mut self) -> Option<Event> ⓘ
Polls for currently pending events.
If no events are pending, None
is returned.
pub fn poll_iter(&mut self) -> EventPollIterator<'_> ⓘ
pub fn poll_iter(&mut self) -> EventPollIterator<'_> ⓘ
Returns a polling iterator that calls poll_event()
.
The iterator will terminate once there are no more pending events.
§Example
let sdl_context = sdl2::init().unwrap();
let mut event_pump = sdl_context.event_pump().unwrap();
for event in event_pump.poll_iter() {
use sdl2::event::Event;
match event {
Event::KeyDown {..} => { /*...*/ }
_ => ()
}
}
pub fn pump_events(&mut self)
pub fn pump_events(&mut self)
Pumps the event loop, gathering events from the input devices.
pub fn wait_event(&mut self) -> Event
pub fn wait_event(&mut self) -> Event
Waits indefinitely for the next available event.
pub fn wait_event_timeout(&mut self, timeout: u32) -> Option<Event> ⓘ
pub fn wait_event_timeout(&mut self, timeout: u32) -> Option<Event> ⓘ
Waits until the specified timeout (in milliseconds) for the next available event.
pub fn wait_iter(&mut self) -> EventWaitIterator<'_> ⓘ
pub fn wait_iter(&mut self) -> EventWaitIterator<'_> ⓘ
Returns a waiting iterator that calls wait_event()
.
Note: The iterator will never terminate.
pub fn wait_timeout_iter(
&mut self,
timeout: u32,
) -> EventWaitTimeoutIterator<'_> ⓘ
pub fn wait_timeout_iter( &mut self, timeout: u32, ) -> EventWaitTimeoutIterator<'_> ⓘ
Returns a waiting iterator that calls wait_event_timeout()
.
Note: The iterator will never terminate, unless waiting for an event exceeds the specified timeout.
pub fn keyboard_state(&self) -> KeyboardState<'_>
pub fn mouse_state(&self) -> MouseState
pub fn relative_mouse_state(&self) -> RelativeMouseState
Trait Implementations§
Auto Trait Implementations§
impl Freeze for EventPump
impl RefUnwindSafe for EventPump
impl !Send for EventPump
impl Sync for EventPump
impl Unpin for EventPump
impl UnwindSafe for EventPump
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
Source§impl<T> ByteSized for T
impl<T> ByteSized for T
Source§const BYTE_ALIGN: usize = _
const BYTE_ALIGN: usize = _
Source§fn byte_align(&self) -> usize
fn byte_align(&self) -> usize
Source§fn ptr_size_ratio(&self) -> [usize; 2]
fn ptr_size_ratio(&self) -> [usize; 2]
Source§impl<T, R> Chain<R> for Twhere
T: ?Sized,
impl<T, R> Chain<R> for Twhere
T: ?Sized,
Source§impl<T> ExtAny for T
impl<T> ExtAny for T
Source§fn type_hash_with<H: Hasher>(&self, hasher: H) -> u64
fn type_hash_with<H: Hasher>(&self, hasher: H) -> u64
TypeId
of Self
using a custom hasher.Source§fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
Source§impl<T> ExtMem for Twhere
T: ?Sized,
impl<T> ExtMem for Twhere
T: ?Sized,
Source§const NEEDS_DROP: bool = _
const NEEDS_DROP: bool = _
Source§fn mem_align_of<T>() -> usize
fn mem_align_of<T>() -> usize
Source§fn mem_align_of_val(&self) -> usize
fn mem_align_of_val(&self) -> usize
Source§fn mem_size_of<T>() -> usize
fn mem_size_of<T>() -> usize
Source§fn mem_size_of_val(&self) -> usize
fn mem_size_of_val(&self) -> usize
Source§fn mem_needs_drop(&self) -> bool
fn mem_needs_drop(&self) -> bool
true
if dropping values of this type matters. Read moreSource§fn mem_forget(self)where
Self: Sized,
fn mem_forget(self)where
Self: Sized,
self
without running its destructor. Read moreSource§fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
Source§unsafe fn mem_zeroed<T>() -> T
unsafe fn mem_zeroed<T>() -> T
unsafe_layout
only.T
represented by the all-zero byte-pattern. Read moreSource§unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe_layout
only.T
represented by the all-zero byte-pattern. Read moreSource§fn mem_as_bytes(&self) -> &[u8] ⓘ
fn mem_as_bytes(&self) -> &[u8] ⓘ
unsafe_slice
only.§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> Hook for T
impl<T> Hook for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more