{- | Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte License : LGPL-2.1 Maintainer : Iñaki García Etxebarria (garetxe@gmail.com) A GtkBindingSignal stores the necessary information to activate a widget in response to a key press via a signal emission. -} module GI.Gtk.Structs.BindingSignal ( -- * Exported types BindingSignal(..) , noBindingSignal , -- * Properties -- ** NArgs bindingSignalReadNArgs , -- ** Next bindingSignalReadNext , -- ** SignalName bindingSignalReadSignalName , ) 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.Gtk.Types import GI.Gtk.Callbacks newtype BindingSignal = BindingSignal (ForeignPtr BindingSignal) noBindingSignal :: Maybe BindingSignal noBindingSignal = Nothing bindingSignalReadNext :: BindingSignal -> IO BindingSignal bindingSignalReadNext s = withManagedPtr s $ \ptr -> do val <- peek (ptr `plusPtr` 0) :: IO (Ptr BindingSignal) val' <- (newPtr 32 BindingSignal) val return val' bindingSignalReadSignalName :: BindingSignal -> IO T.Text bindingSignalReadSignalName s = withManagedPtr s $ \ptr -> do val <- peek (ptr `plusPtr` 8) :: IO CString val' <- cstringToText val return val' bindingSignalReadNArgs :: BindingSignal -> IO Word32 bindingSignalReadNArgs s = withManagedPtr s $ \ptr -> do val <- peek (ptr `plusPtr` 16) :: IO Word32 return val -- XXX Skipped getter for "BindingSignal:args" :: Not implemented: "Don't know how to unpack C array of type TCArray False (-1) 2 (TInterface \"Gtk\" \"BindingArg\")"