{-# LANGUAGE ImplicitParams, RankNTypes, TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Ggit.Objects.RemoteCallbacks
(
RemoteCallbacks(..) ,
IsRemoteCallbacks ,
toRemoteCallbacks ,
#if defined(ENABLE_OVERLOADING)
ResolveRemoteCallbacksMethod ,
#endif
RemoteCallbacksCompletionCallback ,
#if defined(ENABLE_OVERLOADING)
RemoteCallbacksCompletionSignalInfo ,
#endif
afterRemoteCallbacksCompletion ,
onRemoteCallbacksCompletion ,
RemoteCallbacksProgressCallback ,
#if defined(ENABLE_OVERLOADING)
RemoteCallbacksProgressSignalInfo ,
#endif
afterRemoteCallbacksProgress ,
onRemoteCallbacksProgress ,
RemoteCallbacksTransferProgressCallback ,
#if defined(ENABLE_OVERLOADING)
RemoteCallbacksTransferProgressSignalInfo,
#endif
afterRemoteCallbacksTransferProgress ,
onRemoteCallbacksTransferProgress ,
RemoteCallbacksUpdateTipsCallback ,
#if defined(ENABLE_OVERLOADING)
RemoteCallbacksUpdateTipsSignalInfo ,
#endif
afterRemoteCallbacksUpdateTips ,
onRemoteCallbacksUpdateTips ,
) 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.GArray as B.GArray
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.Coerce as Coerce
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 GHC.Records as R
import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.Ggit.Enums as Ggit.Enums
import {-# SOURCE #-} qualified GI.Ggit.Structs.OId as Ggit.OId
import {-# SOURCE #-} qualified GI.Ggit.Structs.TransferProgress as Ggit.TransferProgress
newtype RemoteCallbacks = RemoteCallbacks (SP.ManagedPtr RemoteCallbacks)
deriving (RemoteCallbacks -> RemoteCallbacks -> Bool
(RemoteCallbacks -> RemoteCallbacks -> Bool)
-> (RemoteCallbacks -> RemoteCallbacks -> Bool)
-> Eq RemoteCallbacks
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: RemoteCallbacks -> RemoteCallbacks -> Bool
$c/= :: RemoteCallbacks -> RemoteCallbacks -> Bool
== :: RemoteCallbacks -> RemoteCallbacks -> Bool
$c== :: RemoteCallbacks -> RemoteCallbacks -> Bool
Eq)
instance SP.ManagedPtrNewtype RemoteCallbacks where
toManagedPtr :: RemoteCallbacks -> ManagedPtr RemoteCallbacks
toManagedPtr (RemoteCallbacks ManagedPtr RemoteCallbacks
p) = ManagedPtr RemoteCallbacks
p
foreign import ccall "ggit_remote_callbacks_get_type"
c_ggit_remote_callbacks_get_type :: IO B.Types.GType
instance B.Types.TypedObject RemoteCallbacks where
glibType :: IO GType
glibType = IO GType
c_ggit_remote_callbacks_get_type
instance B.Types.GObject RemoteCallbacks
class (SP.GObject o, O.IsDescendantOf RemoteCallbacks o) => IsRemoteCallbacks o
instance (SP.GObject o, O.IsDescendantOf RemoteCallbacks o) => IsRemoteCallbacks o
instance O.HasParentTypes RemoteCallbacks
type instance O.ParentTypes RemoteCallbacks = '[GObject.Object.Object]
toRemoteCallbacks :: (MIO.MonadIO m, IsRemoteCallbacks o) => o -> m RemoteCallbacks
toRemoteCallbacks :: forall (m :: * -> *) o.
(MonadIO m, IsRemoteCallbacks o) =>
o -> m RemoteCallbacks
toRemoteCallbacks = IO RemoteCallbacks -> m RemoteCallbacks
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO RemoteCallbacks -> m RemoteCallbacks)
-> (o -> IO RemoteCallbacks) -> o -> m RemoteCallbacks
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr RemoteCallbacks -> RemoteCallbacks)
-> o -> IO RemoteCallbacks
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr RemoteCallbacks -> RemoteCallbacks
RemoteCallbacks
instance B.GValue.IsGValue (Maybe RemoteCallbacks) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_ggit_remote_callbacks_get_type
gvalueSet_ :: Ptr GValue -> Maybe RemoteCallbacks -> IO ()
gvalueSet_ Ptr GValue
gv Maybe RemoteCallbacks
P.Nothing = Ptr GValue -> Ptr RemoteCallbacks -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr RemoteCallbacks
forall a. Ptr a
FP.nullPtr :: FP.Ptr RemoteCallbacks)
gvalueSet_ Ptr GValue
gv (P.Just RemoteCallbacks
obj) = RemoteCallbacks -> (Ptr RemoteCallbacks -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr RemoteCallbacks
obj (Ptr GValue -> Ptr RemoteCallbacks -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe RemoteCallbacks)
gvalueGet_ Ptr GValue
gv = do
Ptr RemoteCallbacks
ptr <- Ptr GValue -> IO (Ptr RemoteCallbacks)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr RemoteCallbacks)
if Ptr RemoteCallbacks
ptr Ptr RemoteCallbacks -> Ptr RemoteCallbacks -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr RemoteCallbacks
forall a. Ptr a
FP.nullPtr
then RemoteCallbacks -> Maybe RemoteCallbacks
forall a. a -> Maybe a
P.Just (RemoteCallbacks -> Maybe RemoteCallbacks)
-> IO RemoteCallbacks -> IO (Maybe RemoteCallbacks)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr RemoteCallbacks -> RemoteCallbacks)
-> Ptr RemoteCallbacks -> IO RemoteCallbacks
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr RemoteCallbacks -> RemoteCallbacks
RemoteCallbacks Ptr RemoteCallbacks
ptr
else Maybe RemoteCallbacks -> IO (Maybe RemoteCallbacks)
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe RemoteCallbacks
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveRemoteCallbacksMethod (t :: Symbol) (o :: *) :: * where
ResolveRemoteCallbacksMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveRemoteCallbacksMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveRemoteCallbacksMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveRemoteCallbacksMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveRemoteCallbacksMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveRemoteCallbacksMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveRemoteCallbacksMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveRemoteCallbacksMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveRemoteCallbacksMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveRemoteCallbacksMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveRemoteCallbacksMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveRemoteCallbacksMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveRemoteCallbacksMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveRemoteCallbacksMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveRemoteCallbacksMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveRemoteCallbacksMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveRemoteCallbacksMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveRemoteCallbacksMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveRemoteCallbacksMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveRemoteCallbacksMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveRemoteCallbacksMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveRemoteCallbacksMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveRemoteCallbacksMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveRemoteCallbacksMethod t RemoteCallbacks, O.OverloadedMethod info RemoteCallbacks p) => OL.IsLabel t (RemoteCallbacks -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveRemoteCallbacksMethod t RemoteCallbacks, O.OverloadedMethod info RemoteCallbacks p, R.HasField t RemoteCallbacks p) => R.HasField t RemoteCallbacks p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveRemoteCallbacksMethod t RemoteCallbacks, O.OverloadedMethodInfo info RemoteCallbacks) => OL.IsLabel t (O.MethodProxy info RemoteCallbacks) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
type RemoteCallbacksCompletionCallback =
Ggit.Enums.RemoteCompletionType
-> IO ()
type C_RemoteCallbacksCompletionCallback =
Ptr RemoteCallbacks ->
CUInt ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_RemoteCallbacksCompletionCallback :: C_RemoteCallbacksCompletionCallback -> IO (FunPtr C_RemoteCallbacksCompletionCallback)
wrap_RemoteCallbacksCompletionCallback ::
GObject a => (a -> RemoteCallbacksCompletionCallback) ->
C_RemoteCallbacksCompletionCallback
wrap_RemoteCallbacksCompletionCallback :: forall a.
GObject a =>
(a -> RemoteCallbacksCompletionCallback)
-> C_RemoteCallbacksCompletionCallback
wrap_RemoteCallbacksCompletionCallback a -> RemoteCallbacksCompletionCallback
gi'cb Ptr RemoteCallbacks
gi'selfPtr CUInt
object Ptr ()
_ = do
let object' :: RemoteCompletionType
object' = (Int -> RemoteCompletionType
forall a. Enum a => Int -> a
toEnum (Int -> RemoteCompletionType)
-> (CUInt -> Int) -> CUInt -> RemoteCompletionType
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CUInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) CUInt
object
Ptr RemoteCallbacks -> (RemoteCallbacks -> IO ()) -> IO ()
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient Ptr RemoteCallbacks
gi'selfPtr ((RemoteCallbacks -> IO ()) -> IO ())
-> (RemoteCallbacks -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \RemoteCallbacks
gi'self -> a -> RemoteCallbacksCompletionCallback
gi'cb (RemoteCallbacks -> a
Coerce.coerce RemoteCallbacks
gi'self) RemoteCompletionType
object'
onRemoteCallbacksCompletion :: (IsRemoteCallbacks a, MonadIO m) => a -> ((?self :: a) => RemoteCallbacksCompletionCallback) -> m SignalHandlerId
onRemoteCallbacksCompletion :: forall a (m :: * -> *).
(IsRemoteCallbacks a, MonadIO m) =>
a
-> ((?self::a) => RemoteCallbacksCompletionCallback)
-> m SignalHandlerId
onRemoteCallbacksCompletion a
obj (?self::a) => RemoteCallbacksCompletionCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> RemoteCallbacksCompletionCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => RemoteCallbacksCompletionCallback
RemoteCallbacksCompletionCallback
cb
let wrapped' :: C_RemoteCallbacksCompletionCallback
wrapped' = (a -> RemoteCallbacksCompletionCallback)
-> C_RemoteCallbacksCompletionCallback
forall a.
GObject a =>
(a -> RemoteCallbacksCompletionCallback)
-> C_RemoteCallbacksCompletionCallback
wrap_RemoteCallbacksCompletionCallback a -> RemoteCallbacksCompletionCallback
wrapped
FunPtr C_RemoteCallbacksCompletionCallback
wrapped'' <- C_RemoteCallbacksCompletionCallback
-> IO (FunPtr C_RemoteCallbacksCompletionCallback)
mk_RemoteCallbacksCompletionCallback C_RemoteCallbacksCompletionCallback
wrapped'
a
-> Text
-> FunPtr C_RemoteCallbacksCompletionCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"completion" FunPtr C_RemoteCallbacksCompletionCallback
wrapped'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterRemoteCallbacksCompletion :: (IsRemoteCallbacks a, MonadIO m) => a -> ((?self :: a) => RemoteCallbacksCompletionCallback) -> m SignalHandlerId
afterRemoteCallbacksCompletion :: forall a (m :: * -> *).
(IsRemoteCallbacks a, MonadIO m) =>
a
-> ((?self::a) => RemoteCallbacksCompletionCallback)
-> m SignalHandlerId
afterRemoteCallbacksCompletion a
obj (?self::a) => RemoteCallbacksCompletionCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> RemoteCallbacksCompletionCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => RemoteCallbacksCompletionCallback
RemoteCallbacksCompletionCallback
cb
let wrapped' :: C_RemoteCallbacksCompletionCallback
wrapped' = (a -> RemoteCallbacksCompletionCallback)
-> C_RemoteCallbacksCompletionCallback
forall a.
GObject a =>
(a -> RemoteCallbacksCompletionCallback)
-> C_RemoteCallbacksCompletionCallback
wrap_RemoteCallbacksCompletionCallback a -> RemoteCallbacksCompletionCallback
wrapped
FunPtr C_RemoteCallbacksCompletionCallback
wrapped'' <- C_RemoteCallbacksCompletionCallback
-> IO (FunPtr C_RemoteCallbacksCompletionCallback)
mk_RemoteCallbacksCompletionCallback C_RemoteCallbacksCompletionCallback
wrapped'
a
-> Text
-> FunPtr C_RemoteCallbacksCompletionCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"completion" FunPtr C_RemoteCallbacksCompletionCallback
wrapped'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data RemoteCallbacksCompletionSignalInfo
instance SignalInfo RemoteCallbacksCompletionSignalInfo where
type HaskellCallbackType RemoteCallbacksCompletionSignalInfo = RemoteCallbacksCompletionCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_RemoteCallbacksCompletionCallback cb
cb'' <- mk_RemoteCallbacksCompletionCallback cb'
connectSignalFunPtr obj "completion" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Ggit.Objects.RemoteCallbacks::completion"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ggit-1.0.11/docs/GI-Ggit-Objects-RemoteCallbacks.html#g:signal:completion"})
#endif
type RemoteCallbacksProgressCallback =
T.Text
-> IO ()
type C_RemoteCallbacksProgressCallback =
Ptr RemoteCallbacks ->
CString ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_RemoteCallbacksProgressCallback :: C_RemoteCallbacksProgressCallback -> IO (FunPtr C_RemoteCallbacksProgressCallback)
wrap_RemoteCallbacksProgressCallback ::
GObject a => (a -> RemoteCallbacksProgressCallback) ->
C_RemoteCallbacksProgressCallback
wrap_RemoteCallbacksProgressCallback :: forall a.
GObject a =>
(a -> RemoteCallbacksProgressCallback)
-> C_RemoteCallbacksProgressCallback
wrap_RemoteCallbacksProgressCallback a -> RemoteCallbacksProgressCallback
gi'cb Ptr RemoteCallbacks
gi'selfPtr CString
object Ptr ()
_ = do
Text
object' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
object
Ptr RemoteCallbacks -> (RemoteCallbacks -> IO ()) -> IO ()
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient Ptr RemoteCallbacks
gi'selfPtr ((RemoteCallbacks -> IO ()) -> IO ())
-> (RemoteCallbacks -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \RemoteCallbacks
gi'self -> a -> RemoteCallbacksProgressCallback
gi'cb (RemoteCallbacks -> a
Coerce.coerce RemoteCallbacks
gi'self) Text
object'
onRemoteCallbacksProgress :: (IsRemoteCallbacks a, MonadIO m) => a -> ((?self :: a) => RemoteCallbacksProgressCallback) -> m SignalHandlerId
onRemoteCallbacksProgress :: forall a (m :: * -> *).
(IsRemoteCallbacks a, MonadIO m) =>
a
-> ((?self::a) => RemoteCallbacksProgressCallback)
-> m SignalHandlerId
onRemoteCallbacksProgress a
obj (?self::a) => RemoteCallbacksProgressCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> RemoteCallbacksProgressCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => RemoteCallbacksProgressCallback
RemoteCallbacksProgressCallback
cb
let wrapped' :: C_RemoteCallbacksProgressCallback
wrapped' = (a -> RemoteCallbacksProgressCallback)
-> C_RemoteCallbacksProgressCallback
forall a.
GObject a =>
(a -> RemoteCallbacksProgressCallback)
-> C_RemoteCallbacksProgressCallback
wrap_RemoteCallbacksProgressCallback a -> RemoteCallbacksProgressCallback
wrapped
FunPtr C_RemoteCallbacksProgressCallback
wrapped'' <- C_RemoteCallbacksProgressCallback
-> IO (FunPtr C_RemoteCallbacksProgressCallback)
mk_RemoteCallbacksProgressCallback C_RemoteCallbacksProgressCallback
wrapped'
a
-> Text
-> FunPtr C_RemoteCallbacksProgressCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"progress" FunPtr C_RemoteCallbacksProgressCallback
wrapped'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterRemoteCallbacksProgress :: (IsRemoteCallbacks a, MonadIO m) => a -> ((?self :: a) => RemoteCallbacksProgressCallback) -> m SignalHandlerId
afterRemoteCallbacksProgress :: forall a (m :: * -> *).
(IsRemoteCallbacks a, MonadIO m) =>
a
-> ((?self::a) => RemoteCallbacksProgressCallback)
-> m SignalHandlerId
afterRemoteCallbacksProgress a
obj (?self::a) => RemoteCallbacksProgressCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> RemoteCallbacksProgressCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => RemoteCallbacksProgressCallback
RemoteCallbacksProgressCallback
cb
let wrapped' :: C_RemoteCallbacksProgressCallback
wrapped' = (a -> RemoteCallbacksProgressCallback)
-> C_RemoteCallbacksProgressCallback
forall a.
GObject a =>
(a -> RemoteCallbacksProgressCallback)
-> C_RemoteCallbacksProgressCallback
wrap_RemoteCallbacksProgressCallback a -> RemoteCallbacksProgressCallback
wrapped
FunPtr C_RemoteCallbacksProgressCallback
wrapped'' <- C_RemoteCallbacksProgressCallback
-> IO (FunPtr C_RemoteCallbacksProgressCallback)
mk_RemoteCallbacksProgressCallback C_RemoteCallbacksProgressCallback
wrapped'
a
-> Text
-> FunPtr C_RemoteCallbacksProgressCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"progress" FunPtr C_RemoteCallbacksProgressCallback
wrapped'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data RemoteCallbacksProgressSignalInfo
instance SignalInfo RemoteCallbacksProgressSignalInfo where
type HaskellCallbackType RemoteCallbacksProgressSignalInfo = RemoteCallbacksProgressCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_RemoteCallbacksProgressCallback cb
cb'' <- mk_RemoteCallbacksProgressCallback cb'
connectSignalFunPtr obj "progress" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Ggit.Objects.RemoteCallbacks::progress"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ggit-1.0.11/docs/GI-Ggit-Objects-RemoteCallbacks.html#g:signal:progress"})
#endif
type RemoteCallbacksTransferProgressCallback =
Ggit.TransferProgress.TransferProgress
-> IO ()
type C_RemoteCallbacksTransferProgressCallback =
Ptr RemoteCallbacks ->
Ptr Ggit.TransferProgress.TransferProgress ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_RemoteCallbacksTransferProgressCallback :: C_RemoteCallbacksTransferProgressCallback -> IO (FunPtr C_RemoteCallbacksTransferProgressCallback)
wrap_RemoteCallbacksTransferProgressCallback ::
GObject a => (a -> RemoteCallbacksTransferProgressCallback) ->
C_RemoteCallbacksTransferProgressCallback
wrap_RemoteCallbacksTransferProgressCallback :: forall a.
GObject a =>
(a -> RemoteCallbacksTransferProgressCallback)
-> C_RemoteCallbacksTransferProgressCallback
wrap_RemoteCallbacksTransferProgressCallback a -> RemoteCallbacksTransferProgressCallback
gi'cb Ptr RemoteCallbacks
gi'selfPtr Ptr TransferProgress
object Ptr ()
_ = do
Ptr TransferProgress
-> RemoteCallbacksTransferProgressCallback -> IO ()
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient Ptr TransferProgress
object (RemoteCallbacksTransferProgressCallback -> IO ())
-> RemoteCallbacksTransferProgressCallback -> IO ()
forall a b. (a -> b) -> a -> b
$ \TransferProgress
object' -> do
Ptr RemoteCallbacks -> (RemoteCallbacks -> IO ()) -> IO ()
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient Ptr RemoteCallbacks
gi'selfPtr ((RemoteCallbacks -> IO ()) -> IO ())
-> (RemoteCallbacks -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \RemoteCallbacks
gi'self -> a -> RemoteCallbacksTransferProgressCallback
gi'cb (RemoteCallbacks -> a
Coerce.coerce RemoteCallbacks
gi'self) TransferProgress
object'
onRemoteCallbacksTransferProgress :: (IsRemoteCallbacks a, MonadIO m) => a -> ((?self :: a) => RemoteCallbacksTransferProgressCallback) -> m SignalHandlerId
onRemoteCallbacksTransferProgress :: forall a (m :: * -> *).
(IsRemoteCallbacks a, MonadIO m) =>
a
-> ((?self::a) => RemoteCallbacksTransferProgressCallback)
-> m SignalHandlerId
onRemoteCallbacksTransferProgress a
obj (?self::a) => RemoteCallbacksTransferProgressCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> RemoteCallbacksTransferProgressCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => RemoteCallbacksTransferProgressCallback
RemoteCallbacksTransferProgressCallback
cb
let wrapped' :: C_RemoteCallbacksTransferProgressCallback
wrapped' = (a -> RemoteCallbacksTransferProgressCallback)
-> C_RemoteCallbacksTransferProgressCallback
forall a.
GObject a =>
(a -> RemoteCallbacksTransferProgressCallback)
-> C_RemoteCallbacksTransferProgressCallback
wrap_RemoteCallbacksTransferProgressCallback a -> RemoteCallbacksTransferProgressCallback
wrapped
FunPtr C_RemoteCallbacksTransferProgressCallback
wrapped'' <- C_RemoteCallbacksTransferProgressCallback
-> IO (FunPtr C_RemoteCallbacksTransferProgressCallback)
mk_RemoteCallbacksTransferProgressCallback C_RemoteCallbacksTransferProgressCallback
wrapped'
a
-> Text
-> FunPtr C_RemoteCallbacksTransferProgressCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"transfer-progress" FunPtr C_RemoteCallbacksTransferProgressCallback
wrapped'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterRemoteCallbacksTransferProgress :: (IsRemoteCallbacks a, MonadIO m) => a -> ((?self :: a) => RemoteCallbacksTransferProgressCallback) -> m SignalHandlerId
afterRemoteCallbacksTransferProgress :: forall a (m :: * -> *).
(IsRemoteCallbacks a, MonadIO m) =>
a
-> ((?self::a) => RemoteCallbacksTransferProgressCallback)
-> m SignalHandlerId
afterRemoteCallbacksTransferProgress a
obj (?self::a) => RemoteCallbacksTransferProgressCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> RemoteCallbacksTransferProgressCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => RemoteCallbacksTransferProgressCallback
RemoteCallbacksTransferProgressCallback
cb
let wrapped' :: C_RemoteCallbacksTransferProgressCallback
wrapped' = (a -> RemoteCallbacksTransferProgressCallback)
-> C_RemoteCallbacksTransferProgressCallback
forall a.
GObject a =>
(a -> RemoteCallbacksTransferProgressCallback)
-> C_RemoteCallbacksTransferProgressCallback
wrap_RemoteCallbacksTransferProgressCallback a -> RemoteCallbacksTransferProgressCallback
wrapped
FunPtr C_RemoteCallbacksTransferProgressCallback
wrapped'' <- C_RemoteCallbacksTransferProgressCallback
-> IO (FunPtr C_RemoteCallbacksTransferProgressCallback)
mk_RemoteCallbacksTransferProgressCallback C_RemoteCallbacksTransferProgressCallback
wrapped'
a
-> Text
-> FunPtr C_RemoteCallbacksTransferProgressCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"transfer-progress" FunPtr C_RemoteCallbacksTransferProgressCallback
wrapped'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data RemoteCallbacksTransferProgressSignalInfo
instance SignalInfo RemoteCallbacksTransferProgressSignalInfo where
type HaskellCallbackType RemoteCallbacksTransferProgressSignalInfo = RemoteCallbacksTransferProgressCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_RemoteCallbacksTransferProgressCallback cb
cb'' <- mk_RemoteCallbacksTransferProgressCallback cb'
connectSignalFunPtr obj "transfer-progress" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Ggit.Objects.RemoteCallbacks::transfer-progress"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ggit-1.0.11/docs/GI-Ggit-Objects-RemoteCallbacks.html#g:signal:transferProgress"})
#endif
type RemoteCallbacksUpdateTipsCallback =
T.Text
-> Ggit.OId.OId
-> Ggit.OId.OId
-> IO ()
type C_RemoteCallbacksUpdateTipsCallback =
Ptr RemoteCallbacks ->
CString ->
Ptr Ggit.OId.OId ->
Ptr Ggit.OId.OId ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_RemoteCallbacksUpdateTipsCallback :: C_RemoteCallbacksUpdateTipsCallback -> IO (FunPtr C_RemoteCallbacksUpdateTipsCallback)
wrap_RemoteCallbacksUpdateTipsCallback ::
GObject a => (a -> RemoteCallbacksUpdateTipsCallback) ->
C_RemoteCallbacksUpdateTipsCallback
wrap_RemoteCallbacksUpdateTipsCallback :: forall a.
GObject a =>
(a -> RemoteCallbacksUpdateTipsCallback)
-> C_RemoteCallbacksUpdateTipsCallback
wrap_RemoteCallbacksUpdateTipsCallback a -> RemoteCallbacksUpdateTipsCallback
gi'cb Ptr RemoteCallbacks
gi'selfPtr CString
object Ptr OId
p0 Ptr OId
p1 Ptr ()
_ = do
Text
object' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
object
Ptr OId -> (OId -> IO ()) -> IO ()
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient Ptr OId
p0 ((OId -> IO ()) -> IO ()) -> (OId -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \OId
p0' -> do
Ptr OId -> (OId -> IO ()) -> IO ()
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient Ptr OId
p1 ((OId -> IO ()) -> IO ()) -> (OId -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \OId
p1' -> do
Ptr RemoteCallbacks -> (RemoteCallbacks -> IO ()) -> IO ()
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient Ptr RemoteCallbacks
gi'selfPtr ((RemoteCallbacks -> IO ()) -> IO ())
-> (RemoteCallbacks -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \RemoteCallbacks
gi'self -> a -> RemoteCallbacksUpdateTipsCallback
gi'cb (RemoteCallbacks -> a
Coerce.coerce RemoteCallbacks
gi'self) Text
object' OId
p0' OId
p1'
onRemoteCallbacksUpdateTips :: (IsRemoteCallbacks a, MonadIO m) => a -> ((?self :: a) => RemoteCallbacksUpdateTipsCallback) -> m SignalHandlerId
onRemoteCallbacksUpdateTips :: forall a (m :: * -> *).
(IsRemoteCallbacks a, MonadIO m) =>
a
-> ((?self::a) => RemoteCallbacksUpdateTipsCallback)
-> m SignalHandlerId
onRemoteCallbacksUpdateTips a
obj (?self::a) => RemoteCallbacksUpdateTipsCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> RemoteCallbacksUpdateTipsCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => RemoteCallbacksUpdateTipsCallback
RemoteCallbacksUpdateTipsCallback
cb
let wrapped' :: C_RemoteCallbacksUpdateTipsCallback
wrapped' = (a -> RemoteCallbacksUpdateTipsCallback)
-> C_RemoteCallbacksUpdateTipsCallback
forall a.
GObject a =>
(a -> RemoteCallbacksUpdateTipsCallback)
-> C_RemoteCallbacksUpdateTipsCallback
wrap_RemoteCallbacksUpdateTipsCallback a -> RemoteCallbacksUpdateTipsCallback
wrapped
FunPtr C_RemoteCallbacksUpdateTipsCallback
wrapped'' <- C_RemoteCallbacksUpdateTipsCallback
-> IO (FunPtr C_RemoteCallbacksUpdateTipsCallback)
mk_RemoteCallbacksUpdateTipsCallback C_RemoteCallbacksUpdateTipsCallback
wrapped'
a
-> Text
-> FunPtr C_RemoteCallbacksUpdateTipsCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"update-tips" FunPtr C_RemoteCallbacksUpdateTipsCallback
wrapped'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterRemoteCallbacksUpdateTips :: (IsRemoteCallbacks a, MonadIO m) => a -> ((?self :: a) => RemoteCallbacksUpdateTipsCallback) -> m SignalHandlerId
afterRemoteCallbacksUpdateTips :: forall a (m :: * -> *).
(IsRemoteCallbacks a, MonadIO m) =>
a
-> ((?self::a) => RemoteCallbacksUpdateTipsCallback)
-> m SignalHandlerId
afterRemoteCallbacksUpdateTips a
obj (?self::a) => RemoteCallbacksUpdateTipsCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> RemoteCallbacksUpdateTipsCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => RemoteCallbacksUpdateTipsCallback
RemoteCallbacksUpdateTipsCallback
cb
let wrapped' :: C_RemoteCallbacksUpdateTipsCallback
wrapped' = (a -> RemoteCallbacksUpdateTipsCallback)
-> C_RemoteCallbacksUpdateTipsCallback
forall a.
GObject a =>
(a -> RemoteCallbacksUpdateTipsCallback)
-> C_RemoteCallbacksUpdateTipsCallback
wrap_RemoteCallbacksUpdateTipsCallback a -> RemoteCallbacksUpdateTipsCallback
wrapped
FunPtr C_RemoteCallbacksUpdateTipsCallback
wrapped'' <- C_RemoteCallbacksUpdateTipsCallback
-> IO (FunPtr C_RemoteCallbacksUpdateTipsCallback)
mk_RemoteCallbacksUpdateTipsCallback C_RemoteCallbacksUpdateTipsCallback
wrapped'
a
-> Text
-> FunPtr C_RemoteCallbacksUpdateTipsCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"update-tips" FunPtr C_RemoteCallbacksUpdateTipsCallback
wrapped'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data RemoteCallbacksUpdateTipsSignalInfo
instance SignalInfo RemoteCallbacksUpdateTipsSignalInfo where
type HaskellCallbackType RemoteCallbacksUpdateTipsSignalInfo = RemoteCallbacksUpdateTipsCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_RemoteCallbacksUpdateTipsCallback cb
cb'' <- mk_RemoteCallbacksUpdateTipsCallback cb'
connectSignalFunPtr obj "update-tips" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Ggit.Objects.RemoteCallbacks::update-tips"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ggit-1.0.11/docs/GI-Ggit-Objects-RemoteCallbacks.html#g:signal:updateTips"})
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList RemoteCallbacks
type instance O.AttributeList RemoteCallbacks = RemoteCallbacksAttributeList
type RemoteCallbacksAttributeList = ('[ ] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList RemoteCallbacks = RemoteCallbacksSignalList
type RemoteCallbacksSignalList = ('[ '("completion", RemoteCallbacksCompletionSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("progress", RemoteCallbacksProgressSignalInfo), '("transferProgress", RemoteCallbacksTransferProgressSignalInfo), '("updateTips", RemoteCallbacksUpdateTipsSignalInfo)] :: [(Symbol, *)])
#endif