{- | Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte License : LGPL-2.1 Maintainer : Iñaki García Etxebarria (garetxe@gmail.com) Each key binding element of a binding sets binding list is represented by a GtkBindingEntry. -} module GI.Gtk.Structs.BindingEntry ( -- * Exported types BindingEntry(..) , noBindingEntry , -- * Properties -- ** BindingSet bindingEntryReadBindingSet , -- ** Destroyed bindingEntryReadDestroyed , -- ** HashNext bindingEntryReadHashNext , -- ** InEmission bindingEntryReadInEmission , -- ** Keyval bindingEntryReadKeyval , -- ** MarksUnbound bindingEntryReadMarksUnbound , -- ** Modifiers bindingEntryReadModifiers , -- ** SetNext bindingEntryReadSetNext , -- ** Signals bindingEntryReadSignals , ) 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 import qualified GI.Gdk as Gdk newtype BindingEntry = BindingEntry (ForeignPtr BindingEntry) noBindingEntry :: Maybe BindingEntry noBindingEntry = Nothing bindingEntryReadKeyval :: BindingEntry -> IO Word32 bindingEntryReadKeyval s = withManagedPtr s $ \ptr -> do val <- peek (ptr `plusPtr` 0) :: IO Word32 return val bindingEntryReadModifiers :: BindingEntry -> IO [Gdk.ModifierType] bindingEntryReadModifiers s = withManagedPtr s $ \ptr -> do val <- peek (ptr `plusPtr` 4) :: IO CUInt let val' = wordToGFlags val return val' bindingEntryReadBindingSet :: BindingEntry -> IO BindingSet bindingEntryReadBindingSet s = withManagedPtr s $ \ptr -> do val <- peek (ptr `plusPtr` 8) :: IO (Ptr BindingSet) val' <- (newPtr 64 BindingSet) val return val' bindingEntryReadDestroyed :: BindingEntry -> IO Word32 bindingEntryReadDestroyed s = withManagedPtr s $ \ptr -> do val <- peek (ptr `plusPtr` 16) :: IO Word32 return val bindingEntryReadInEmission :: BindingEntry -> IO Word32 bindingEntryReadInEmission s = withManagedPtr s $ \ptr -> do val <- peek (ptr `plusPtr` 20) :: IO Word32 return val bindingEntryReadMarksUnbound :: BindingEntry -> IO Word32 bindingEntryReadMarksUnbound s = withManagedPtr s $ \ptr -> do val <- peek (ptr `plusPtr` 24) :: IO Word32 return val bindingEntryReadSetNext :: BindingEntry -> IO BindingEntry bindingEntryReadSetNext s = withManagedPtr s $ \ptr -> do val <- peek (ptr `plusPtr` 32) :: IO (Ptr BindingEntry) val' <- (newPtr 56 BindingEntry) val return val' bindingEntryReadHashNext :: BindingEntry -> IO BindingEntry bindingEntryReadHashNext s = withManagedPtr s $ \ptr -> do val <- peek (ptr `plusPtr` 40) :: IO (Ptr BindingEntry) val' <- (newPtr 56 BindingEntry) val return val' bindingEntryReadSignals :: BindingEntry -> IO BindingSignal bindingEntryReadSignals s = withManagedPtr s $ \ptr -> do val <- peek (ptr `plusPtr` 48) :: IO (Ptr BindingSignal) val' <- (newPtr 32 BindingSignal) val return val'