{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gtk.Objects.CellAreaContext
    ( 
    CellAreaContext(..)                     ,
    IsCellAreaContext                       ,
    toCellAreaContext                       ,
 
#if defined(ENABLE_OVERLOADING)
    ResolveCellAreaContextMethod            ,
#endif
#if defined(ENABLE_OVERLOADING)
    CellAreaContextAllocateMethodInfo       ,
#endif
    cellAreaContextAllocate                 ,
#if defined(ENABLE_OVERLOADING)
    CellAreaContextGetAllocationMethodInfo  ,
#endif
    cellAreaContextGetAllocation            ,
#if defined(ENABLE_OVERLOADING)
    CellAreaContextGetAreaMethodInfo        ,
#endif
    cellAreaContextGetArea                  ,
#if defined(ENABLE_OVERLOADING)
    CellAreaContextGetPreferredHeightMethodInfo,
#endif
    cellAreaContextGetPreferredHeight       ,
#if defined(ENABLE_OVERLOADING)
    CellAreaContextGetPreferredHeightForWidthMethodInfo,
#endif
    cellAreaContextGetPreferredHeightForWidth,
#if defined(ENABLE_OVERLOADING)
    CellAreaContextGetPreferredWidthMethodInfo,
#endif
    cellAreaContextGetPreferredWidth        ,
#if defined(ENABLE_OVERLOADING)
    CellAreaContextGetPreferredWidthForHeightMethodInfo,
#endif
    cellAreaContextGetPreferredWidthForHeight,
#if defined(ENABLE_OVERLOADING)
    CellAreaContextPushPreferredHeightMethodInfo,
#endif
    cellAreaContextPushPreferredHeight      ,
#if defined(ENABLE_OVERLOADING)
    CellAreaContextPushPreferredWidthMethodInfo,
#endif
    cellAreaContextPushPreferredWidth       ,
#if defined(ENABLE_OVERLOADING)
    CellAreaContextResetMethodInfo          ,
#endif
    cellAreaContextReset                    ,
 
#if defined(ENABLE_OVERLOADING)
    CellAreaContextAreaPropertyInfo         ,
#endif
#if defined(ENABLE_OVERLOADING)
    cellAreaContextArea                     ,
#endif
    constructCellAreaContextArea            ,
    getCellAreaContextArea                  ,
#if defined(ENABLE_OVERLOADING)
    CellAreaContextMinimumHeightPropertyInfo,
#endif
#if defined(ENABLE_OVERLOADING)
    cellAreaContextMinimumHeight            ,
#endif
    getCellAreaContextMinimumHeight         ,
#if defined(ENABLE_OVERLOADING)
    CellAreaContextMinimumWidthPropertyInfo ,
#endif
#if defined(ENABLE_OVERLOADING)
    cellAreaContextMinimumWidth             ,
#endif
    getCellAreaContextMinimumWidth          ,
#if defined(ENABLE_OVERLOADING)
    CellAreaContextNaturalHeightPropertyInfo,
#endif
#if defined(ENABLE_OVERLOADING)
    cellAreaContextNaturalHeight            ,
#endif
    getCellAreaContextNaturalHeight         ,
#if defined(ENABLE_OVERLOADING)
    CellAreaContextNaturalWidthPropertyInfo ,
#endif
#if defined(ENABLE_OVERLOADING)
    cellAreaContextNaturalWidth             ,
#endif
    getCellAreaContextNaturalWidth          ,
    ) 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 Control.Monad.IO.Class as MIO
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 qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.Gtk.Objects.CellArea as Gtk.CellArea
newtype CellAreaContext = CellAreaContext (ManagedPtr CellAreaContext)
    deriving (CellAreaContext -> CellAreaContext -> Bool
(CellAreaContext -> CellAreaContext -> Bool)
-> (CellAreaContext -> CellAreaContext -> Bool)
-> Eq CellAreaContext
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CellAreaContext -> CellAreaContext -> Bool
$c/= :: CellAreaContext -> CellAreaContext -> Bool
== :: CellAreaContext -> CellAreaContext -> Bool
$c== :: CellAreaContext -> CellAreaContext -> Bool
Eq)
foreign import ccall "gtk_cell_area_context_get_type"
    c_gtk_cell_area_context_get_type :: IO GType
instance GObject CellAreaContext where
    gobjectType :: IO GType
gobjectType = IO GType
c_gtk_cell_area_context_get_type
    
instance B.GValue.IsGValue CellAreaContext where
    toGValue :: CellAreaContext -> IO GValue
toGValue CellAreaContext
o = do
        GType
gtype <- IO GType
c_gtk_cell_area_context_get_type
        CellAreaContext -> (Ptr CellAreaContext -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr CellAreaContext
o (GType
-> (GValue -> Ptr CellAreaContext -> IO ())
-> Ptr CellAreaContext
-> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr CellAreaContext -> IO ()
forall a. GObject a => GValue -> Ptr a -> IO ()
B.GValue.set_object)
        
    fromGValue :: GValue -> IO CellAreaContext
fromGValue GValue
gv = do
        Ptr CellAreaContext
ptr <- GValue -> IO (Ptr CellAreaContext)
forall b. GObject b => GValue -> IO (Ptr b)
B.GValue.get_object GValue
gv :: IO (Ptr CellAreaContext)
        (ManagedPtr CellAreaContext -> CellAreaContext)
-> Ptr CellAreaContext -> IO CellAreaContext
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr CellAreaContext -> CellAreaContext
CellAreaContext Ptr CellAreaContext
ptr
        
    
class (GObject o, O.IsDescendantOf CellAreaContext o) => IsCellAreaContext o
instance (GObject o, O.IsDescendantOf CellAreaContext o) => IsCellAreaContext o
instance O.HasParentTypes CellAreaContext
type instance O.ParentTypes CellAreaContext = '[GObject.Object.Object]
toCellAreaContext :: (MonadIO m, IsCellAreaContext o) => o -> m CellAreaContext
toCellAreaContext :: o -> m CellAreaContext
toCellAreaContext = IO CellAreaContext -> m CellAreaContext
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO CellAreaContext -> m CellAreaContext)
-> (o -> IO CellAreaContext) -> o -> m CellAreaContext
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr CellAreaContext -> CellAreaContext)
-> o -> IO CellAreaContext
forall o o'.
(HasCallStack, GObject o, GObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
unsafeCastTo ManagedPtr CellAreaContext -> CellAreaContext
CellAreaContext
#if defined(ENABLE_OVERLOADING)
type family ResolveCellAreaContextMethod (t :: Symbol) (o :: *) :: * where
    ResolveCellAreaContextMethod "allocate" o = CellAreaContextAllocateMethodInfo
    ResolveCellAreaContextMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveCellAreaContextMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveCellAreaContextMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveCellAreaContextMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveCellAreaContextMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveCellAreaContextMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveCellAreaContextMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveCellAreaContextMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveCellAreaContextMethod "pushPreferredHeight" o = CellAreaContextPushPreferredHeightMethodInfo
    ResolveCellAreaContextMethod "pushPreferredWidth" o = CellAreaContextPushPreferredWidthMethodInfo
    ResolveCellAreaContextMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveCellAreaContextMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveCellAreaContextMethod "reset" o = CellAreaContextResetMethodInfo
    ResolveCellAreaContextMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveCellAreaContextMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveCellAreaContextMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveCellAreaContextMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveCellAreaContextMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveCellAreaContextMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveCellAreaContextMethod "getAllocation" o = CellAreaContextGetAllocationMethodInfo
    ResolveCellAreaContextMethod "getArea" o = CellAreaContextGetAreaMethodInfo
    ResolveCellAreaContextMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveCellAreaContextMethod "getPreferredHeight" o = CellAreaContextGetPreferredHeightMethodInfo
    ResolveCellAreaContextMethod "getPreferredHeightForWidth" o = CellAreaContextGetPreferredHeightForWidthMethodInfo
    ResolveCellAreaContextMethod "getPreferredWidth" o = CellAreaContextGetPreferredWidthMethodInfo
    ResolveCellAreaContextMethod "getPreferredWidthForHeight" o = CellAreaContextGetPreferredWidthForHeightMethodInfo
    ResolveCellAreaContextMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveCellAreaContextMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveCellAreaContextMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveCellAreaContextMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
    ResolveCellAreaContextMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveCellAreaContextMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveCellAreaContextMethod t CellAreaContext, O.MethodInfo info CellAreaContext p) => OL.IsLabel t (CellAreaContext -> p) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.overloadedMethod @info
#else
    fromLabel _ = O.overloadedMethod @info
#endif
#endif
   
   
   
getCellAreaContextArea :: (MonadIO m, IsCellAreaContext o) => o -> m Gtk.CellArea.CellArea
getCellAreaContextArea :: o -> m CellArea
getCellAreaContextArea o
obj = IO CellArea -> m CellArea
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO CellArea -> m CellArea) -> IO CellArea -> m CellArea
forall a b. (a -> b) -> a -> b
$ Text -> IO (Maybe CellArea) -> IO CellArea
forall a. HasCallStack => Text -> IO (Maybe a) -> IO a
checkUnexpectedNothing Text
"getCellAreaContextArea" (IO (Maybe CellArea) -> IO CellArea)
-> IO (Maybe CellArea) -> IO CellArea
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr CellArea -> CellArea)
-> IO (Maybe CellArea)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"area" ManagedPtr CellArea -> CellArea
Gtk.CellArea.CellArea
constructCellAreaContextArea :: (IsCellAreaContext o, MIO.MonadIO m, Gtk.CellArea.IsCellArea a) => a -> m (GValueConstruct o)
constructCellAreaContextArea :: a -> m (GValueConstruct o)
constructCellAreaContextArea a
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe a -> IO (GValueConstruct o)
forall a o.
GObject a =>
String -> Maybe a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyObject String
"area" (a -> Maybe a
forall a. a -> Maybe a
P.Just a
val)
#if defined(ENABLE_OVERLOADING)
data CellAreaContextAreaPropertyInfo
instance AttrInfo CellAreaContextAreaPropertyInfo where
    type AttrAllowedOps CellAreaContextAreaPropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint CellAreaContextAreaPropertyInfo = IsCellAreaContext
    type AttrSetTypeConstraint CellAreaContextAreaPropertyInfo = Gtk.CellArea.IsCellArea
    type AttrTransferTypeConstraint CellAreaContextAreaPropertyInfo = Gtk.CellArea.IsCellArea
    type AttrTransferType CellAreaContextAreaPropertyInfo = Gtk.CellArea.CellArea
    type AttrGetType CellAreaContextAreaPropertyInfo = Gtk.CellArea.CellArea
    type AttrLabel CellAreaContextAreaPropertyInfo = "area"
    type AttrOrigin CellAreaContextAreaPropertyInfo = CellAreaContext
    attrGet = getCellAreaContextArea
    attrSet = undefined
    attrTransfer _ v = do
        unsafeCastTo Gtk.CellArea.CellArea v
    attrConstruct = constructCellAreaContextArea
    attrClear = undefined
#endif
   
   
   
getCellAreaContextMinimumHeight :: (MonadIO m, IsCellAreaContext o) => o -> m Int32
getCellAreaContextMinimumHeight :: o -> m Int32
getCellAreaContextMinimumHeight o
obj = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Int32
forall a. GObject a => a -> String -> IO Int32
B.Properties.getObjectPropertyInt32 o
obj String
"minimum-height"
#if defined(ENABLE_OVERLOADING)
data CellAreaContextMinimumHeightPropertyInfo
instance AttrInfo CellAreaContextMinimumHeightPropertyInfo where
    type AttrAllowedOps CellAreaContextMinimumHeightPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint CellAreaContextMinimumHeightPropertyInfo = IsCellAreaContext
    type AttrSetTypeConstraint CellAreaContextMinimumHeightPropertyInfo = (~) ()
    type AttrTransferTypeConstraint CellAreaContextMinimumHeightPropertyInfo = (~) ()
    type AttrTransferType CellAreaContextMinimumHeightPropertyInfo = ()
    type AttrGetType CellAreaContextMinimumHeightPropertyInfo = Int32
    type AttrLabel CellAreaContextMinimumHeightPropertyInfo = "minimum-height"
    type AttrOrigin CellAreaContextMinimumHeightPropertyInfo = CellAreaContext
    attrGet = getCellAreaContextMinimumHeight
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif
   
   
   
getCellAreaContextMinimumWidth :: (MonadIO m, IsCellAreaContext o) => o -> m Int32
getCellAreaContextMinimumWidth :: o -> m Int32
getCellAreaContextMinimumWidth o
obj = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Int32
forall a. GObject a => a -> String -> IO Int32
B.Properties.getObjectPropertyInt32 o
obj String
"minimum-width"
#if defined(ENABLE_OVERLOADING)
data CellAreaContextMinimumWidthPropertyInfo
instance AttrInfo CellAreaContextMinimumWidthPropertyInfo where
    type AttrAllowedOps CellAreaContextMinimumWidthPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint CellAreaContextMinimumWidthPropertyInfo = IsCellAreaContext
    type AttrSetTypeConstraint CellAreaContextMinimumWidthPropertyInfo = (~) ()
    type AttrTransferTypeConstraint CellAreaContextMinimumWidthPropertyInfo = (~) ()
    type AttrTransferType CellAreaContextMinimumWidthPropertyInfo = ()
    type AttrGetType CellAreaContextMinimumWidthPropertyInfo = Int32
    type AttrLabel CellAreaContextMinimumWidthPropertyInfo = "minimum-width"
    type AttrOrigin CellAreaContextMinimumWidthPropertyInfo = CellAreaContext
    attrGet = getCellAreaContextMinimumWidth
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif
   
   
   
getCellAreaContextNaturalHeight :: (MonadIO m, IsCellAreaContext o) => o -> m Int32
getCellAreaContextNaturalHeight :: o -> m Int32
getCellAreaContextNaturalHeight o
obj = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Int32
forall a. GObject a => a -> String -> IO Int32
B.Properties.getObjectPropertyInt32 o
obj String
"natural-height"
#if defined(ENABLE_OVERLOADING)
data CellAreaContextNaturalHeightPropertyInfo
instance AttrInfo CellAreaContextNaturalHeightPropertyInfo where
    type AttrAllowedOps CellAreaContextNaturalHeightPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint CellAreaContextNaturalHeightPropertyInfo = IsCellAreaContext
    type AttrSetTypeConstraint CellAreaContextNaturalHeightPropertyInfo = (~) ()
    type AttrTransferTypeConstraint CellAreaContextNaturalHeightPropertyInfo = (~) ()
    type AttrTransferType CellAreaContextNaturalHeightPropertyInfo = ()
    type AttrGetType CellAreaContextNaturalHeightPropertyInfo = Int32
    type AttrLabel CellAreaContextNaturalHeightPropertyInfo = "natural-height"
    type AttrOrigin CellAreaContextNaturalHeightPropertyInfo = CellAreaContext
    attrGet = getCellAreaContextNaturalHeight
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif
   
   
   
getCellAreaContextNaturalWidth :: (MonadIO m, IsCellAreaContext o) => o -> m Int32
getCellAreaContextNaturalWidth :: o -> m Int32
getCellAreaContextNaturalWidth o
obj = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Int32
forall a. GObject a => a -> String -> IO Int32
B.Properties.getObjectPropertyInt32 o
obj String
"natural-width"
#if defined(ENABLE_OVERLOADING)
data CellAreaContextNaturalWidthPropertyInfo
instance AttrInfo CellAreaContextNaturalWidthPropertyInfo where
    type AttrAllowedOps CellAreaContextNaturalWidthPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint CellAreaContextNaturalWidthPropertyInfo = IsCellAreaContext
    type AttrSetTypeConstraint CellAreaContextNaturalWidthPropertyInfo = (~) ()
    type AttrTransferTypeConstraint CellAreaContextNaturalWidthPropertyInfo = (~) ()
    type AttrTransferType CellAreaContextNaturalWidthPropertyInfo = ()
    type AttrGetType CellAreaContextNaturalWidthPropertyInfo = Int32
    type AttrLabel CellAreaContextNaturalWidthPropertyInfo = "natural-width"
    type AttrOrigin CellAreaContextNaturalWidthPropertyInfo = CellAreaContext
    attrGet = getCellAreaContextNaturalWidth
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList CellAreaContext
type instance O.AttributeList CellAreaContext = CellAreaContextAttributeList
type CellAreaContextAttributeList = ('[ '("area", CellAreaContextAreaPropertyInfo), '("minimumHeight", CellAreaContextMinimumHeightPropertyInfo), '("minimumWidth", CellAreaContextMinimumWidthPropertyInfo), '("naturalHeight", CellAreaContextNaturalHeightPropertyInfo), '("naturalWidth", CellAreaContextNaturalWidthPropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
cellAreaContextArea :: AttrLabelProxy "area"
cellAreaContextArea = AttrLabelProxy
cellAreaContextMinimumHeight :: AttrLabelProxy "minimumHeight"
cellAreaContextMinimumHeight = AttrLabelProxy
cellAreaContextMinimumWidth :: AttrLabelProxy "minimumWidth"
cellAreaContextMinimumWidth = AttrLabelProxy
cellAreaContextNaturalHeight :: AttrLabelProxy "naturalHeight"
cellAreaContextNaturalHeight = AttrLabelProxy
cellAreaContextNaturalWidth :: AttrLabelProxy "naturalWidth"
cellAreaContextNaturalWidth = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList CellAreaContext = CellAreaContextSignalList
type CellAreaContextSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "gtk_cell_area_context_allocate" gtk_cell_area_context_allocate :: 
    Ptr CellAreaContext ->                  
    Int32 ->                                
    Int32 ->                                
    IO ()
cellAreaContextAllocate ::
    (B.CallStack.HasCallStack, MonadIO m, IsCellAreaContext a) =>
    a
    
    -> Int32
    
    
    -> Int32
    
    
    -> m ()
cellAreaContextAllocate :: a -> Int32 -> Int32 -> m ()
cellAreaContextAllocate a
context Int32
width Int32
height = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr CellAreaContext
context' <- a -> IO (Ptr CellAreaContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
    Ptr CellAreaContext -> Int32 -> Int32 -> IO ()
gtk_cell_area_context_allocate Ptr CellAreaContext
context' Int32
width Int32
height
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data CellAreaContextAllocateMethodInfo
instance (signature ~ (Int32 -> Int32 -> m ()), MonadIO m, IsCellAreaContext a) => O.MethodInfo CellAreaContextAllocateMethodInfo a signature where
    overloadedMethod = cellAreaContextAllocate
#endif
foreign import ccall "gtk_cell_area_context_get_allocation" gtk_cell_area_context_get_allocation :: 
    Ptr CellAreaContext ->                  
    Ptr Int32 ->                            
    Ptr Int32 ->                            
    IO ()
cellAreaContextGetAllocation ::
    (B.CallStack.HasCallStack, MonadIO m, IsCellAreaContext a) =>
    a
    
    -> m ((Int32, Int32))
cellAreaContextGetAllocation :: a -> m (Int32, Int32)
cellAreaContextGetAllocation a
context = IO (Int32, Int32) -> m (Int32, Int32)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Int32, Int32) -> m (Int32, Int32))
-> IO (Int32, Int32) -> m (Int32, Int32)
forall a b. (a -> b) -> a -> b
$ do
    Ptr CellAreaContext
context' <- a -> IO (Ptr CellAreaContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
    Ptr Int32
width <- IO (Ptr Int32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Int32)
    Ptr Int32
height <- IO (Ptr Int32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Int32)
    Ptr CellAreaContext -> Ptr Int32 -> Ptr Int32 -> IO ()
gtk_cell_area_context_get_allocation Ptr CellAreaContext
context' Ptr Int32
width Ptr Int32
height
    Int32
width' <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek Ptr Int32
width
    Int32
height' <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek Ptr Int32
height
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
    Ptr Int32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Int32
width
    Ptr Int32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Int32
height
    (Int32, Int32) -> IO (Int32, Int32)
forall (m :: * -> *) a. Monad m => a -> m a
return (Int32
width', Int32
height')
#if defined(ENABLE_OVERLOADING)
data CellAreaContextGetAllocationMethodInfo
instance (signature ~ (m ((Int32, Int32))), MonadIO m, IsCellAreaContext a) => O.MethodInfo CellAreaContextGetAllocationMethodInfo a signature where
    overloadedMethod = cellAreaContextGetAllocation
#endif
foreign import ccall "gtk_cell_area_context_get_area" gtk_cell_area_context_get_area :: 
    Ptr CellAreaContext ->                  
    IO (Ptr Gtk.CellArea.CellArea)
cellAreaContextGetArea ::
    (B.CallStack.HasCallStack, MonadIO m, IsCellAreaContext a) =>
    a
    
    -> m Gtk.CellArea.CellArea
    
cellAreaContextGetArea :: a -> m CellArea
cellAreaContextGetArea a
context = IO CellArea -> m CellArea
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO CellArea -> m CellArea) -> IO CellArea -> m CellArea
forall a b. (a -> b) -> a -> b
$ do
    Ptr CellAreaContext
context' <- a -> IO (Ptr CellAreaContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
    Ptr CellArea
result <- Ptr CellAreaContext -> IO (Ptr CellArea)
gtk_cell_area_context_get_area Ptr CellAreaContext
context'
    Text -> Ptr CellArea -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"cellAreaContextGetArea" Ptr CellArea
result
    CellArea
result' <- ((ManagedPtr CellArea -> CellArea) -> Ptr CellArea -> IO CellArea
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr CellArea -> CellArea
Gtk.CellArea.CellArea) Ptr CellArea
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
    CellArea -> IO CellArea
forall (m :: * -> *) a. Monad m => a -> m a
return CellArea
result'
#if defined(ENABLE_OVERLOADING)
data CellAreaContextGetAreaMethodInfo
instance (signature ~ (m Gtk.CellArea.CellArea), MonadIO m, IsCellAreaContext a) => O.MethodInfo CellAreaContextGetAreaMethodInfo a signature where
    overloadedMethod = cellAreaContextGetArea
#endif
foreign import ccall "gtk_cell_area_context_get_preferred_height" gtk_cell_area_context_get_preferred_height :: 
    Ptr CellAreaContext ->                  
    Ptr Int32 ->                            
    Ptr Int32 ->                            
    IO ()
cellAreaContextGetPreferredHeight ::
    (B.CallStack.HasCallStack, MonadIO m, IsCellAreaContext a) =>
    a
    
    -> m ((Int32, Int32))
cellAreaContextGetPreferredHeight :: a -> m (Int32, Int32)
cellAreaContextGetPreferredHeight a
context = IO (Int32, Int32) -> m (Int32, Int32)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Int32, Int32) -> m (Int32, Int32))
-> IO (Int32, Int32) -> m (Int32, Int32)
forall a b. (a -> b) -> a -> b
$ do
    Ptr CellAreaContext
context' <- a -> IO (Ptr CellAreaContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
    Ptr Int32
minimumHeight <- IO (Ptr Int32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Int32)
    Ptr Int32
naturalHeight <- IO (Ptr Int32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Int32)
    Ptr CellAreaContext -> Ptr Int32 -> Ptr Int32 -> IO ()
gtk_cell_area_context_get_preferred_height Ptr CellAreaContext
context' Ptr Int32
minimumHeight Ptr Int32
naturalHeight
    Int32
minimumHeight' <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek Ptr Int32
minimumHeight
    Int32
naturalHeight' <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek Ptr Int32
naturalHeight
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
    Ptr Int32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Int32
minimumHeight
    Ptr Int32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Int32
naturalHeight
    (Int32, Int32) -> IO (Int32, Int32)
forall (m :: * -> *) a. Monad m => a -> m a
return (Int32
minimumHeight', Int32
naturalHeight')
#if defined(ENABLE_OVERLOADING)
data CellAreaContextGetPreferredHeightMethodInfo
instance (signature ~ (m ((Int32, Int32))), MonadIO m, IsCellAreaContext a) => O.MethodInfo CellAreaContextGetPreferredHeightMethodInfo a signature where
    overloadedMethod = cellAreaContextGetPreferredHeight
#endif
foreign import ccall "gtk_cell_area_context_get_preferred_height_for_width" gtk_cell_area_context_get_preferred_height_for_width :: 
    Ptr CellAreaContext ->                  
    Int32 ->                                
    Ptr Int32 ->                            
    Ptr Int32 ->                            
    IO ()
cellAreaContextGetPreferredHeightForWidth ::
    (B.CallStack.HasCallStack, MonadIO m, IsCellAreaContext a) =>
    a
    
    -> Int32
    
    -> m ((Int32, Int32))
cellAreaContextGetPreferredHeightForWidth :: a -> Int32 -> m (Int32, Int32)
cellAreaContextGetPreferredHeightForWidth a
context Int32
width = IO (Int32, Int32) -> m (Int32, Int32)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Int32, Int32) -> m (Int32, Int32))
-> IO (Int32, Int32) -> m (Int32, Int32)
forall a b. (a -> b) -> a -> b
$ do
    Ptr CellAreaContext
context' <- a -> IO (Ptr CellAreaContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
    Ptr Int32
minimumHeight <- IO (Ptr Int32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Int32)
    Ptr Int32
naturalHeight <- IO (Ptr Int32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Int32)
    Ptr CellAreaContext -> Int32 -> Ptr Int32 -> Ptr Int32 -> IO ()
gtk_cell_area_context_get_preferred_height_for_width Ptr CellAreaContext
context' Int32
width Ptr Int32
minimumHeight Ptr Int32
naturalHeight
    Int32
minimumHeight' <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek Ptr Int32
minimumHeight
    Int32
naturalHeight' <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek Ptr Int32
naturalHeight
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
    Ptr Int32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Int32
minimumHeight
    Ptr Int32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Int32
naturalHeight
    (Int32, Int32) -> IO (Int32, Int32)
forall (m :: * -> *) a. Monad m => a -> m a
return (Int32
minimumHeight', Int32
naturalHeight')
#if defined(ENABLE_OVERLOADING)
data CellAreaContextGetPreferredHeightForWidthMethodInfo
instance (signature ~ (Int32 -> m ((Int32, Int32))), MonadIO m, IsCellAreaContext a) => O.MethodInfo CellAreaContextGetPreferredHeightForWidthMethodInfo a signature where
    overloadedMethod = cellAreaContextGetPreferredHeightForWidth
#endif
foreign import ccall "gtk_cell_area_context_get_preferred_width" gtk_cell_area_context_get_preferred_width :: 
    Ptr CellAreaContext ->                  
    Ptr Int32 ->                            
    Ptr Int32 ->                            
    IO ()
cellAreaContextGetPreferredWidth ::
    (B.CallStack.HasCallStack, MonadIO m, IsCellAreaContext a) =>
    a
    
    -> m ((Int32, Int32))
cellAreaContextGetPreferredWidth :: a -> m (Int32, Int32)
cellAreaContextGetPreferredWidth a
context = IO (Int32, Int32) -> m (Int32, Int32)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Int32, Int32) -> m (Int32, Int32))
-> IO (Int32, Int32) -> m (Int32, Int32)
forall a b. (a -> b) -> a -> b
$ do
    Ptr CellAreaContext
context' <- a -> IO (Ptr CellAreaContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
    Ptr Int32
minimumWidth <- IO (Ptr Int32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Int32)
    Ptr Int32
naturalWidth <- IO (Ptr Int32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Int32)
    Ptr CellAreaContext -> Ptr Int32 -> Ptr Int32 -> IO ()
gtk_cell_area_context_get_preferred_width Ptr CellAreaContext
context' Ptr Int32
minimumWidth Ptr Int32
naturalWidth
    Int32
minimumWidth' <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek Ptr Int32
minimumWidth
    Int32
naturalWidth' <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek Ptr Int32
naturalWidth
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
    Ptr Int32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Int32
minimumWidth
    Ptr Int32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Int32
naturalWidth
    (Int32, Int32) -> IO (Int32, Int32)
forall (m :: * -> *) a. Monad m => a -> m a
return (Int32
minimumWidth', Int32
naturalWidth')
#if defined(ENABLE_OVERLOADING)
data CellAreaContextGetPreferredWidthMethodInfo
instance (signature ~ (m ((Int32, Int32))), MonadIO m, IsCellAreaContext a) => O.MethodInfo CellAreaContextGetPreferredWidthMethodInfo a signature where
    overloadedMethod = cellAreaContextGetPreferredWidth
#endif
foreign import ccall "gtk_cell_area_context_get_preferred_width_for_height" gtk_cell_area_context_get_preferred_width_for_height :: 
    Ptr CellAreaContext ->                  
    Int32 ->                                
    Ptr Int32 ->                            
    Ptr Int32 ->                            
    IO ()
cellAreaContextGetPreferredWidthForHeight ::
    (B.CallStack.HasCallStack, MonadIO m, IsCellAreaContext a) =>
    a
    
    -> Int32
    
    -> m ((Int32, Int32))
cellAreaContextGetPreferredWidthForHeight :: a -> Int32 -> m (Int32, Int32)
cellAreaContextGetPreferredWidthForHeight a
context Int32
height = IO (Int32, Int32) -> m (Int32, Int32)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Int32, Int32) -> m (Int32, Int32))
-> IO (Int32, Int32) -> m (Int32, Int32)
forall a b. (a -> b) -> a -> b
$ do
    Ptr CellAreaContext
context' <- a -> IO (Ptr CellAreaContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
    Ptr Int32
minimumWidth <- IO (Ptr Int32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Int32)
    Ptr Int32
naturalWidth <- IO (Ptr Int32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Int32)
    Ptr CellAreaContext -> Int32 -> Ptr Int32 -> Ptr Int32 -> IO ()
gtk_cell_area_context_get_preferred_width_for_height Ptr CellAreaContext
context' Int32
height Ptr Int32
minimumWidth Ptr Int32
naturalWidth
    Int32
minimumWidth' <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek Ptr Int32
minimumWidth
    Int32
naturalWidth' <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek Ptr Int32
naturalWidth
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
    Ptr Int32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Int32
minimumWidth
    Ptr Int32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Int32
naturalWidth
    (Int32, Int32) -> IO (Int32, Int32)
forall (m :: * -> *) a. Monad m => a -> m a
return (Int32
minimumWidth', Int32
naturalWidth')
#if defined(ENABLE_OVERLOADING)
data CellAreaContextGetPreferredWidthForHeightMethodInfo
instance (signature ~ (Int32 -> m ((Int32, Int32))), MonadIO m, IsCellAreaContext a) => O.MethodInfo CellAreaContextGetPreferredWidthForHeightMethodInfo a signature where
    overloadedMethod = cellAreaContextGetPreferredWidthForHeight
#endif
foreign import ccall "gtk_cell_area_context_push_preferred_height" gtk_cell_area_context_push_preferred_height :: 
    Ptr CellAreaContext ->                  
    Int32 ->                                
    Int32 ->                                
    IO ()
cellAreaContextPushPreferredHeight ::
    (B.CallStack.HasCallStack, MonadIO m, IsCellAreaContext a) =>
    a
    
    -> Int32
    
    -> Int32
    
    -> m ()
cellAreaContextPushPreferredHeight :: a -> Int32 -> Int32 -> m ()
cellAreaContextPushPreferredHeight a
context Int32
minimumHeight Int32
naturalHeight = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr CellAreaContext
context' <- a -> IO (Ptr CellAreaContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
    Ptr CellAreaContext -> Int32 -> Int32 -> IO ()
gtk_cell_area_context_push_preferred_height Ptr CellAreaContext
context' Int32
minimumHeight Int32
naturalHeight
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data CellAreaContextPushPreferredHeightMethodInfo
instance (signature ~ (Int32 -> Int32 -> m ()), MonadIO m, IsCellAreaContext a) => O.MethodInfo CellAreaContextPushPreferredHeightMethodInfo a signature where
    overloadedMethod = cellAreaContextPushPreferredHeight
#endif
foreign import ccall "gtk_cell_area_context_push_preferred_width" gtk_cell_area_context_push_preferred_width :: 
    Ptr CellAreaContext ->                  
    Int32 ->                                
    Int32 ->                                
    IO ()
cellAreaContextPushPreferredWidth ::
    (B.CallStack.HasCallStack, MonadIO m, IsCellAreaContext a) =>
    a
    
    -> Int32
    
    -> Int32
    
    -> m ()
cellAreaContextPushPreferredWidth :: a -> Int32 -> Int32 -> m ()
cellAreaContextPushPreferredWidth a
context Int32
minimumWidth Int32
naturalWidth = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr CellAreaContext
context' <- a -> IO (Ptr CellAreaContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
    Ptr CellAreaContext -> Int32 -> Int32 -> IO ()
gtk_cell_area_context_push_preferred_width Ptr CellAreaContext
context' Int32
minimumWidth Int32
naturalWidth
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data CellAreaContextPushPreferredWidthMethodInfo
instance (signature ~ (Int32 -> Int32 -> m ()), MonadIO m, IsCellAreaContext a) => O.MethodInfo CellAreaContextPushPreferredWidthMethodInfo a signature where
    overloadedMethod = cellAreaContextPushPreferredWidth
#endif
foreign import ccall "gtk_cell_area_context_reset" gtk_cell_area_context_reset :: 
    Ptr CellAreaContext ->                  
    IO ()
cellAreaContextReset ::
    (B.CallStack.HasCallStack, MonadIO m, IsCellAreaContext a) =>
    a
    
    -> m ()
cellAreaContextReset :: a -> m ()
cellAreaContextReset a
context = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr CellAreaContext
context' <- a -> IO (Ptr CellAreaContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
    Ptr CellAreaContext -> IO ()
gtk_cell_area_context_reset Ptr CellAreaContext
context'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data CellAreaContextResetMethodInfo
instance (signature ~ (m ()), MonadIO m, IsCellAreaContext a) => O.MethodInfo CellAreaContextResetMethodInfo a signature where
    overloadedMethod = cellAreaContextReset
#endif