{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gdk.Structs.Geometry
(
Geometry(..) ,
newZeroGeometry ,
noGeometry ,
#if defined(ENABLE_OVERLOADING)
ResolveGeometryMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
geometry_baseHeight ,
#endif
getGeometryBaseHeight ,
setGeometryBaseHeight ,
#if defined(ENABLE_OVERLOADING)
geometry_baseWidth ,
#endif
getGeometryBaseWidth ,
setGeometryBaseWidth ,
#if defined(ENABLE_OVERLOADING)
geometry_heightInc ,
#endif
getGeometryHeightInc ,
setGeometryHeightInc ,
#if defined(ENABLE_OVERLOADING)
geometry_maxAspect ,
#endif
getGeometryMaxAspect ,
setGeometryMaxAspect ,
#if defined(ENABLE_OVERLOADING)
geometry_maxHeight ,
#endif
getGeometryMaxHeight ,
setGeometryMaxHeight ,
#if defined(ENABLE_OVERLOADING)
geometry_maxWidth ,
#endif
getGeometryMaxWidth ,
setGeometryMaxWidth ,
#if defined(ENABLE_OVERLOADING)
geometry_minAspect ,
#endif
getGeometryMinAspect ,
setGeometryMinAspect ,
#if defined(ENABLE_OVERLOADING)
geometry_minHeight ,
#endif
getGeometryMinHeight ,
setGeometryMinHeight ,
#if defined(ENABLE_OVERLOADING)
geometry_minWidth ,
#endif
getGeometryMinWidth ,
setGeometryMinWidth ,
#if defined(ENABLE_OVERLOADING)
geometry_widthInc ,
#endif
getGeometryWidthInc ,
setGeometryWidthInc ,
#if defined(ENABLE_OVERLOADING)
geometry_winGravity ,
#endif
getGeometryWinGravity ,
setGeometryWinGravity ,
) 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
newtype Geometry = Geometry (ManagedPtr Geometry)
deriving (Eq)
instance WrappedPtr Geometry where
wrappedPtrCalloc = callocBytes 56
wrappedPtrCopy = \p -> withManagedPtr p (copyBytes 56 >=> wrapPtr Geometry)
wrappedPtrFree = Just ptr_to_g_free
newZeroGeometry :: MonadIO m => m Geometry
newZeroGeometry = liftIO $ wrappedPtrCalloc >>= wrapPtr Geometry
instance tag ~ 'AttrSet => Constructible Geometry tag where
new _ attrs = do
o <- newZeroGeometry
GI.Attributes.set o attrs
return o
noGeometry :: Maybe Geometry
noGeometry = Nothing
getGeometryMinWidth :: MonadIO m => Geometry -> m Int32
getGeometryMinWidth s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 0) :: IO Int32
return val
setGeometryMinWidth :: MonadIO m => Geometry -> Int32 -> m ()
setGeometryMinWidth s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 0) (val :: Int32)
#if defined(ENABLE_OVERLOADING)
data GeometryMinWidthFieldInfo
instance AttrInfo GeometryMinWidthFieldInfo where
type AttrBaseTypeConstraint GeometryMinWidthFieldInfo = (~) Geometry
type AttrAllowedOps GeometryMinWidthFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GeometryMinWidthFieldInfo = (~) Int32
type AttrTransferTypeConstraint GeometryMinWidthFieldInfo = (~)Int32
type AttrTransferType GeometryMinWidthFieldInfo = Int32
type AttrGetType GeometryMinWidthFieldInfo = Int32
type AttrLabel GeometryMinWidthFieldInfo = "min_width"
type AttrOrigin GeometryMinWidthFieldInfo = Geometry
attrGet = getGeometryMinWidth
attrSet = setGeometryMinWidth
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
geometry_minWidth :: AttrLabelProxy "minWidth"
geometry_minWidth = AttrLabelProxy
#endif
getGeometryMinHeight :: MonadIO m => Geometry -> m Int32
getGeometryMinHeight s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 4) :: IO Int32
return val
setGeometryMinHeight :: MonadIO m => Geometry -> Int32 -> m ()
setGeometryMinHeight s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 4) (val :: Int32)
#if defined(ENABLE_OVERLOADING)
data GeometryMinHeightFieldInfo
instance AttrInfo GeometryMinHeightFieldInfo where
type AttrBaseTypeConstraint GeometryMinHeightFieldInfo = (~) Geometry
type AttrAllowedOps GeometryMinHeightFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GeometryMinHeightFieldInfo = (~) Int32
type AttrTransferTypeConstraint GeometryMinHeightFieldInfo = (~)Int32
type AttrTransferType GeometryMinHeightFieldInfo = Int32
type AttrGetType GeometryMinHeightFieldInfo = Int32
type AttrLabel GeometryMinHeightFieldInfo = "min_height"
type AttrOrigin GeometryMinHeightFieldInfo = Geometry
attrGet = getGeometryMinHeight
attrSet = setGeometryMinHeight
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
geometry_minHeight :: AttrLabelProxy "minHeight"
geometry_minHeight = AttrLabelProxy
#endif
getGeometryMaxWidth :: MonadIO m => Geometry -> m Int32
getGeometryMaxWidth s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 8) :: IO Int32
return val
setGeometryMaxWidth :: MonadIO m => Geometry -> Int32 -> m ()
setGeometryMaxWidth s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 8) (val :: Int32)
#if defined(ENABLE_OVERLOADING)
data GeometryMaxWidthFieldInfo
instance AttrInfo GeometryMaxWidthFieldInfo where
type AttrBaseTypeConstraint GeometryMaxWidthFieldInfo = (~) Geometry
type AttrAllowedOps GeometryMaxWidthFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GeometryMaxWidthFieldInfo = (~) Int32
type AttrTransferTypeConstraint GeometryMaxWidthFieldInfo = (~)Int32
type AttrTransferType GeometryMaxWidthFieldInfo = Int32
type AttrGetType GeometryMaxWidthFieldInfo = Int32
type AttrLabel GeometryMaxWidthFieldInfo = "max_width"
type AttrOrigin GeometryMaxWidthFieldInfo = Geometry
attrGet = getGeometryMaxWidth
attrSet = setGeometryMaxWidth
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
geometry_maxWidth :: AttrLabelProxy "maxWidth"
geometry_maxWidth = AttrLabelProxy
#endif
getGeometryMaxHeight :: MonadIO m => Geometry -> m Int32
getGeometryMaxHeight s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 12) :: IO Int32
return val
setGeometryMaxHeight :: MonadIO m => Geometry -> Int32 -> m ()
setGeometryMaxHeight s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 12) (val :: Int32)
#if defined(ENABLE_OVERLOADING)
data GeometryMaxHeightFieldInfo
instance AttrInfo GeometryMaxHeightFieldInfo where
type AttrBaseTypeConstraint GeometryMaxHeightFieldInfo = (~) Geometry
type AttrAllowedOps GeometryMaxHeightFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GeometryMaxHeightFieldInfo = (~) Int32
type AttrTransferTypeConstraint GeometryMaxHeightFieldInfo = (~)Int32
type AttrTransferType GeometryMaxHeightFieldInfo = Int32
type AttrGetType GeometryMaxHeightFieldInfo = Int32
type AttrLabel GeometryMaxHeightFieldInfo = "max_height"
type AttrOrigin GeometryMaxHeightFieldInfo = Geometry
attrGet = getGeometryMaxHeight
attrSet = setGeometryMaxHeight
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
geometry_maxHeight :: AttrLabelProxy "maxHeight"
geometry_maxHeight = AttrLabelProxy
#endif
getGeometryBaseWidth :: MonadIO m => Geometry -> m Int32
getGeometryBaseWidth s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 16) :: IO Int32
return val
setGeometryBaseWidth :: MonadIO m => Geometry -> Int32 -> m ()
setGeometryBaseWidth s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 16) (val :: Int32)
#if defined(ENABLE_OVERLOADING)
data GeometryBaseWidthFieldInfo
instance AttrInfo GeometryBaseWidthFieldInfo where
type AttrBaseTypeConstraint GeometryBaseWidthFieldInfo = (~) Geometry
type AttrAllowedOps GeometryBaseWidthFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GeometryBaseWidthFieldInfo = (~) Int32
type AttrTransferTypeConstraint GeometryBaseWidthFieldInfo = (~)Int32
type AttrTransferType GeometryBaseWidthFieldInfo = Int32
type AttrGetType GeometryBaseWidthFieldInfo = Int32
type AttrLabel GeometryBaseWidthFieldInfo = "base_width"
type AttrOrigin GeometryBaseWidthFieldInfo = Geometry
attrGet = getGeometryBaseWidth
attrSet = setGeometryBaseWidth
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
geometry_baseWidth :: AttrLabelProxy "baseWidth"
geometry_baseWidth = AttrLabelProxy
#endif
getGeometryBaseHeight :: MonadIO m => Geometry -> m Int32
getGeometryBaseHeight s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 20) :: IO Int32
return val
setGeometryBaseHeight :: MonadIO m => Geometry -> Int32 -> m ()
setGeometryBaseHeight s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 20) (val :: Int32)
#if defined(ENABLE_OVERLOADING)
data GeometryBaseHeightFieldInfo
instance AttrInfo GeometryBaseHeightFieldInfo where
type AttrBaseTypeConstraint GeometryBaseHeightFieldInfo = (~) Geometry
type AttrAllowedOps GeometryBaseHeightFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GeometryBaseHeightFieldInfo = (~) Int32
type AttrTransferTypeConstraint GeometryBaseHeightFieldInfo = (~)Int32
type AttrTransferType GeometryBaseHeightFieldInfo = Int32
type AttrGetType GeometryBaseHeightFieldInfo = Int32
type AttrLabel GeometryBaseHeightFieldInfo = "base_height"
type AttrOrigin GeometryBaseHeightFieldInfo = Geometry
attrGet = getGeometryBaseHeight
attrSet = setGeometryBaseHeight
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
geometry_baseHeight :: AttrLabelProxy "baseHeight"
geometry_baseHeight = AttrLabelProxy
#endif
getGeometryWidthInc :: MonadIO m => Geometry -> m Int32
getGeometryWidthInc s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 24) :: IO Int32
return val
setGeometryWidthInc :: MonadIO m => Geometry -> Int32 -> m ()
setGeometryWidthInc s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 24) (val :: Int32)
#if defined(ENABLE_OVERLOADING)
data GeometryWidthIncFieldInfo
instance AttrInfo GeometryWidthIncFieldInfo where
type AttrBaseTypeConstraint GeometryWidthIncFieldInfo = (~) Geometry
type AttrAllowedOps GeometryWidthIncFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GeometryWidthIncFieldInfo = (~) Int32
type AttrTransferTypeConstraint GeometryWidthIncFieldInfo = (~)Int32
type AttrTransferType GeometryWidthIncFieldInfo = Int32
type AttrGetType GeometryWidthIncFieldInfo = Int32
type AttrLabel GeometryWidthIncFieldInfo = "width_inc"
type AttrOrigin GeometryWidthIncFieldInfo = Geometry
attrGet = getGeometryWidthInc
attrSet = setGeometryWidthInc
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
geometry_widthInc :: AttrLabelProxy "widthInc"
geometry_widthInc = AttrLabelProxy
#endif
getGeometryHeightInc :: MonadIO m => Geometry -> m Int32
getGeometryHeightInc s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 28) :: IO Int32
return val
setGeometryHeightInc :: MonadIO m => Geometry -> Int32 -> m ()
setGeometryHeightInc s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 28) (val :: Int32)
#if defined(ENABLE_OVERLOADING)
data GeometryHeightIncFieldInfo
instance AttrInfo GeometryHeightIncFieldInfo where
type AttrBaseTypeConstraint GeometryHeightIncFieldInfo = (~) Geometry
type AttrAllowedOps GeometryHeightIncFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GeometryHeightIncFieldInfo = (~) Int32
type AttrTransferTypeConstraint GeometryHeightIncFieldInfo = (~)Int32
type AttrTransferType GeometryHeightIncFieldInfo = Int32
type AttrGetType GeometryHeightIncFieldInfo = Int32
type AttrLabel GeometryHeightIncFieldInfo = "height_inc"
type AttrOrigin GeometryHeightIncFieldInfo = Geometry
attrGet = getGeometryHeightInc
attrSet = setGeometryHeightInc
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
geometry_heightInc :: AttrLabelProxy "heightInc"
geometry_heightInc = AttrLabelProxy
#endif
getGeometryMinAspect :: MonadIO m => Geometry -> m Double
getGeometryMinAspect s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 32) :: IO CDouble
let val' = realToFrac val
return val'
setGeometryMinAspect :: MonadIO m => Geometry -> Double -> m ()
setGeometryMinAspect s val = liftIO $ withManagedPtr s $ \ptr -> do
let val' = realToFrac val
poke (ptr `plusPtr` 32) (val' :: CDouble)
#if defined(ENABLE_OVERLOADING)
data GeometryMinAspectFieldInfo
instance AttrInfo GeometryMinAspectFieldInfo where
type AttrBaseTypeConstraint GeometryMinAspectFieldInfo = (~) Geometry
type AttrAllowedOps GeometryMinAspectFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GeometryMinAspectFieldInfo = (~) Double
type AttrTransferTypeConstraint GeometryMinAspectFieldInfo = (~)Double
type AttrTransferType GeometryMinAspectFieldInfo = Double
type AttrGetType GeometryMinAspectFieldInfo = Double
type AttrLabel GeometryMinAspectFieldInfo = "min_aspect"
type AttrOrigin GeometryMinAspectFieldInfo = Geometry
attrGet = getGeometryMinAspect
attrSet = setGeometryMinAspect
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
geometry_minAspect :: AttrLabelProxy "minAspect"
geometry_minAspect = AttrLabelProxy
#endif
getGeometryMaxAspect :: MonadIO m => Geometry -> m Double
getGeometryMaxAspect s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 40) :: IO CDouble
let val' = realToFrac val
return val'
setGeometryMaxAspect :: MonadIO m => Geometry -> Double -> m ()
setGeometryMaxAspect s val = liftIO $ withManagedPtr s $ \ptr -> do
let val' = realToFrac val
poke (ptr `plusPtr` 40) (val' :: CDouble)
#if defined(ENABLE_OVERLOADING)
data GeometryMaxAspectFieldInfo
instance AttrInfo GeometryMaxAspectFieldInfo where
type AttrBaseTypeConstraint GeometryMaxAspectFieldInfo = (~) Geometry
type AttrAllowedOps GeometryMaxAspectFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GeometryMaxAspectFieldInfo = (~) Double
type AttrTransferTypeConstraint GeometryMaxAspectFieldInfo = (~)Double
type AttrTransferType GeometryMaxAspectFieldInfo = Double
type AttrGetType GeometryMaxAspectFieldInfo = Double
type AttrLabel GeometryMaxAspectFieldInfo = "max_aspect"
type AttrOrigin GeometryMaxAspectFieldInfo = Geometry
attrGet = getGeometryMaxAspect
attrSet = setGeometryMaxAspect
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
geometry_maxAspect :: AttrLabelProxy "maxAspect"
geometry_maxAspect = AttrLabelProxy
#endif
getGeometryWinGravity :: MonadIO m => Geometry -> m Gdk.Enums.Gravity
getGeometryWinGravity s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 48) :: IO CUInt
let val' = (toEnum . fromIntegral) val
return val'
setGeometryWinGravity :: MonadIO m => Geometry -> Gdk.Enums.Gravity -> m ()
setGeometryWinGravity s val = liftIO $ withManagedPtr s $ \ptr -> do
let val' = (fromIntegral . fromEnum) val
poke (ptr `plusPtr` 48) (val' :: CUInt)
#if defined(ENABLE_OVERLOADING)
data GeometryWinGravityFieldInfo
instance AttrInfo GeometryWinGravityFieldInfo where
type AttrBaseTypeConstraint GeometryWinGravityFieldInfo = (~) Geometry
type AttrAllowedOps GeometryWinGravityFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GeometryWinGravityFieldInfo = (~) Gdk.Enums.Gravity
type AttrTransferTypeConstraint GeometryWinGravityFieldInfo = (~)Gdk.Enums.Gravity
type AttrTransferType GeometryWinGravityFieldInfo = Gdk.Enums.Gravity
type AttrGetType GeometryWinGravityFieldInfo = Gdk.Enums.Gravity
type AttrLabel GeometryWinGravityFieldInfo = "win_gravity"
type AttrOrigin GeometryWinGravityFieldInfo = Geometry
attrGet = getGeometryWinGravity
attrSet = setGeometryWinGravity
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
geometry_winGravity :: AttrLabelProxy "winGravity"
geometry_winGravity = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList Geometry
type instance O.AttributeList Geometry = GeometryAttributeList
type GeometryAttributeList = ('[ '("minWidth", GeometryMinWidthFieldInfo), '("minHeight", GeometryMinHeightFieldInfo), '("maxWidth", GeometryMaxWidthFieldInfo), '("maxHeight", GeometryMaxHeightFieldInfo), '("baseWidth", GeometryBaseWidthFieldInfo), '("baseHeight", GeometryBaseHeightFieldInfo), '("widthInc", GeometryWidthIncFieldInfo), '("heightInc", GeometryHeightIncFieldInfo), '("minAspect", GeometryMinAspectFieldInfo), '("maxAspect", GeometryMaxAspectFieldInfo), '("winGravity", GeometryWinGravityFieldInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolveGeometryMethod (t :: Symbol) (o :: *) :: * where
ResolveGeometryMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveGeometryMethod t Geometry, O.MethodInfo info Geometry p) => OL.IsLabel t (Geometry -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#endif