[−][src]Enum sdl2::event::Event
Different event types.
Variants
Fields of Quit
timestamp: u32Fields of AppTerminating
timestamp: u32Fields of AppLowMemory
timestamp: u32Fields of AppWillEnterBackground
timestamp: u32Fields of AppDidEnterBackground
timestamp: u32Fields of AppWillEnterForeground
timestamp: u32Fields of AppDidEnterForeground
timestamp: u32Fields 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: u32Fields of RenderTargetsReset
timestamp: u32Fields of RenderDeviceReset
timestamp: u32Methods
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>,