gi-gdk-0.3.18.13: GI/Gdk/Structs/EventTouchpadSwipe.hs
{- |
Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License : LGPL-2.1
Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
Generated during touchpad swipe gestures.
-}
module GI.Gdk.Structs.EventTouchpadSwipe
(
-- * Exported types
EventTouchpadSwipe(..) ,
newZeroEventTouchpadSwipe ,
noEventTouchpadSwipe ,
-- * Properties
-- ** Dx
eventTouchpadSwipeReadDx ,
-- ** Dy
eventTouchpadSwipeReadDy ,
-- ** NFingers
eventTouchpadSwipeReadNFingers ,
-- ** Phase
eventTouchpadSwipeReadPhase ,
-- ** SendEvent
eventTouchpadSwipeReadSendEvent ,
-- ** State
eventTouchpadSwipeReadState ,
-- ** Time
eventTouchpadSwipeReadTime ,
-- ** Type
eventTouchpadSwipeReadType ,
-- ** Window
eventTouchpadSwipeReadWindow ,
-- ** X
eventTouchpadSwipeReadX ,
-- ** XRoot
eventTouchpadSwipeReadXRoot ,
-- ** Y
eventTouchpadSwipeReadY ,
-- ** YRoot
eventTouchpadSwipeReadYRoot ,
) where
import Prelude ()
import Data.GI.Base.ShortPrelude
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import GI.Gdk.Types
import GI.Gdk.Callbacks
newtype EventTouchpadSwipe = EventTouchpadSwipe (ForeignPtr EventTouchpadSwipe)
-- | Construct a `EventTouchpadSwipe` struct initialized to zero.
newZeroEventTouchpadSwipe :: MonadIO m => m EventTouchpadSwipe
newZeroEventTouchpadSwipe = liftIO $ callocBytes 88 >>= wrapPtr EventTouchpadSwipe
noEventTouchpadSwipe :: Maybe EventTouchpadSwipe
noEventTouchpadSwipe = Nothing
eventTouchpadSwipeReadType :: EventTouchpadSwipe -> IO EventType
eventTouchpadSwipeReadType s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 0) :: IO CUInt
let val' = (toEnum . fromIntegral) val
return val'
eventTouchpadSwipeReadWindow :: EventTouchpadSwipe -> IO Window
eventTouchpadSwipeReadWindow s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 8) :: IO (Ptr Window)
val' <- (newObject Window) val
return val'
eventTouchpadSwipeReadSendEvent :: EventTouchpadSwipe -> IO Int8
eventTouchpadSwipeReadSendEvent s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 16) :: IO Int8
return val
eventTouchpadSwipeReadPhase :: EventTouchpadSwipe -> IO TouchpadGesturePhase
eventTouchpadSwipeReadPhase s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 20) :: IO CUInt
let val' = (toEnum . fromIntegral) val
return val'
eventTouchpadSwipeReadNFingers :: EventTouchpadSwipe -> IO Int8
eventTouchpadSwipeReadNFingers s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 24) :: IO Int8
return val
eventTouchpadSwipeReadTime :: EventTouchpadSwipe -> IO Word32
eventTouchpadSwipeReadTime s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 28) :: IO Word32
return val
eventTouchpadSwipeReadX :: EventTouchpadSwipe -> IO Double
eventTouchpadSwipeReadX s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 32) :: IO CDouble
let val' = realToFrac val
return val'
eventTouchpadSwipeReadY :: EventTouchpadSwipe -> IO Double
eventTouchpadSwipeReadY s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 40) :: IO CDouble
let val' = realToFrac val
return val'
eventTouchpadSwipeReadDx :: EventTouchpadSwipe -> IO Double
eventTouchpadSwipeReadDx s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 48) :: IO CDouble
let val' = realToFrac val
return val'
eventTouchpadSwipeReadDy :: EventTouchpadSwipe -> IO Double
eventTouchpadSwipeReadDy s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 56) :: IO CDouble
let val' = realToFrac val
return val'
eventTouchpadSwipeReadXRoot :: EventTouchpadSwipe -> IO Double
eventTouchpadSwipeReadXRoot s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 64) :: IO CDouble
let val' = realToFrac val
return val'
eventTouchpadSwipeReadYRoot :: EventTouchpadSwipe -> IO Double
eventTouchpadSwipeReadYRoot s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 72) :: IO CDouble
let val' = realToFrac val
return val'
eventTouchpadSwipeReadState :: EventTouchpadSwipe -> IO [ModifierType]
eventTouchpadSwipeReadState s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 80) :: IO CUInt
let val' = wordToGFlags val
return val'
type family ResolveEventTouchpadSwipeMethod (t :: Symbol) (o :: *) :: * where
ResolveEventTouchpadSwipeMethod l o = MethodResolutionFailed l o
instance (info ~ ResolveEventTouchpadSwipeMethod t EventTouchpadSwipe, MethodInfo info EventTouchpadSwipe p) => IsLabelProxy t (EventTouchpadSwipe -> p) where
fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveEventTouchpadSwipeMethod t EventTouchpadSwipe, MethodInfo info EventTouchpadSwipe p) => IsLabel t (EventTouchpadSwipe -> p) where
fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
#endif