gi-gdk-4.0.4: Gdk bindings
CopyrightWill Thompson and Iñaki García Etxebarria
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellSafe-Inferred
LanguageHaskell2010

GI.Gdk.Objects.Event

Description

GdkEvents are immutable data structures, created by GDK to represent windowing system events.

In GTK applications the events are handled automatically by toplevel widgets and passed on to the event controllers of appropriate widgets, so using GdkEvent and its related API is rarely needed.

Synopsis

Exported types

newtype Event Source #

Memory-managed wrapper type.

Constructors

Event (ManagedPtr Event) 

Instances

Instances details
Eq Event Source # 
Instance details

Defined in GI.Gdk.Objects.Event

Methods

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

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

BoxedPtr Event Source # 
Instance details

Defined in GI.Gdk.Objects.Event

ManagedPtrNewtype Event Source # 
Instance details

Defined in GI.Gdk.Objects.Event

TypedObject Event Source # 
Instance details

Defined in GI.Gdk.Objects.Event

Methods

glibType :: IO GType #

HasParentTypes Event Source # 
Instance details

Defined in GI.Gdk.Objects.Event

type ParentTypes Event Source # 
Instance details

Defined in GI.Gdk.Objects.Event

type ParentTypes Event = '[] :: [Type]

class (BoxedPtr o, TypedObject o, IsDescendantOf Event o) => IsEvent o Source #

Type class for types which can be safely cast to Event, for instance with toEvent.

Instances

Instances details
(BoxedPtr o, TypedObject o, IsDescendantOf Event o) => IsEvent o Source # 
Instance details

Defined in GI.Gdk.Objects.Event

toEvent :: (MonadIO m, IsEvent o) => o -> m Event Source #

Cast to Event, for types for which this is known to be safe. For general casts, use castTo.

Methods

Click to display all available methods, including inherited ones

Expand

Methods

ref, triggersContextMenu, unref.

Getters

getAxes, getAxis, getDevice, getDeviceTool, getDisplay, getEventSequence, getEventType, getHistory, getModifierState, getPointerEmulated, getPosition, getSeat, getSurface, getTime.

Setters

None.

getAxes

eventGetAxes Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent

-> m (Bool, [Double])

Returns: True on success, otherwise False

Extracts all axis values from an event.

getAxis

eventGetAxis Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent

-> AxisUse

axisUse: the axis use to look for

-> m (Bool, Double)

Returns: True if the specified axis was found, otherwise False

Extract the axis value for a particular axis use from an event structure.

getDevice

eventGetDevice Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent.

-> m (Maybe Device)

Returns: a GdkDevice

Returns the device of an event.

getDeviceTool

eventGetDeviceTool Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent

-> m (Maybe DeviceTool)

Returns: The current device tool

Returns a GdkDeviceTool representing the tool that caused the event.

If the was not generated by a device that supports different tools (such as a tablet), this function will return Nothing.

Note: the GdkDeviceTool will be constant during the application lifetime, if settings must be stored persistently across runs, see deviceToolGetSerial.

getDisplay

eventGetDisplay Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent

-> m (Maybe Display)

Returns: a GdkDisplay

Retrieves the display associated to the event.

getEventSequence

eventGetEventSequence Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent

-> m EventSequence

Returns: the event sequence that the event belongs to

Retuns the event sequence to which the event belongs.

Related touch events are connected in a sequence. Other events typically don't have event sequence information.

getEventType

eventGetEventType Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent

-> m EventType

Returns: a GdkEventType

Retrieves the type of the event.

getHistory

eventGetHistory Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a motion or scroll event

-> m (Maybe [TimeCoord])

Returns: an array of time and coordinates

Retrieves the history of the device that event is for, as a list of time and coordinates.

The history includes positions that are not delivered as separate events to the application because they occurred in the same frame as event.

Note that only motion and scroll events record history, and motion events do it only if one of the mouse buttons is down.

getModifierState

eventGetModifierState Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent

-> m [ModifierType]

Returns: the modifier state of event

Returns the modifier state field of an event.

getPointerEmulated

eventGetPointerEmulated Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent

-> m Bool

Returns: True if this event is emulated

Returns whether this event is an 'emulated' pointer event.

Emulated pointer events typically originate from a touch events.

getPosition

eventGetPosition Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent

-> m (Bool, Double, Double) 

Extract the event surface relative x/y coordinates from an event.

getSeat

eventGetSeat Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent

-> m (Maybe Seat)

Returns: a GdkSeat.

Returns the seat that originated the event.

getSurface

eventGetSurface Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent

-> m Surface

Returns: The GdkSurface associated with the event

Extracts the surface associated with an event.

getTime

eventGetTime Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent

-> m Word32

Returns: timestamp field from event

Returns the timestamp of event.

Not all events have timestamps. In that case, this function returns CURRENT_TIME.

ref

eventRef Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent

-> m Event

Returns: event

Increase the ref count of event.

triggersContextMenu

eventTriggersContextMenu Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent, currently only button events are meaningful values

-> m Bool

Returns: True if the event should trigger a context menu.

Returns whether a GdkEvent should trigger a context menu, according to platform conventions.

The right mouse button typically triggers context menus.

This function should always be used instead of simply checking for event->button == BUTTON_SECONDARY.

unref

eventUnref Source #

Arguments

:: (HasCallStack, MonadIO m, IsEvent a) 
=> a

event: a GdkEvent

-> m () 

Decrease the ref count of event.

If the last reference is dropped, the structure is freed.