#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Handy.Callbacks
(
C_ComboRowGetEnumValueNameFunc ,
ComboRowGetEnumValueNameFunc ,
ComboRowGetEnumValueNameFunc_WithClosures,
drop_closures_ComboRowGetEnumValueNameFunc,
dynamic_ComboRowGetEnumValueNameFunc ,
genClosure_ComboRowGetEnumValueNameFunc ,
mk_ComboRowGetEnumValueNameFunc ,
noComboRowGetEnumValueNameFunc ,
noComboRowGetEnumValueNameFunc_WithClosures,
wrap_ComboRowGetEnumValueNameFunc ,
C_ComboRowGetNameFunc ,
ComboRowGetNameFunc ,
ComboRowGetNameFunc_WithClosures ,
drop_closures_ComboRowGetNameFunc ,
dynamic_ComboRowGetNameFunc ,
genClosure_ComboRowGetNameFunc ,
mk_ComboRowGetNameFunc ,
noComboRowGetNameFunc ,
noComboRowGetNameFunc_WithClosures ,
wrap_ComboRowGetNameFunc ,
) 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.BasicTypes as B.Types
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.Handy.Objects.EnumValueObject as Handy.EnumValueObject
type C_ComboRowGetNameFunc =
Ptr GObject.Object.Object ->
Ptr () ->
IO CString
foreign import ccall "dynamic" __dynamic_C_ComboRowGetNameFunc :: FunPtr C_ComboRowGetNameFunc -> C_ComboRowGetNameFunc
dynamic_ComboRowGetNameFunc ::
(B.CallStack.HasCallStack, MonadIO m, GObject.Object.IsObject a) =>
FunPtr C_ComboRowGetNameFunc
-> a
-> Ptr ()
-> m T.Text
dynamic_ComboRowGetNameFunc :: FunPtr C_ComboRowGetNameFunc -> a -> Ptr () -> m Text
dynamic_ComboRowGetNameFunc FunPtr C_ComboRowGetNameFunc
__funPtr a
item Ptr ()
userData = IO Text -> m Text
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
Ptr Object
item' <- a -> IO (Ptr Object)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
item
CString
result <- (FunPtr C_ComboRowGetNameFunc -> C_ComboRowGetNameFunc
__dynamic_C_ComboRowGetNameFunc FunPtr C_ComboRowGetNameFunc
__funPtr) Ptr Object
item' Ptr ()
userData
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"comboRowGetNameFunc" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
item
Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
foreign import ccall "wrapper"
mk_ComboRowGetNameFunc :: C_ComboRowGetNameFunc -> IO (FunPtr C_ComboRowGetNameFunc)
type ComboRowGetNameFunc =
GObject.Object.Object
-> IO T.Text
noComboRowGetNameFunc :: Maybe ComboRowGetNameFunc
noComboRowGetNameFunc :: Maybe ComboRowGetNameFunc
noComboRowGetNameFunc = Maybe ComboRowGetNameFunc
forall a. Maybe a
Nothing
type ComboRowGetNameFunc_WithClosures =
GObject.Object.Object
-> Ptr ()
-> IO T.Text
noComboRowGetNameFunc_WithClosures :: Maybe ComboRowGetNameFunc_WithClosures
noComboRowGetNameFunc_WithClosures :: Maybe ComboRowGetNameFunc_WithClosures
noComboRowGetNameFunc_WithClosures = Maybe ComboRowGetNameFunc_WithClosures
forall a. Maybe a
Nothing
drop_closures_ComboRowGetNameFunc :: ComboRowGetNameFunc -> ComboRowGetNameFunc_WithClosures
drop_closures_ComboRowGetNameFunc :: ComboRowGetNameFunc -> ComboRowGetNameFunc_WithClosures
drop_closures_ComboRowGetNameFunc ComboRowGetNameFunc
_f Object
item Ptr ()
_ = ComboRowGetNameFunc
_f Object
item
genClosure_ComboRowGetNameFunc :: MonadIO m => ComboRowGetNameFunc -> m (GClosure C_ComboRowGetNameFunc)
genClosure_ComboRowGetNameFunc :: ComboRowGetNameFunc -> m (GClosure C_ComboRowGetNameFunc)
genClosure_ComboRowGetNameFunc ComboRowGetNameFunc
cb = IO (GClosure C_ComboRowGetNameFunc)
-> m (GClosure C_ComboRowGetNameFunc)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ComboRowGetNameFunc)
-> m (GClosure C_ComboRowGetNameFunc))
-> IO (GClosure C_ComboRowGetNameFunc)
-> m (GClosure C_ComboRowGetNameFunc)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: ComboRowGetNameFunc_WithClosures
cb' = ComboRowGetNameFunc -> ComboRowGetNameFunc_WithClosures
drop_closures_ComboRowGetNameFunc ComboRowGetNameFunc
cb
let cb'' :: C_ComboRowGetNameFunc
cb'' = Maybe (Ptr (FunPtr C_ComboRowGetNameFunc))
-> ComboRowGetNameFunc_WithClosures -> C_ComboRowGetNameFunc
wrap_ComboRowGetNameFunc Maybe (Ptr (FunPtr C_ComboRowGetNameFunc))
forall a. Maybe a
Nothing ComboRowGetNameFunc_WithClosures
cb'
C_ComboRowGetNameFunc -> IO (FunPtr C_ComboRowGetNameFunc)
mk_ComboRowGetNameFunc C_ComboRowGetNameFunc
cb'' IO (FunPtr C_ComboRowGetNameFunc)
-> (FunPtr C_ComboRowGetNameFunc
-> IO (GClosure C_ComboRowGetNameFunc))
-> IO (GClosure C_ComboRowGetNameFunc)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ComboRowGetNameFunc -> IO (GClosure C_ComboRowGetNameFunc)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_ComboRowGetNameFunc ::
Maybe (Ptr (FunPtr C_ComboRowGetNameFunc)) ->
ComboRowGetNameFunc_WithClosures ->
C_ComboRowGetNameFunc
wrap_ComboRowGetNameFunc :: Maybe (Ptr (FunPtr C_ComboRowGetNameFunc))
-> ComboRowGetNameFunc_WithClosures -> C_ComboRowGetNameFunc
wrap_ComboRowGetNameFunc Maybe (Ptr (FunPtr C_ComboRowGetNameFunc))
funptrptr ComboRowGetNameFunc_WithClosures
_cb Ptr Object
item Ptr ()
userData = do
Object
item' <- ((ManagedPtr Object -> Object) -> Ptr Object -> IO Object
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Object -> Object
GObject.Object.Object) Ptr Object
item
Text
result <- ComboRowGetNameFunc_WithClosures
_cb Object
item' Ptr ()
userData
Maybe (Ptr (FunPtr C_ComboRowGetNameFunc)) -> IO ()
forall a. Maybe (Ptr (FunPtr a)) -> IO ()
maybeReleaseFunPtr Maybe (Ptr (FunPtr C_ComboRowGetNameFunc))
funptrptr
CString
result' <- Text -> IO CString
textToCString Text
result
CString -> IO CString
forall (m :: * -> *) a. Monad m => a -> m a
return CString
result'
type C_ComboRowGetEnumValueNameFunc =
Ptr Handy.EnumValueObject.EnumValueObject ->
Ptr () ->
IO CString
foreign import ccall "dynamic" __dynamic_C_ComboRowGetEnumValueNameFunc :: FunPtr C_ComboRowGetEnumValueNameFunc -> C_ComboRowGetEnumValueNameFunc
dynamic_ComboRowGetEnumValueNameFunc ::
(B.CallStack.HasCallStack, MonadIO m, Handy.EnumValueObject.IsEnumValueObject a) =>
FunPtr C_ComboRowGetEnumValueNameFunc
-> a
-> Ptr ()
-> m T.Text
dynamic_ComboRowGetEnumValueNameFunc :: FunPtr C_ComboRowGetEnumValueNameFunc -> a -> Ptr () -> m Text
dynamic_ComboRowGetEnumValueNameFunc FunPtr C_ComboRowGetEnumValueNameFunc
__funPtr a
value Ptr ()
userData = IO Text -> m Text
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
Ptr EnumValueObject
value' <- a -> IO (Ptr EnumValueObject)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
value
CString
result <- (FunPtr C_ComboRowGetEnumValueNameFunc
-> C_ComboRowGetEnumValueNameFunc
__dynamic_C_ComboRowGetEnumValueNameFunc FunPtr C_ComboRowGetEnumValueNameFunc
__funPtr) Ptr EnumValueObject
value' Ptr ()
userData
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"comboRowGetEnumValueNameFunc" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
value
Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
foreign import ccall "wrapper"
mk_ComboRowGetEnumValueNameFunc :: C_ComboRowGetEnumValueNameFunc -> IO (FunPtr C_ComboRowGetEnumValueNameFunc)
type ComboRowGetEnumValueNameFunc =
Handy.EnumValueObject.EnumValueObject
-> IO T.Text
noComboRowGetEnumValueNameFunc :: Maybe ComboRowGetEnumValueNameFunc
noComboRowGetEnumValueNameFunc :: Maybe ComboRowGetEnumValueNameFunc
noComboRowGetEnumValueNameFunc = Maybe ComboRowGetEnumValueNameFunc
forall a. Maybe a
Nothing
type ComboRowGetEnumValueNameFunc_WithClosures =
Handy.EnumValueObject.EnumValueObject
-> Ptr ()
-> IO T.Text
noComboRowGetEnumValueNameFunc_WithClosures :: Maybe ComboRowGetEnumValueNameFunc_WithClosures
noComboRowGetEnumValueNameFunc_WithClosures :: Maybe ComboRowGetEnumValueNameFunc_WithClosures
noComboRowGetEnumValueNameFunc_WithClosures = Maybe ComboRowGetEnumValueNameFunc_WithClosures
forall a. Maybe a
Nothing
drop_closures_ComboRowGetEnumValueNameFunc :: ComboRowGetEnumValueNameFunc -> ComboRowGetEnumValueNameFunc_WithClosures
drop_closures_ComboRowGetEnumValueNameFunc :: ComboRowGetEnumValueNameFunc
-> ComboRowGetEnumValueNameFunc_WithClosures
drop_closures_ComboRowGetEnumValueNameFunc ComboRowGetEnumValueNameFunc
_f EnumValueObject
value Ptr ()
_ = ComboRowGetEnumValueNameFunc
_f EnumValueObject
value
genClosure_ComboRowGetEnumValueNameFunc :: MonadIO m => ComboRowGetEnumValueNameFunc -> m (GClosure C_ComboRowGetEnumValueNameFunc)
genClosure_ComboRowGetEnumValueNameFunc :: ComboRowGetEnumValueNameFunc
-> m (GClosure C_ComboRowGetEnumValueNameFunc)
genClosure_ComboRowGetEnumValueNameFunc ComboRowGetEnumValueNameFunc
cb = IO (GClosure C_ComboRowGetEnumValueNameFunc)
-> m (GClosure C_ComboRowGetEnumValueNameFunc)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ComboRowGetEnumValueNameFunc)
-> m (GClosure C_ComboRowGetEnumValueNameFunc))
-> IO (GClosure C_ComboRowGetEnumValueNameFunc)
-> m (GClosure C_ComboRowGetEnumValueNameFunc)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: ComboRowGetEnumValueNameFunc_WithClosures
cb' = ComboRowGetEnumValueNameFunc
-> ComboRowGetEnumValueNameFunc_WithClosures
drop_closures_ComboRowGetEnumValueNameFunc ComboRowGetEnumValueNameFunc
cb
let cb'' :: C_ComboRowGetEnumValueNameFunc
cb'' = Maybe (Ptr (FunPtr C_ComboRowGetEnumValueNameFunc))
-> ComboRowGetEnumValueNameFunc_WithClosures
-> C_ComboRowGetEnumValueNameFunc
wrap_ComboRowGetEnumValueNameFunc Maybe (Ptr (FunPtr C_ComboRowGetEnumValueNameFunc))
forall a. Maybe a
Nothing ComboRowGetEnumValueNameFunc_WithClosures
cb'
C_ComboRowGetEnumValueNameFunc
-> IO (FunPtr C_ComboRowGetEnumValueNameFunc)
mk_ComboRowGetEnumValueNameFunc C_ComboRowGetEnumValueNameFunc
cb'' IO (FunPtr C_ComboRowGetEnumValueNameFunc)
-> (FunPtr C_ComboRowGetEnumValueNameFunc
-> IO (GClosure C_ComboRowGetEnumValueNameFunc))
-> IO (GClosure C_ComboRowGetEnumValueNameFunc)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ComboRowGetEnumValueNameFunc
-> IO (GClosure C_ComboRowGetEnumValueNameFunc)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_ComboRowGetEnumValueNameFunc ::
Maybe (Ptr (FunPtr C_ComboRowGetEnumValueNameFunc)) ->
ComboRowGetEnumValueNameFunc_WithClosures ->
C_ComboRowGetEnumValueNameFunc
wrap_ComboRowGetEnumValueNameFunc :: Maybe (Ptr (FunPtr C_ComboRowGetEnumValueNameFunc))
-> ComboRowGetEnumValueNameFunc_WithClosures
-> C_ComboRowGetEnumValueNameFunc
wrap_ComboRowGetEnumValueNameFunc Maybe (Ptr (FunPtr C_ComboRowGetEnumValueNameFunc))
funptrptr ComboRowGetEnumValueNameFunc_WithClosures
_cb Ptr EnumValueObject
value Ptr ()
userData = do
EnumValueObject
value' <- ((ManagedPtr EnumValueObject -> EnumValueObject)
-> Ptr EnumValueObject -> IO EnumValueObject
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr EnumValueObject -> EnumValueObject
Handy.EnumValueObject.EnumValueObject) Ptr EnumValueObject
value
Text
result <- ComboRowGetEnumValueNameFunc_WithClosures
_cb EnumValueObject
value' Ptr ()
userData
Maybe (Ptr (FunPtr C_ComboRowGetEnumValueNameFunc)) -> IO ()
forall a. Maybe (Ptr (FunPtr a)) -> IO ()
maybeReleaseFunPtr Maybe (Ptr (FunPtr C_ComboRowGetEnumValueNameFunc))
funptrptr
CString
result' <- Text -> IO CString
textToCString Text
result
CString -> IO CString
forall (m :: * -> *) a. Monad m => a -> m a
return CString
result'