sdl2-2.2.0: Both high- and low-level bindings to the SDL library (version 2.0.4+).

Safe HaskellNone
LanguageHaskell2010

SDL.Event

Contents

Description

SDL.Event exports an interface for working with the SDL event model. Event handling allows your application to receive input from the user. Internally, SDL stores all the events waiting to be handled in an event queue. Using functions like pollEvent and waitEvent you can observe and handle waiting input events.

The event queue itself is composed of a series of Event values, one for each waiting event. Event values are read from the queue with the pollEvent function and it is then up to the application to process the information stored with them.

Synopsis

Polling events

pollEvent :: MonadIO m => m (Maybe Event) #

Poll for currently pending events. You can only call this function in the thread that set the video mode.

pollEvents :: (Functor m, MonadIO m) => m [Event] #

Clear the event queue by polling for all pending events.

mapEvents :: MonadIO m => (Event -> m ()) -> m () #

Run a monadic computation, accumulating over all known Events.

This can be useful when used with a state monad, allowing you to fold all events together.

pumpEvents :: MonadIO m => m () #

Pump the event loop, gathering events from the input devices.

This function updates the event queue and internal input device state.

This should only be run in the thread that initialized the video subsystem, and for extra safety, you should consider only doing those things on the main thread in any case.

pumpEvents gathers all the pending input information from devices and places it in the event queue. Without calls to pumpEvents no events would ever be placed on the queue. Often the need for calls to pumpEvents is hidden from the user since pollEvent and waitEvent implicitly call pumpEvents. However, if you are not polling or waiting for events (e.g. you are filtering them), then you must call pumpEvents to force an event queue update.

See SDL_PumpEvents for C documentation.

waitEvent :: MonadIO m => m Event #

Wait indefinitely for the next available event.

waitEventTimeout #

Arguments

:: MonadIO m 
=> CInt

The maximum amount of time to wait, in milliseconds.

-> m (Maybe Event) 

Wait until the specified timeout for the next available amount.

Event data

data Event #

A single SDL event. This event occured at eventTimestamp and carries data under eventPayload.

Constructors

Event 

Fields

Instances

Eq Event # 

Methods

(==) :: Event -> Event -> Bool #

(/=) :: Event -> Event -> Bool #

Ord Event # 

Methods

compare :: Event -> Event -> Ordering #

(<) :: Event -> Event -> Bool #

(<=) :: Event -> Event -> Bool #

(>) :: Event -> Event -> Bool #

(>=) :: Event -> Event -> Bool #

max :: Event -> Event -> Event #

min :: Event -> Event -> Event #

Show Event # 

Methods

showsPrec :: Int -> Event -> ShowS #

show :: Event -> String #

showList :: [Event] -> ShowS #

Generic Event # 

Associated Types

type Rep Event :: * -> * #

Methods

from :: Event -> Rep Event x #

to :: Rep Event x -> Event #

type Rep Event # 
type Rep Event = D1 (MetaData "Event" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "Event" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "eventTimestamp") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Word32)) (S1 (MetaSel (Just Symbol "eventPayload") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 EventPayload))))

data EventPayload #

An enumeration of all possible SDL event types. This data type pairs up event types with their payload, where possible.

Constructors

WindowShownEvent !WindowShownEventData 
WindowHiddenEvent !WindowHiddenEventData 
WindowExposedEvent !WindowExposedEventData 
WindowMovedEvent !WindowMovedEventData 
WindowResizedEvent !WindowResizedEventData 
WindowSizeChangedEvent !WindowSizeChangedEventData 
WindowMinimizedEvent !WindowMinimizedEventData 
WindowMaximizedEvent !WindowMaximizedEventData 
WindowRestoredEvent !WindowRestoredEventData 
WindowGainedMouseFocusEvent !WindowGainedMouseFocusEventData 
WindowLostMouseFocusEvent !WindowLostMouseFocusEventData 
WindowGainedKeyboardFocusEvent !WindowGainedKeyboardFocusEventData 
WindowLostKeyboardFocusEvent !WindowLostKeyboardFocusEventData 
WindowClosedEvent !WindowClosedEventData 
KeyboardEvent !KeyboardEventData 
TextEditingEvent !TextEditingEventData 
TextInputEvent !TextInputEventData 
KeymapChangedEvent 
MouseMotionEvent !MouseMotionEventData 
MouseButtonEvent !MouseButtonEventData 
MouseWheelEvent !MouseWheelEventData 
JoyAxisEvent !JoyAxisEventData 
JoyBallEvent !JoyBallEventData 
JoyHatEvent !JoyHatEventData 
JoyButtonEvent !JoyButtonEventData 
JoyDeviceEvent !JoyDeviceEventData 
ControllerAxisEvent !ControllerAxisEventData 
ControllerButtonEvent !ControllerButtonEventData 
ControllerDeviceEvent !ControllerDeviceEventData 
AudioDeviceEvent !AudioDeviceEventData 
QuitEvent 
UserEvent !UserEventData 
SysWMEvent !SysWMEventData 
TouchFingerEvent !TouchFingerEventData 
MultiGestureEvent !MultiGestureEventData 
DollarGestureEvent !DollarGestureEventData 
DropEvent !DropEventData 
ClipboardUpdateEvent 
UnknownEvent !UnknownEventData 

Instances

Eq EventPayload # 
Ord EventPayload # 
Show EventPayload # 
Generic EventPayload # 

Associated Types

type Rep EventPayload :: * -> * #

type Rep EventPayload # 
type Rep EventPayload = D1 (MetaData "EventPayload" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) ((:+:) ((:+:) ((:+:) ((:+:) ((:+:) (C1 (MetaCons "WindowShownEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 WindowShownEventData))) (C1 (MetaCons "WindowHiddenEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 WindowHiddenEventData)))) ((:+:) (C1 (MetaCons "WindowExposedEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 WindowExposedEventData))) (C1 (MetaCons "WindowMovedEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 WindowMovedEventData))))) ((:+:) ((:+:) (C1 (MetaCons "WindowResizedEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 WindowResizedEventData))) (C1 (MetaCons "WindowSizeChangedEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 WindowSizeChangedEventData)))) ((:+:) (C1 (MetaCons "WindowMinimizedEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 WindowMinimizedEventData))) ((:+:) (C1 (MetaCons "WindowMaximizedEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 WindowMaximizedEventData))) (C1 (MetaCons "WindowRestoredEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 WindowRestoredEventData))))))) ((:+:) ((:+:) ((:+:) (C1 (MetaCons "WindowGainedMouseFocusEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 WindowGainedMouseFocusEventData))) (C1 (MetaCons "WindowLostMouseFocusEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 WindowLostMouseFocusEventData)))) ((:+:) (C1 (MetaCons "WindowGainedKeyboardFocusEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 WindowGainedKeyboardFocusEventData))) ((:+:) (C1 (MetaCons "WindowLostKeyboardFocusEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 WindowLostKeyboardFocusEventData))) (C1 (MetaCons "WindowClosedEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 WindowClosedEventData)))))) ((:+:) ((:+:) (C1 (MetaCons "KeyboardEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 KeyboardEventData))) (C1 (MetaCons "TextEditingEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 TextEditingEventData)))) ((:+:) (C1 (MetaCons "TextInputEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 TextInputEventData))) ((:+:) (C1 (MetaCons "KeymapChangedEvent" PrefixI False) U1) (C1 (MetaCons "MouseMotionEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 MouseMotionEventData)))))))) ((:+:) ((:+:) ((:+:) ((:+:) (C1 (MetaCons "MouseButtonEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 MouseButtonEventData))) (C1 (MetaCons "MouseWheelEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 MouseWheelEventData)))) ((:+:) (C1 (MetaCons "JoyAxisEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 JoyAxisEventData))) ((:+:) (C1 (MetaCons "JoyBallEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 JoyBallEventData))) (C1 (MetaCons "JoyHatEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 JoyHatEventData)))))) ((:+:) ((:+:) (C1 (MetaCons "JoyButtonEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 JoyButtonEventData))) (C1 (MetaCons "JoyDeviceEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 JoyDeviceEventData)))) ((:+:) (C1 (MetaCons "ControllerAxisEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ControllerAxisEventData))) ((:+:) (C1 (MetaCons "ControllerButtonEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ControllerButtonEventData))) (C1 (MetaCons "ControllerDeviceEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 ControllerDeviceEventData))))))) ((:+:) ((:+:) ((:+:) (C1 (MetaCons "AudioDeviceEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 AudioDeviceEventData))) (C1 (MetaCons "QuitEvent" PrefixI False) U1)) ((:+:) (C1 (MetaCons "UserEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 UserEventData))) ((:+:) (C1 (MetaCons "SysWMEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 SysWMEventData))) (C1 (MetaCons "TouchFingerEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 TouchFingerEventData)))))) ((:+:) ((:+:) (C1 (MetaCons "MultiGestureEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 MultiGestureEventData))) (C1 (MetaCons "DollarGestureEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 DollarGestureEventData)))) ((:+:) (C1 (MetaCons "DropEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 DropEventData))) ((:+:) (C1 (MetaCons "ClipboardUpdateEvent" PrefixI False) U1) (C1 (MetaCons "UnknownEvent" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 UnknownEventData)))))))))

Window events

data WindowShownEventData #

A window has been shown.

Constructors

WindowShownEventData 

Fields

data WindowHiddenEventData #

A window has been hidden.

Constructors

WindowHiddenEventData 

Fields

data WindowExposedEventData #

A part of a window has been exposed - where exposure means to become visible (for example, an overlapping window no longer overlaps with the window).

Constructors

WindowExposedEventData 

Fields

data WindowMovedEventData #

A Window has been moved.

Constructors

WindowMovedEventData 

Fields

Instances

Eq WindowMovedEventData # 
Ord WindowMovedEventData # 
Show WindowMovedEventData # 
Generic WindowMovedEventData # 
type Rep WindowMovedEventData # 
type Rep WindowMovedEventData = D1 (MetaData "WindowMovedEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "WindowMovedEventData" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "windowMovedEventWindow") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Window)) (S1 (MetaSel (Just Symbol "windowMovedEventPosition") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Point V2 Int32)))))

data WindowResizedEventData #

Window has been resized. This is event is always preceded by WindowSizeChangedEvent.

Constructors

WindowResizedEventData 

Fields

Instances

Eq WindowResizedEventData # 
Ord WindowResizedEventData # 
Show WindowResizedEventData # 
Generic WindowResizedEventData # 
type Rep WindowResizedEventData # 
type Rep WindowResizedEventData = D1 (MetaData "WindowResizedEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "WindowResizedEventData" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "windowResizedEventWindow") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Window)) (S1 (MetaSel (Just Symbol "windowResizedEventSize") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (V2 Int32)))))

data WindowSizeChangedEventData #

The window size has changed, either as a result of an API call or through the system or user changing the window size; this event is followed by WindowResizedEvent if the size was changed by an external event, i.e. the user or the window manager.

Instances

Eq WindowSizeChangedEventData # 
Ord WindowSizeChangedEventData # 
Show WindowSizeChangedEventData # 
Generic WindowSizeChangedEventData # 
type Rep WindowSizeChangedEventData # 
type Rep WindowSizeChangedEventData = D1 (MetaData "WindowSizeChangedEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "WindowSizeChangedEventData" PrefixI True) (S1 (MetaSel (Just Symbol "windowSizeChangedEventWindow") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Window)))

data WindowMinimizedEventData #

The window has been minimized.

Instances

Eq WindowMinimizedEventData # 
Ord WindowMinimizedEventData # 
Show WindowMinimizedEventData # 
Generic WindowMinimizedEventData # 
type Rep WindowMinimizedEventData # 
type Rep WindowMinimizedEventData = D1 (MetaData "WindowMinimizedEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "WindowMinimizedEventData" PrefixI True) (S1 (MetaSel (Just Symbol "windowMinimizedEventWindow") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Window)))

data WindowMaximizedEventData #

The window has been maximized.

Instances

Eq WindowMaximizedEventData # 
Ord WindowMaximizedEventData # 
Show WindowMaximizedEventData # 
Generic WindowMaximizedEventData # 
type Rep WindowMaximizedEventData # 
type Rep WindowMaximizedEventData = D1 (MetaData "WindowMaximizedEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "WindowMaximizedEventData" PrefixI True) (S1 (MetaSel (Just Symbol "windowMaximizedEventWindow") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Window)))

data WindowRestoredEventData #

The window has been restored to normal size and position.

Constructors

WindowRestoredEventData 

Fields

data WindowGainedMouseFocusEventData #

The window has gained mouse focus.

Instances

Eq WindowGainedMouseFocusEventData # 
Ord WindowGainedMouseFocusEventData # 
Show WindowGainedMouseFocusEventData # 
Generic WindowGainedMouseFocusEventData # 
type Rep WindowGainedMouseFocusEventData # 
type Rep WindowGainedMouseFocusEventData = D1 (MetaData "WindowGainedMouseFocusEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "WindowGainedMouseFocusEventData" PrefixI True) (S1 (MetaSel (Just Symbol "windowGainedMouseFocusEventWindow") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Window)))

data WindowLostMouseFocusEventData #

The window has lost mouse focus.

Instances

Eq WindowLostMouseFocusEventData # 
Ord WindowLostMouseFocusEventData # 
Show WindowLostMouseFocusEventData # 
Generic WindowLostMouseFocusEventData # 
type Rep WindowLostMouseFocusEventData # 
type Rep WindowLostMouseFocusEventData = D1 (MetaData "WindowLostMouseFocusEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "WindowLostMouseFocusEventData" PrefixI True) (S1 (MetaSel (Just Symbol "windowLostMouseFocusEventWindow") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Window)))

data WindowGainedKeyboardFocusEventData #

The window has gained keyboard focus.

Instances

Eq WindowGainedKeyboardFocusEventData # 
Ord WindowGainedKeyboardFocusEventData # 
Show WindowGainedKeyboardFocusEventData # 
Generic WindowGainedKeyboardFocusEventData # 
type Rep WindowGainedKeyboardFocusEventData # 
type Rep WindowGainedKeyboardFocusEventData = D1 (MetaData "WindowGainedKeyboardFocusEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "WindowGainedKeyboardFocusEventData" PrefixI True) (S1 (MetaSel (Just Symbol "windowGainedKeyboardFocusEventWindow") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Window)))

data WindowLostKeyboardFocusEventData #

The window has lost keyboard focus.

Instances

Eq WindowLostKeyboardFocusEventData # 
Ord WindowLostKeyboardFocusEventData # 
Show WindowLostKeyboardFocusEventData # 
Generic WindowLostKeyboardFocusEventData # 
type Rep WindowLostKeyboardFocusEventData # 
type Rep WindowLostKeyboardFocusEventData = D1 (MetaData "WindowLostKeyboardFocusEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "WindowLostKeyboardFocusEventData" PrefixI True) (S1 (MetaSel (Just Symbol "windowLostKeyboardFocusEventWindow") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Window)))

data WindowClosedEventData #

The window manager requests that the window be closed.

Constructors

WindowClosedEventData 

Fields

Keyboard events

data KeyboardEventData #

A keyboard key has been pressed or released.

Constructors

KeyboardEventData 

Fields

Instances

Eq KeyboardEventData # 
Ord KeyboardEventData # 
Show KeyboardEventData # 
Generic KeyboardEventData # 
type Rep KeyboardEventData # 
type Rep KeyboardEventData = D1 (MetaData "KeyboardEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "KeyboardEventData" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "keyboardEventWindow") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Window)) (S1 (MetaSel (Just Symbol "keyboardEventKeyMotion") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 InputMotion))) ((:*:) (S1 (MetaSel (Just Symbol "keyboardEventRepeat") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Bool)) (S1 (MetaSel (Just Symbol "keyboardEventKeysym") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Keysym)))))

data TextEditingEventData #

Keyboard text editing event information.

Constructors

TextEditingEventData 

Fields

Instances

Eq TextEditingEventData # 
Ord TextEditingEventData # 
Show TextEditingEventData # 
Generic TextEditingEventData # 
type Rep TextEditingEventData # 
type Rep TextEditingEventData = D1 (MetaData "TextEditingEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "TextEditingEventData" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "textEditingEventWindow") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Window)) (S1 (MetaSel (Just Symbol "textEditingEventText") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))) ((:*:) (S1 (MetaSel (Just Symbol "textEditingEventStart") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Int32)) (S1 (MetaSel (Just Symbol "textEditingEventLength") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Int32)))))

data TextInputEventData #

Keyboard text input event information.

Constructors

TextInputEventData 

Fields

Mouse events

data MouseMotionEventData #

A mouse or pointer device was moved.

Constructors

MouseMotionEventData 

Fields

Instances

Eq MouseMotionEventData # 
Ord MouseMotionEventData # 
Show MouseMotionEventData # 
Generic MouseMotionEventData # 
type Rep MouseMotionEventData # 
type Rep MouseMotionEventData = D1 (MetaData "MouseMotionEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "MouseMotionEventData" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "mouseMotionEventWindow") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Window)) (S1 (MetaSel (Just Symbol "mouseMotionEventWhich") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 MouseDevice))) ((:*:) (S1 (MetaSel (Just Symbol "mouseMotionEventState") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 [MouseButton])) ((:*:) (S1 (MetaSel (Just Symbol "mouseMotionEventPos") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Point V2 Int32))) (S1 (MetaSel (Just Symbol "mouseMotionEventRelMotion") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (V2 Int32)))))))

data MouseButtonEventData #

A mouse or pointer device button was pressed or released.

Constructors

MouseButtonEventData 

Fields

Instances

Eq MouseButtonEventData # 
Ord MouseButtonEventData # 
Show MouseButtonEventData # 
Generic MouseButtonEventData # 
type Rep MouseButtonEventData # 
type Rep MouseButtonEventData = D1 (MetaData "MouseButtonEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "MouseButtonEventData" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "mouseButtonEventWindow") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Window)) ((:*:) (S1 (MetaSel (Just Symbol "mouseButtonEventMotion") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 InputMotion)) (S1 (MetaSel (Just Symbol "mouseButtonEventWhich") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 MouseDevice)))) ((:*:) (S1 (MetaSel (Just Symbol "mouseButtonEventButton") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 MouseButton)) ((:*:) (S1 (MetaSel (Just Symbol "mouseButtonEventClicks") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Word8)) (S1 (MetaSel (Just Symbol "mouseButtonEventPos") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Point V2 Int32)))))))

data MouseWheelEventData #

Mouse wheel event information.

Constructors

MouseWheelEventData 

Fields

Instances

Eq MouseWheelEventData # 
Ord MouseWheelEventData # 
Show MouseWheelEventData # 
Generic MouseWheelEventData # 
type Rep MouseWheelEventData # 
type Rep MouseWheelEventData = D1 (MetaData "MouseWheelEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "MouseWheelEventData" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "mouseWheelEventWindow") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Window)) (S1 (MetaSel (Just Symbol "mouseWheelEventWhich") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 MouseDevice))) ((:*:) (S1 (MetaSel (Just Symbol "mouseWheelEventPos") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (V2 Int32))) (S1 (MetaSel (Just Symbol "mouseWheelEventDirection") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 MouseScrollDirection)))))

Joystick events

data JoyAxisEventData #

Joystick axis motion event information

Constructors

JoyAxisEventData 

Fields

data JoyBallEventData #

Joystick trackball motion event information.

Constructors

JoyBallEventData 

Fields

data JoyHatEventData #

Joystick hat position change event information

Constructors

JoyHatEventData 

Fields

data JoyButtonEventData #

Joystick button event information.

Constructors

JoyButtonEventData 

Fields

Instances

Eq JoyButtonEventData # 
Ord JoyButtonEventData # 
Show JoyButtonEventData # 
Generic JoyButtonEventData # 
type Rep JoyButtonEventData # 
type Rep JoyButtonEventData = D1 (MetaData "JoyButtonEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "JoyButtonEventData" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "joyButtonEventWhich") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 JoystickID)) ((:*:) (S1 (MetaSel (Just Symbol "joyButtonEventButton") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Word8)) (S1 (MetaSel (Just Symbol "joyButtonEventState") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Word8)))))

Controller events

data ControllerAxisEventData #

Game controller axis motion event information.

Constructors

ControllerAxisEventData 

Fields

Instances

Eq ControllerAxisEventData # 
Ord ControllerAxisEventData # 
Show ControllerAxisEventData # 
Generic ControllerAxisEventData # 
type Rep ControllerAxisEventData # 
type Rep ControllerAxisEventData = D1 (MetaData "ControllerAxisEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "ControllerAxisEventData" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "controllerAxisEventWhich") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 JoystickID)) ((:*:) (S1 (MetaSel (Just Symbol "controllerAxisEventAxis") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Word8)) (S1 (MetaSel (Just Symbol "controllerAxisEventValue") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Int16)))))

data ControllerButtonEventData #

Game controller button event information

Constructors

ControllerButtonEventData 

Fields

Instances

Eq ControllerButtonEventData # 
Ord ControllerButtonEventData # 
Show ControllerButtonEventData # 
Generic ControllerButtonEventData # 
type Rep ControllerButtonEventData # 
type Rep ControllerButtonEventData = D1 (MetaData "ControllerButtonEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "ControllerButtonEventData" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "controllerButtonEventWhich") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 JoystickID)) ((:*:) (S1 (MetaSel (Just Symbol "controllerButtonEventButton") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Word8)) (S1 (MetaSel (Just Symbol "controllerButtonEventState") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Word8)))))

data ControllerDeviceEventData #

Controller device event information

Constructors

ControllerDeviceEventData 

Fields

Instances

Eq ControllerDeviceEventData # 
Ord ControllerDeviceEventData # 
Show ControllerDeviceEventData # 
Generic ControllerDeviceEventData # 
type Rep ControllerDeviceEventData # 
type Rep ControllerDeviceEventData = D1 (MetaData "ControllerDeviceEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "ControllerDeviceEventData" PrefixI True) (S1 (MetaSel (Just Symbol "controllerDeviceEventWhich") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Int32)))

Audio events

data AudioDeviceEventData #

Constructors

AudioDeviceEventData 

Fields

Instances

Eq AudioDeviceEventData # 
Ord AudioDeviceEventData # 
Show AudioDeviceEventData # 
Generic AudioDeviceEventData # 
type Rep AudioDeviceEventData # 
type Rep AudioDeviceEventData = D1 (MetaData "AudioDeviceEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "AudioDeviceEventData" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "audioDeviceEventIsAddition") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Bool)) ((:*:) (S1 (MetaSel (Just Symbol "audioDeviceEventWhich") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Word32)) (S1 (MetaSel (Just Symbol "audioDeviceEventIsCapture") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Bool)))))

User events

data UserEventData #

Event data for application-defined events.

Constructors

UserEventData 

Fields

Touch events

data TouchFingerEventData #

Finger touch event information.

Constructors

TouchFingerEventData 

Fields

Instances

Eq TouchFingerEventData # 
Ord TouchFingerEventData # 
Show TouchFingerEventData # 
Generic TouchFingerEventData # 
type Rep TouchFingerEventData # 
type Rep TouchFingerEventData = D1 (MetaData "TouchFingerEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "TouchFingerEventData" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "touchFingerEventTouchID") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 TouchID)) (S1 (MetaSel (Just Symbol "touchFingerEventFingerID") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 FingerID))) ((:*:) (S1 (MetaSel (Just Symbol "touchFingerEventPos") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Point V2 CFloat))) ((:*:) (S1 (MetaSel (Just Symbol "touchFingerEventRelMotion") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (V2 CFloat))) (S1 (MetaSel (Just Symbol "touchFingerEventPressure") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 CFloat))))))

Gesture events

data MultiGestureEventData #

Multiple finger gesture event information

Constructors

MultiGestureEventData 

Fields

Instances

Eq MultiGestureEventData # 
Ord MultiGestureEventData # 
Show MultiGestureEventData # 
Generic MultiGestureEventData # 
type Rep MultiGestureEventData # 
type Rep MultiGestureEventData = D1 (MetaData "MultiGestureEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "MultiGestureEventData" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "multiGestureEventTouchID") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 TouchID)) (S1 (MetaSel (Just Symbol "multiGestureEventDTheta") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 CFloat))) ((:*:) (S1 (MetaSel (Just Symbol "multiGestureEventDDist") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 CFloat)) ((:*:) (S1 (MetaSel (Just Symbol "multiGestureEventPos") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Point V2 CFloat))) (S1 (MetaSel (Just Symbol "multiGestureEventNumFingers") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Word16))))))

data DollarGestureEventData #

Complex gesture event information.

Constructors

DollarGestureEventData 

Fields

Instances

Eq DollarGestureEventData # 
Ord DollarGestureEventData # 
Show DollarGestureEventData # 
Generic DollarGestureEventData # 
type Rep DollarGestureEventData # 
type Rep DollarGestureEventData = D1 (MetaData "DollarGestureEventData" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) (C1 (MetaCons "DollarGestureEventData" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "dollarGestureEventTouchID") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 TouchID)) (S1 (MetaSel (Just Symbol "dollarGestureEventGestureID") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 GestureID))) ((:*:) (S1 (MetaSel (Just Symbol "dollarGestureEventNumFingers") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Word32)) ((:*:) (S1 (MetaSel (Just Symbol "dollarGestureEventError") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 CFloat)) (S1 (MetaSel (Just Symbol "dollarGestureEventPos") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Point V2 CFloat)))))))

Drag and drop events

Unknown events

Auxiliary event data

data InputMotion #

Constructors

Released 
Pressed 

Instances

Bounded InputMotion # 
Enum InputMotion # 
Eq InputMotion # 
Data InputMotion # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> InputMotion -> c InputMotion #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c InputMotion #

toConstr :: InputMotion -> Constr #

dataTypeOf :: InputMotion -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c InputMotion) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c InputMotion) #

gmapT :: (forall b. Data b => b -> b) -> InputMotion -> InputMotion #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> InputMotion -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> InputMotion -> r #

gmapQ :: (forall d. Data d => d -> u) -> InputMotion -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> InputMotion -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> InputMotion -> m InputMotion #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> InputMotion -> m InputMotion #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> InputMotion -> m InputMotion #

Ord InputMotion # 
Read InputMotion # 
Show InputMotion # 
Generic InputMotion # 

Associated Types

type Rep InputMotion :: * -> * #

type Rep InputMotion # 
type Rep InputMotion = D1 (MetaData "InputMotion" "SDL.Event" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) ((:+:) (C1 (MetaCons "Released" PrefixI False) U1) (C1 (MetaCons "Pressed" PrefixI False) U1))

data MouseButton #

Constructors

ButtonLeft 
ButtonMiddle 
ButtonRight 
ButtonX1 
ButtonX2 
ButtonExtra !Int

An unknown mouse button.

Instances

Eq MouseButton # 
Data MouseButton # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> MouseButton -> c MouseButton #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c MouseButton #

toConstr :: MouseButton -> Constr #

dataTypeOf :: MouseButton -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c MouseButton) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c MouseButton) #

gmapT :: (forall b. Data b => b -> b) -> MouseButton -> MouseButton #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> MouseButton -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> MouseButton -> r #

gmapQ :: (forall d. Data d => d -> u) -> MouseButton -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> MouseButton -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> MouseButton -> m MouseButton #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> MouseButton -> m MouseButton #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> MouseButton -> m MouseButton #

Ord MouseButton # 
Read MouseButton # 
Show MouseButton # 
Generic MouseButton # 

Associated Types

type Rep MouseButton :: * -> * #

type Rep MouseButton # 
type Rep MouseButton = D1 (MetaData "MouseButton" "SDL.Input.Mouse" "sdl2-2.2.0-2P34LP7wP7h1axXaFF2L0F" False) ((:+:) ((:+:) (C1 (MetaCons "ButtonLeft" PrefixI False) U1) ((:+:) (C1 (MetaCons "ButtonMiddle" PrefixI False) U1) (C1 (MetaCons "ButtonRight" PrefixI False) U1))) ((:+:) (C1 (MetaCons "ButtonX1" PrefixI False) U1) ((:+:) (C1 (MetaCons "ButtonX2" PrefixI False) U1) (C1 (MetaCons "ButtonExtra" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Int))))))