[−][src]Enum sdl2::event::Event
Different event types.
Variants
Fields of Quit
timestamp: u32
Fields of AppTerminating
timestamp: u32
Fields of AppLowMemory
timestamp: u32
Fields of AppWillEnterBackground
timestamp: u32
Fields of AppDidEnterBackground
timestamp: u32
Fields of AppWillEnterForeground
timestamp: u32
Fields of AppDidEnterForeground
timestamp: u32
Fields of Window
Fields of KeyDown
Fields of KeyUp
Fields of MouseMotion
Fields of MouseButtonDown
Fields of MouseButtonUp
Fields of MouseWheel
Fields of ControllerAxisMotion
Fields of FingerDown
Fields of FingerMotion
Fields of DollarGesture
Fields of DollarRecord
Fields of MultiGesture
Fields of ClipboardUpdate
timestamp: u32
Fields of RenderTargetsReset
timestamp: u32
Fields of RenderDeviceReset
timestamp: u32
Methods
impl Event
[src]
pub fn is_user_event(&self) -> bool
[src]
pub fn as_user_event_type<T: Any>(&self) -> Option<T>
[src]
pub fn is_same_kind_as(&self, other: &Event) -> bool
[src]
Returns true
if they are the same "kind" of events.
Example:
use sdl2::event::Event; let ev1 = Event::JoyButtonDown { timestamp: 0, which: 0, button_idx: 0, }; let ev2 = Event::JoyButtonDown { timestamp: 1, which: 1, button_idx: 1, }; assert!(ev1 != ev2); // The events aren't equal (they contain different values). assert!(ev1.is_same_kind_as(&ev2)); // But they are of the same kind!
pub fn get_timestamp(&self) -> u32
[src]
Returns the timestamp
field of the event.
Example
use sdl2::event::Event; let ev = Event::JoyButtonDown { timestamp: 12, which: 0, button_idx: 0, }; assert!(ev.get_timestamp() == 12);
pub fn get_window_id(&self) -> Option<u32>
[src]
Returns the window_id
field of the event if it's present (not all events have it!).
Example
use sdl2::event::Event; let ev = Event::JoyButtonDown { timestamp: 0, which: 0, button_idx: 0, }; assert!(ev.get_window_id() == None); let another_ev = Event::DropBegin { timestamp: 0, window_id: 3, }; assert!(another_ev.get_window_id() == Some(3));
pub fn is_window(&self) -> bool
[src]
Returns true
if this is a window event.
Example
use sdl2::event::Event; let ev = Event::Quit { timestamp: 0, }; assert!(ev.is_window()); let ev = Event::AppLowMemory { timestamp: 0, }; assert!(ev.is_window()); let another_ev = Event::TextInput { timestamp: 0, window_id: 0, text: String::new(), }; assert!(another_ev.is_window() == false); // Not a window event!
pub fn is_keyboard(&self) -> bool
[src]
Returns true
if this is a keyboard event.
Example
use sdl2::event::Event; use sdl2::keyboard::Mod; let ev = Event::KeyDown { timestamp: 0, window_id: 0, keycode: None, scancode: None, keymod: Mod::empty(), repeat: false, }; assert!(ev.is_keyboard()); let another_ev = Event::Quit { timestamp: 0, }; assert!(another_ev.is_keyboard() == false); // Not a keyboard event!
pub fn is_text(&self) -> bool
[src]
Returns true
if this is a text event.
Example
use sdl2::event::Event; let ev = Event::TextInput { timestamp: 0, window_id: 0, text: String::new(), }; assert!(ev.is_text()); let another_ev = Event::Quit { timestamp: 0, }; assert!(another_ev.is_text() == false); // Not a text event!
pub fn is_mouse(&self) -> bool
[src]
Returns true
if this is a mouse event.
Example
use sdl2::event::Event; use sdl2::mouse::MouseWheelDirection; let ev = Event::MouseWheel { timestamp: 0, window_id: 0, which: 0, x: 0, y: 0, direction: MouseWheelDirection::Normal, }; assert!(ev.is_mouse()); let another_ev = Event::Quit { timestamp: 0, }; assert!(another_ev.is_mouse() == false); // Not a mouse event!
pub fn is_controller(&self) -> bool
[src]
Returns true
if this is a controller event.
Example
use sdl2::event::Event; let ev = Event::ControllerDeviceAdded { timestamp: 0, which: 0, }; assert!(ev.is_controller()); let another_ev = Event::Quit { timestamp: 0, }; assert!(another_ev.is_controller() == false); // Not a controller event!
pub fn is_joy(&self) -> bool
[src]
Returns true
if this is a joy event.
Example
use sdl2::event::Event; let ev = Event::JoyButtonUp { timestamp: 0, which: 0, button_idx: 0, }; assert!(ev.is_joy()); let another_ev = Event::Quit { timestamp: 0, }; assert!(another_ev.is_joy() == false); // Not a joy event!
pub fn is_finger(&self) -> bool
[src]
Returns true
if this is a finger event.
Example
use sdl2::event::Event; let ev = Event::FingerMotion { timestamp: 0, touch_id: 0, finger_id: 0, x: 0., y: 0., dx: 0., dy: 0., pressure: 0., }; assert!(ev.is_finger()); let another_ev = Event::Quit { timestamp: 0, }; assert!(another_ev.is_finger() == false); // Not a finger event!
pub fn is_dollar(&self) -> bool
[src]
Returns true
if this is a dollar event.
Example
use sdl2::event::Event; let ev = Event::DollarGesture { timestamp: 0, touch_id: 0, gesture_id: 0, num_fingers: 0, error: 0., x: 0., y: 0., }; assert!(ev.is_dollar()); let another_ev = Event::Quit { timestamp: 0, }; assert!(another_ev.is_dollar() == false); // Not a dollar event!
pub fn is_drop(&self) -> bool
[src]
Returns true
if this is a drop event.
Example
use sdl2::event::Event; let ev = Event::DropBegin { timestamp: 0, window_id: 3, }; assert!(ev.is_drop()); let another_ev = Event::Quit { timestamp: 0, }; assert!(another_ev.is_drop() == false); // Not a drop event!
pub fn is_audio(&self) -> bool
[src]
Returns true
if this is an audio event.
Example
use sdl2::event::Event; let ev = Event::AudioDeviceAdded { timestamp: 0, which: 3, iscapture: false, }; assert!(ev.is_audio()); let another_ev = Event::Quit { timestamp: 0, }; assert!(another_ev.is_audio() == false); // Not an audio event!
pub fn is_render(&self) -> bool
[src]
Returns true
if this is a render event.
Example
use sdl2::event::Event; let ev = Event::RenderTargetsReset { timestamp: 0, }; assert!(ev.is_render()); let another_ev = Event::Quit { timestamp: 0, }; assert!(another_ev.is_render() == false); // Not a render event!
pub fn is_user(&self) -> bool
[src]
Returns true
if this is a user event.
Example
use sdl2::event::Event; let ev = Event::User { timestamp: 0, window_id: 0, type_: 0, code: 0, data1: ::std::ptr::null_mut(), data2: ::std::ptr::null_mut(), }; assert!(ev.is_user()); let another_ev = Event::Quit { timestamp: 0, }; assert!(another_ev.is_user() == false); // Not a user event!
pub fn is_unknown(&self) -> bool
[src]
Returns true
if this is an unknown event.
Example
use sdl2::event::Event; let ev = Event::Unknown { timestamp: 0, type_: 0, }; assert!(ev.is_unknown()); let another_ev = Event::Quit { timestamp: 0, }; assert!(another_ev.is_unknown() == false); // Not an unknown event!
Trait Implementations
impl Clone for Event
[src]
impl Debug for Event
[src]
impl PartialEq<Event> for Event
[src]
impl Send for Event
[src]
This does not auto-derive because User
's data
fields can be used to
store pointers to types that are !Send
. Dereferencing these as pointers
requires using unsafe
and ensuring your own safety guarantees.
impl StructuralPartialEq for Event
[src]
impl Sync for Event
[src]
This does not auto-derive because User
's data
fields can be used to
store pointers to types that are !Sync
. Dereferencing these as pointers
requires using unsafe
and ensuring your own safety guarantees.
Auto Trait Implementations
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,