| Copyright | Will Thompson, Iñaki García Etxebarria and Jonas Platte |
|---|---|
| License | LGPL-2.1 |
| Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
| Safe Haskell | None |
| Language | Haskell2010 |
GI.Gdk.Structs.EventButton
Description
Used for button press and button release events. The @type field will be one of %GDK_BUTTON_PRESS, %GDK_2BUTTON_PRESS, %GDK_3BUTTON_PRESS or %GDK_BUTTON_RELEASE,
Double and triple-clicks result in a sequence of events being received. For double-clicks the order of events will be:
- %GDK_BUTTON_PRESS
- %GDK_BUTTON_RELEASE
- %GDK_BUTTON_PRESS
- %GDK_2BUTTON_PRESS
- %GDK_BUTTON_RELEASE
Note that the first click is received just like a normal button press, while the second click results in a %GDK_2BUTTON_PRESS being received just after the %GDK_BUTTON_PRESS.
Triple-clicks are very similar to double-clicks, except that %GDK_3BUTTON_PRESS is inserted after the third click. The order of the events is:
- %GDK_BUTTON_PRESS
- %GDK_BUTTON_RELEASE
- %GDK_BUTTON_PRESS
- %GDK_2BUTTON_PRESS
- %GDK_BUTTON_RELEASE
- %GDK_BUTTON_PRESS
- %GDK_3BUTTON_PRESS
- %GDK_BUTTON_RELEASE
For a double click to occur, the second button press must occur within 1/4 of a second of the first. For a triple click to occur, the third button press must also occur within 1/2 second of the first button press.
- newtype EventButton = EventButton (ForeignPtr EventButton)
- newZeroEventButton :: MonadIO m => m EventButton
- noEventButton :: Maybe EventButton
- eventButtonAxes :: AttrLabelProxy "axes"
- getEventButtonAxes :: MonadIO m => EventButton -> m Double
- setEventButtonAxes :: MonadIO m => EventButton -> Double -> m ()
- eventButtonButton :: AttrLabelProxy "button"
- getEventButtonButton :: MonadIO m => EventButton -> m Word32
- setEventButtonButton :: MonadIO m => EventButton -> Word32 -> m ()
- clearEventButtonDevice :: MonadIO m => EventButton -> m ()
- eventButtonDevice :: AttrLabelProxy "device"
- getEventButtonDevice :: MonadIO m => EventButton -> m (Maybe Device)
- setEventButtonDevice :: MonadIO m => EventButton -> Ptr Device -> m ()
- eventButtonSendEvent :: AttrLabelProxy "sendEvent"
- getEventButtonSendEvent :: MonadIO m => EventButton -> m Int8
- setEventButtonSendEvent :: MonadIO m => EventButton -> Int8 -> m ()
- eventButtonState :: AttrLabelProxy "state"
- getEventButtonState :: MonadIO m => EventButton -> m [ModifierType]
- setEventButtonState :: MonadIO m => EventButton -> [ModifierType] -> m ()
- eventButtonTime :: AttrLabelProxy "time"
- getEventButtonTime :: MonadIO m => EventButton -> m Word32
- setEventButtonTime :: MonadIO m => EventButton -> Word32 -> m ()
- eventButtonType :: AttrLabelProxy "type"
- getEventButtonType :: MonadIO m => EventButton -> m EventType
- setEventButtonType :: MonadIO m => EventButton -> EventType -> m ()
- clearEventButtonWindow :: MonadIO m => EventButton -> m ()
- eventButtonWindow :: AttrLabelProxy "window"
- getEventButtonWindow :: MonadIO m => EventButton -> m (Maybe Window)
- setEventButtonWindow :: MonadIO m => EventButton -> Ptr Window -> m ()
- eventButtonX :: AttrLabelProxy "x"
- getEventButtonX :: MonadIO m => EventButton -> m Double
- setEventButtonX :: MonadIO m => EventButton -> Double -> m ()
- eventButtonXRoot :: AttrLabelProxy "xRoot"
- getEventButtonXRoot :: MonadIO m => EventButton -> m Double
- setEventButtonXRoot :: MonadIO m => EventButton -> Double -> m ()
- eventButtonY :: AttrLabelProxy "y"
- getEventButtonY :: MonadIO m => EventButton -> m Double
- setEventButtonY :: MonadIO m => EventButton -> Double -> m ()
- eventButtonYRoot :: AttrLabelProxy "yRoot"
- getEventButtonYRoot :: MonadIO m => EventButton -> m Double
- setEventButtonYRoot :: MonadIO m => EventButton -> Double -> m ()
Exported types
newtype EventButton Source #
Constructors
| EventButton (ForeignPtr EventButton) |
Instances
| WrappedPtr EventButton Source # | |
| (~) AttrOpTag tag AttrSet => Constructible EventButton tag Source # | |
| ((~) * info (ResolveEventButtonMethod t EventButton), MethodInfo * info EventButton p) => IsLabel t (EventButton -> p) Source # | |
| ((~) * info (ResolveEventButtonMethod t EventButton), MethodInfo * info EventButton p) => IsLabelProxy t (EventButton -> p) Source # | |
| HasAttributeList * EventButton Source # | |
| type AttributeList EventButton Source # | |
newZeroEventButton :: MonadIO m => m EventButton Source #
Construct a EventButton struct initialized to zero.
Properties
Axes
eventButtonAxes :: AttrLabelProxy "axes" Source #
getEventButtonAxes :: MonadIO m => EventButton -> m Double Source #
setEventButtonAxes :: MonadIO m => EventButton -> Double -> m () Source #
Button
eventButtonButton :: AttrLabelProxy "button" Source #
getEventButtonButton :: MonadIO m => EventButton -> m Word32 Source #
setEventButtonButton :: MonadIO m => EventButton -> Word32 -> m () Source #
Device
clearEventButtonDevice :: MonadIO m => EventButton -> m () Source #
eventButtonDevice :: AttrLabelProxy "device" Source #
getEventButtonDevice :: MonadIO m => EventButton -> m (Maybe Device) Source #
setEventButtonDevice :: MonadIO m => EventButton -> Ptr Device -> m () Source #
SendEvent
eventButtonSendEvent :: AttrLabelProxy "sendEvent" Source #
getEventButtonSendEvent :: MonadIO m => EventButton -> m Int8 Source #
setEventButtonSendEvent :: MonadIO m => EventButton -> Int8 -> m () Source #
State
eventButtonState :: AttrLabelProxy "state" Source #
getEventButtonState :: MonadIO m => EventButton -> m [ModifierType] Source #
setEventButtonState :: MonadIO m => EventButton -> [ModifierType] -> m () Source #
Time
eventButtonTime :: AttrLabelProxy "time" Source #
getEventButtonTime :: MonadIO m => EventButton -> m Word32 Source #
setEventButtonTime :: MonadIO m => EventButton -> Word32 -> m () Source #
Type
eventButtonType :: AttrLabelProxy "type" Source #
getEventButtonType :: MonadIO m => EventButton -> m EventType Source #
setEventButtonType :: MonadIO m => EventButton -> EventType -> m () Source #
Window
clearEventButtonWindow :: MonadIO m => EventButton -> m () Source #
eventButtonWindow :: AttrLabelProxy "window" Source #
getEventButtonWindow :: MonadIO m => EventButton -> m (Maybe Window) Source #
setEventButtonWindow :: MonadIO m => EventButton -> Ptr Window -> m () Source #
X
eventButtonX :: AttrLabelProxy "x" Source #
getEventButtonX :: MonadIO m => EventButton -> m Double Source #
setEventButtonX :: MonadIO m => EventButton -> Double -> m () Source #
XRoot
eventButtonXRoot :: AttrLabelProxy "xRoot" Source #
getEventButtonXRoot :: MonadIO m => EventButton -> m Double Source #
setEventButtonXRoot :: MonadIO m => EventButton -> Double -> m () Source #
Y
eventButtonY :: AttrLabelProxy "y" Source #
getEventButtonY :: MonadIO m => EventButton -> m Double Source #
setEventButtonY :: MonadIO m => EventButton -> Double -> m () Source #
YRoot
eventButtonYRoot :: AttrLabelProxy "yRoot" Source #
getEventButtonYRoot :: MonadIO m => EventButton -> m Double Source #
setEventButtonYRoot :: MonadIO m => EventButton -> Double -> m () Source #