{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gdk.Structs.EventConfigure
(
EventConfigure(..) ,
newZeroEventConfigure ,
noEventConfigure ,
#if defined(ENABLE_OVERLOADING)
ResolveEventConfigureMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
eventConfigure_height ,
#endif
getEventConfigureHeight ,
setEventConfigureHeight ,
#if defined(ENABLE_OVERLOADING)
eventConfigure_sendEvent ,
#endif
getEventConfigureSendEvent ,
setEventConfigureSendEvent ,
#if defined(ENABLE_OVERLOADING)
eventConfigure_type ,
#endif
getEventConfigureType ,
setEventConfigureType ,
#if defined(ENABLE_OVERLOADING)
eventConfigure_width ,
#endif
getEventConfigureWidth ,
setEventConfigureWidth ,
clearEventConfigureWindow ,
#if defined(ENABLE_OVERLOADING)
eventConfigure_window ,
#endif
getEventConfigureWindow ,
setEventConfigureWindow ,
#if defined(ENABLE_OVERLOADING)
eventConfigure_x ,
#endif
getEventConfigureX ,
setEventConfigureX ,
#if defined(ENABLE_OVERLOADING)
eventConfigure_y ,
#endif
getEventConfigureY ,
setEventConfigureY ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import {-# SOURCE #-} qualified GI.Gdk.Enums as Gdk.Enums
import {-# SOURCE #-} qualified GI.Gdk.Objects.Window as Gdk.Window
newtype EventConfigure = EventConfigure (ManagedPtr EventConfigure)
deriving (Eq)
instance WrappedPtr EventConfigure where
wrappedPtrCalloc = callocBytes 40
wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 40 >=> wrapPtr EventConfigure)
wrappedPtrFree = Just ptr_to_g_free
newZeroEventConfigure :: MonadIO m => m EventConfigure
newZeroEventConfigure = liftIO $ wrappedPtrCalloc >>= wrapPtr EventConfigure
instance tag ~ 'AttrSet => Constructible EventConfigure tag where
new _ attrs = do
o <- newZeroEventConfigure
GI.Attributes.set o attrs
return o
noEventConfigure :: Maybe EventConfigure
noEventConfigure = Nothing
getEventConfigureType :: MonadIO m => EventConfigure -> m Gdk.Enums.EventType
getEventConfigureType s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 0) :: IO CInt
let val' = (toEnum . fromIntegral) val
return val'
setEventConfigureType :: MonadIO m => EventConfigure -> Gdk.Enums.EventType -> m ()
setEventConfigureType s val = liftIO $ withManagedPtr s $ \ptr -> do
let val' = (fromIntegral . fromEnum) val
poke (ptr `plusPtr` 0) (val' :: CInt)
#if defined(ENABLE_OVERLOADING)
data EventConfigureTypeFieldInfo
instance AttrInfo EventConfigureTypeFieldInfo where
type AttrBaseTypeConstraint EventConfigureTypeFieldInfo = (~) EventConfigure
type AttrAllowedOps EventConfigureTypeFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint EventConfigureTypeFieldInfo = (~) Gdk.Enums.EventType
type AttrTransferTypeConstraint EventConfigureTypeFieldInfo = (~)Gdk.Enums.EventType
type AttrTransferType EventConfigureTypeFieldInfo = Gdk.Enums.EventType
type AttrGetType EventConfigureTypeFieldInfo = Gdk.Enums.EventType
type AttrLabel EventConfigureTypeFieldInfo = "type"
type AttrOrigin EventConfigureTypeFieldInfo = EventConfigure
attrGet = getEventConfigureType
attrSet = setEventConfigureType
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
eventConfigure_type :: AttrLabelProxy "type"
eventConfigure_type = AttrLabelProxy
#endif
getEventConfigureWindow :: MonadIO m => EventConfigure -> m (Maybe Gdk.Window.Window)
getEventConfigureWindow s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 8) :: IO (Ptr Gdk.Window.Window)
result <- SP.convertIfNonNull val $ \val' -> do
val'' <- (newObject Gdk.Window.Window) val'
return val''
return result
setEventConfigureWindow :: MonadIO m => EventConfigure -> Ptr Gdk.Window.Window -> m ()
setEventConfigureWindow s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 8) (val :: Ptr Gdk.Window.Window)
clearEventConfigureWindow :: MonadIO m => EventConfigure -> m ()
clearEventConfigureWindow s = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 8) (FP.nullPtr :: Ptr Gdk.Window.Window)
#if defined(ENABLE_OVERLOADING)
data EventConfigureWindowFieldInfo
instance AttrInfo EventConfigureWindowFieldInfo where
type AttrBaseTypeConstraint EventConfigureWindowFieldInfo = (~) EventConfigure
type AttrAllowedOps EventConfigureWindowFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint EventConfigureWindowFieldInfo = (~) (Ptr Gdk.Window.Window)
type AttrTransferTypeConstraint EventConfigureWindowFieldInfo = (~)(Ptr Gdk.Window.Window)
type AttrTransferType EventConfigureWindowFieldInfo = (Ptr Gdk.Window.Window)
type AttrGetType EventConfigureWindowFieldInfo = Maybe Gdk.Window.Window
type AttrLabel EventConfigureWindowFieldInfo = "window"
type AttrOrigin EventConfigureWindowFieldInfo = EventConfigure
attrGet = getEventConfigureWindow
attrSet = setEventConfigureWindow
attrConstruct = undefined
attrClear = clearEventConfigureWindow
attrTransfer _ v = do
return v
eventConfigure_window :: AttrLabelProxy "window"
eventConfigure_window = AttrLabelProxy
#endif
getEventConfigureSendEvent :: MonadIO m => EventConfigure -> m Int8
getEventConfigureSendEvent s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 16) :: IO Int8
return val
setEventConfigureSendEvent :: MonadIO m => EventConfigure -> Int8 -> m ()
setEventConfigureSendEvent s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 16) (val :: Int8)
#if defined(ENABLE_OVERLOADING)
data EventConfigureSendEventFieldInfo
instance AttrInfo EventConfigureSendEventFieldInfo where
type AttrBaseTypeConstraint EventConfigureSendEventFieldInfo = (~) EventConfigure
type AttrAllowedOps EventConfigureSendEventFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint EventConfigureSendEventFieldInfo = (~) Int8
type AttrTransferTypeConstraint EventConfigureSendEventFieldInfo = (~)Int8
type AttrTransferType EventConfigureSendEventFieldInfo = Int8
type AttrGetType EventConfigureSendEventFieldInfo = Int8
type AttrLabel EventConfigureSendEventFieldInfo = "send_event"
type AttrOrigin EventConfigureSendEventFieldInfo = EventConfigure
attrGet = getEventConfigureSendEvent
attrSet = setEventConfigureSendEvent
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
eventConfigure_sendEvent :: AttrLabelProxy "sendEvent"
eventConfigure_sendEvent = AttrLabelProxy
#endif
getEventConfigureX :: MonadIO m => EventConfigure -> m Int32
getEventConfigureX s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 20) :: IO Int32
return val
setEventConfigureX :: MonadIO m => EventConfigure -> Int32 -> m ()
setEventConfigureX s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 20) (val :: Int32)
#if defined(ENABLE_OVERLOADING)
data EventConfigureXFieldInfo
instance AttrInfo EventConfigureXFieldInfo where
type AttrBaseTypeConstraint EventConfigureXFieldInfo = (~) EventConfigure
type AttrAllowedOps EventConfigureXFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint EventConfigureXFieldInfo = (~) Int32
type AttrTransferTypeConstraint EventConfigureXFieldInfo = (~)Int32
type AttrTransferType EventConfigureXFieldInfo = Int32
type AttrGetType EventConfigureXFieldInfo = Int32
type AttrLabel EventConfigureXFieldInfo = "x"
type AttrOrigin EventConfigureXFieldInfo = EventConfigure
attrGet = getEventConfigureX
attrSet = setEventConfigureX
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
eventConfigure_x :: AttrLabelProxy "x"
eventConfigure_x = AttrLabelProxy
#endif
getEventConfigureY :: MonadIO m => EventConfigure -> m Int32
getEventConfigureY s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 24) :: IO Int32
return val
setEventConfigureY :: MonadIO m => EventConfigure -> Int32 -> m ()
setEventConfigureY s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 24) (val :: Int32)
#if defined(ENABLE_OVERLOADING)
data EventConfigureYFieldInfo
instance AttrInfo EventConfigureYFieldInfo where
type AttrBaseTypeConstraint EventConfigureYFieldInfo = (~) EventConfigure
type AttrAllowedOps EventConfigureYFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint EventConfigureYFieldInfo = (~) Int32
type AttrTransferTypeConstraint EventConfigureYFieldInfo = (~)Int32
type AttrTransferType EventConfigureYFieldInfo = Int32
type AttrGetType EventConfigureYFieldInfo = Int32
type AttrLabel EventConfigureYFieldInfo = "y"
type AttrOrigin EventConfigureYFieldInfo = EventConfigure
attrGet = getEventConfigureY
attrSet = setEventConfigureY
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
eventConfigure_y :: AttrLabelProxy "y"
eventConfigure_y = AttrLabelProxy
#endif
getEventConfigureWidth :: MonadIO m => EventConfigure -> m Int32
getEventConfigureWidth s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 28) :: IO Int32
return val
setEventConfigureWidth :: MonadIO m => EventConfigure -> Int32 -> m ()
setEventConfigureWidth s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 28) (val :: Int32)
#if defined(ENABLE_OVERLOADING)
data EventConfigureWidthFieldInfo
instance AttrInfo EventConfigureWidthFieldInfo where
type AttrBaseTypeConstraint EventConfigureWidthFieldInfo = (~) EventConfigure
type AttrAllowedOps EventConfigureWidthFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint EventConfigureWidthFieldInfo = (~) Int32
type AttrTransferTypeConstraint EventConfigureWidthFieldInfo = (~)Int32
type AttrTransferType EventConfigureWidthFieldInfo = Int32
type AttrGetType EventConfigureWidthFieldInfo = Int32
type AttrLabel EventConfigureWidthFieldInfo = "width"
type AttrOrigin EventConfigureWidthFieldInfo = EventConfigure
attrGet = getEventConfigureWidth
attrSet = setEventConfigureWidth
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
eventConfigure_width :: AttrLabelProxy "width"
eventConfigure_width = AttrLabelProxy
#endif
getEventConfigureHeight :: MonadIO m => EventConfigure -> m Int32
getEventConfigureHeight s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 32) :: IO Int32
return val
setEventConfigureHeight :: MonadIO m => EventConfigure -> Int32 -> m ()
setEventConfigureHeight s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 32) (val :: Int32)
#if defined(ENABLE_OVERLOADING)
data EventConfigureHeightFieldInfo
instance AttrInfo EventConfigureHeightFieldInfo where
type AttrBaseTypeConstraint EventConfigureHeightFieldInfo = (~) EventConfigure
type AttrAllowedOps EventConfigureHeightFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint EventConfigureHeightFieldInfo = (~) Int32
type AttrTransferTypeConstraint EventConfigureHeightFieldInfo = (~)Int32
type AttrTransferType EventConfigureHeightFieldInfo = Int32
type AttrGetType EventConfigureHeightFieldInfo = Int32
type AttrLabel EventConfigureHeightFieldInfo = "height"
type AttrOrigin EventConfigureHeightFieldInfo = EventConfigure
attrGet = getEventConfigureHeight
attrSet = setEventConfigureHeight
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
eventConfigure_height :: AttrLabelProxy "height"
eventConfigure_height = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList EventConfigure
type instance O.AttributeList EventConfigure = EventConfigureAttributeList
type EventConfigureAttributeList = ('[ '("type", EventConfigureTypeFieldInfo), '("window", EventConfigureWindowFieldInfo), '("sendEvent", EventConfigureSendEventFieldInfo), '("x", EventConfigureXFieldInfo), '("y", EventConfigureYFieldInfo), '("width", EventConfigureWidthFieldInfo), '("height", EventConfigureHeightFieldInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolveEventConfigureMethod (t :: Symbol) (o :: *) :: * where
ResolveEventConfigureMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveEventConfigureMethod t EventConfigure, O.MethodInfo info EventConfigure p) => OL.IsLabel t (EventConfigure -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#endif