{-# LANGUAGE ImplicitParams, RankNTypes, TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gdk.Objects.FrameClock
(
FrameClock(..) ,
IsFrameClock ,
toFrameClock ,
#if defined(ENABLE_OVERLOADING)
ResolveFrameClockMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
FrameClockBeginUpdatingMethodInfo ,
#endif
frameClockBeginUpdating ,
#if defined(ENABLE_OVERLOADING)
FrameClockEndUpdatingMethodInfo ,
#endif
frameClockEndUpdating ,
#if defined(ENABLE_OVERLOADING)
FrameClockGetCurrentTimingsMethodInfo ,
#endif
frameClockGetCurrentTimings ,
#if defined(ENABLE_OVERLOADING)
FrameClockGetFpsMethodInfo ,
#endif
frameClockGetFps ,
#if defined(ENABLE_OVERLOADING)
FrameClockGetFrameCounterMethodInfo ,
#endif
frameClockGetFrameCounter ,
#if defined(ENABLE_OVERLOADING)
FrameClockGetFrameTimeMethodInfo ,
#endif
frameClockGetFrameTime ,
#if defined(ENABLE_OVERLOADING)
FrameClockGetHistoryStartMethodInfo ,
#endif
frameClockGetHistoryStart ,
#if defined(ENABLE_OVERLOADING)
FrameClockGetRefreshInfoMethodInfo ,
#endif
frameClockGetRefreshInfo ,
#if defined(ENABLE_OVERLOADING)
FrameClockGetTimingsMethodInfo ,
#endif
frameClockGetTimings ,
#if defined(ENABLE_OVERLOADING)
FrameClockRequestPhaseMethodInfo ,
#endif
frameClockRequestPhase ,
FrameClockAfterPaintCallback ,
#if defined(ENABLE_OVERLOADING)
FrameClockAfterPaintSignalInfo ,
#endif
afterFrameClockAfterPaint ,
onFrameClockAfterPaint ,
FrameClockBeforePaintCallback ,
#if defined(ENABLE_OVERLOADING)
FrameClockBeforePaintSignalInfo ,
#endif
afterFrameClockBeforePaint ,
onFrameClockBeforePaint ,
FrameClockFlushEventsCallback ,
#if defined(ENABLE_OVERLOADING)
FrameClockFlushEventsSignalInfo ,
#endif
afterFrameClockFlushEvents ,
onFrameClockFlushEvents ,
FrameClockLayoutCallback ,
#if defined(ENABLE_OVERLOADING)
FrameClockLayoutSignalInfo ,
#endif
afterFrameClockLayout ,
onFrameClockLayout ,
FrameClockPaintCallback ,
#if defined(ENABLE_OVERLOADING)
FrameClockPaintSignalInfo ,
#endif
afterFrameClockPaint ,
onFrameClockPaint ,
FrameClockResumeEventsCallback ,
#if defined(ENABLE_OVERLOADING)
FrameClockResumeEventsSignalInfo ,
#endif
afterFrameClockResumeEvents ,
onFrameClockResumeEvents ,
FrameClockUpdateCallback ,
#if defined(ENABLE_OVERLOADING)
FrameClockUpdateSignalInfo ,
#endif
afterFrameClockUpdate ,
onFrameClockUpdate ,
) 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.GHashTable as B.GHT
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.Kind as DK
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 Data.Word as DW
import qualified Data.Int as DI
import qualified System.Posix.Types as SPT
import qualified Foreign.C.Types as FCT
#if MIN_VERSION_base(4,18,0)
import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.Gdk.Flags as Gdk.Flags
import {-# SOURCE #-} qualified GI.Gdk.Structs.FrameTimings as Gdk.FrameTimings
#else
import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.Gdk.Flags as Gdk.Flags
import {-# SOURCE #-} qualified GI.Gdk.Structs.FrameTimings as Gdk.FrameTimings
#endif
newtype FrameClock = FrameClock (SP.ManagedPtr FrameClock)
deriving (FrameClock -> FrameClock -> Bool
(FrameClock -> FrameClock -> Bool)
-> (FrameClock -> FrameClock -> Bool) -> Eq FrameClock
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: FrameClock -> FrameClock -> Bool
== :: FrameClock -> FrameClock -> Bool
$c/= :: FrameClock -> FrameClock -> Bool
/= :: FrameClock -> FrameClock -> Bool
Eq)
instance SP.ManagedPtrNewtype FrameClock where
toManagedPtr :: FrameClock -> ManagedPtr FrameClock
toManagedPtr (FrameClock ManagedPtr FrameClock
p) = ManagedPtr FrameClock
p
foreign import ccall "gdk_frame_clock_get_type"
c_gdk_frame_clock_get_type :: IO B.Types.GType
instance B.Types.TypedObject FrameClock where
glibType :: IO GType
glibType = IO GType
c_gdk_frame_clock_get_type
instance B.Types.GObject FrameClock
class (SP.GObject o, O.IsDescendantOf FrameClock o) => IsFrameClock o
instance (SP.GObject o, O.IsDescendantOf FrameClock o) => IsFrameClock o
instance O.HasParentTypes FrameClock
type instance O.ParentTypes FrameClock = '[GObject.Object.Object]
toFrameClock :: (MIO.MonadIO m, IsFrameClock o) => o -> m FrameClock
toFrameClock :: forall (m :: * -> *) o.
(MonadIO m, IsFrameClock o) =>
o -> m FrameClock
toFrameClock = IO FrameClock -> m FrameClock
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO FrameClock -> m FrameClock)
-> (o -> IO FrameClock) -> o -> m FrameClock
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr FrameClock -> FrameClock) -> o -> IO FrameClock
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr FrameClock -> FrameClock
FrameClock
instance B.GValue.IsGValue (Maybe FrameClock) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_gdk_frame_clock_get_type
gvalueSet_ :: Ptr GValue -> Maybe FrameClock -> IO ()
gvalueSet_ Ptr GValue
gv Maybe FrameClock
P.Nothing = Ptr GValue -> Ptr FrameClock -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr FrameClock
forall a. Ptr a
FP.nullPtr :: FP.Ptr FrameClock)
gvalueSet_ Ptr GValue
gv (P.Just FrameClock
obj) = FrameClock -> (Ptr FrameClock -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr FrameClock
obj (Ptr GValue -> Ptr FrameClock -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe FrameClock)
gvalueGet_ Ptr GValue
gv = do
ptr <- Ptr GValue -> IO (Ptr FrameClock)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr FrameClock)
if ptr /= FP.nullPtr
then P.Just <$> B.ManagedPtr.newObject FrameClock ptr
else return P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveFrameClockMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
ResolveFrameClockMethod "beginUpdating" o = FrameClockBeginUpdatingMethodInfo
ResolveFrameClockMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveFrameClockMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveFrameClockMethod "endUpdating" o = FrameClockEndUpdatingMethodInfo
ResolveFrameClockMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveFrameClockMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveFrameClockMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveFrameClockMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveFrameClockMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveFrameClockMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveFrameClockMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveFrameClockMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveFrameClockMethod "requestPhase" o = FrameClockRequestPhaseMethodInfo
ResolveFrameClockMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveFrameClockMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveFrameClockMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveFrameClockMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveFrameClockMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveFrameClockMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveFrameClockMethod "getCurrentTimings" o = FrameClockGetCurrentTimingsMethodInfo
ResolveFrameClockMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveFrameClockMethod "getFps" o = FrameClockGetFpsMethodInfo
ResolveFrameClockMethod "getFrameCounter" o = FrameClockGetFrameCounterMethodInfo
ResolveFrameClockMethod "getFrameTime" o = FrameClockGetFrameTimeMethodInfo
ResolveFrameClockMethod "getHistoryStart" o = FrameClockGetHistoryStartMethodInfo
ResolveFrameClockMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveFrameClockMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveFrameClockMethod "getRefreshInfo" o = FrameClockGetRefreshInfoMethodInfo
ResolveFrameClockMethod "getTimings" o = FrameClockGetTimingsMethodInfo
ResolveFrameClockMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveFrameClockMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveFrameClockMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveFrameClockMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveFrameClockMethod t FrameClock, O.OverloadedMethod info FrameClock p) => OL.IsLabel t (FrameClock -> 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 ~ ResolveFrameClockMethod t FrameClock, O.OverloadedMethod info FrameClock p, R.HasField t FrameClock p) => R.HasField t FrameClock p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveFrameClockMethod t FrameClock, O.OverloadedMethodInfo info FrameClock) => OL.IsLabel t (O.MethodProxy info FrameClock) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
type FrameClockAfterPaintCallback =
IO ()
type C_FrameClockAfterPaintCallback =
Ptr FrameClock ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_FrameClockAfterPaintCallback :: C_FrameClockAfterPaintCallback -> IO (FunPtr C_FrameClockAfterPaintCallback)
wrap_FrameClockAfterPaintCallback ::
GObject a => (a -> FrameClockAfterPaintCallback) ->
C_FrameClockAfterPaintCallback
wrap_FrameClockAfterPaintCallback :: forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockAfterPaintCallback a -> IO ()
gi'cb Ptr FrameClock
gi'selfPtr Ptr ()
_ = do
Ptr FrameClock -> (FrameClock -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr FrameClock
gi'selfPtr ((FrameClock -> IO ()) -> IO ()) -> (FrameClock -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \FrameClock
gi'self -> a -> IO ()
gi'cb (FrameClock -> a
forall a b. Coercible a b => a -> b
Coerce.coerce FrameClock
gi'self)
onFrameClockAfterPaint :: (IsFrameClock a, MonadIO m) => a -> ((?self :: a) => FrameClockAfterPaintCallback) -> m SignalHandlerId
onFrameClockAfterPaint :: forall a (m :: * -> *).
(IsFrameClock a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
onFrameClockAfterPaint a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
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 -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_FrameClockAfterPaintCallback
wrapped' = (a -> IO ()) -> C_FrameClockAfterPaintCallback
forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockAfterPaintCallback a -> IO ()
wrapped
wrapped'' <- C_FrameClockAfterPaintCallback
-> IO (FunPtr C_FrameClockAfterPaintCallback)
mk_FrameClockAfterPaintCallback C_FrameClockAfterPaintCallback
wrapped'
connectSignalFunPtr obj "after-paint" wrapped'' SignalConnectBefore Nothing
afterFrameClockAfterPaint :: (IsFrameClock a, MonadIO m) => a -> ((?self :: a) => FrameClockAfterPaintCallback) -> m SignalHandlerId
afterFrameClockAfterPaint :: forall a (m :: * -> *).
(IsFrameClock a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
afterFrameClockAfterPaint a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
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 -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_FrameClockAfterPaintCallback
wrapped' = (a -> IO ()) -> C_FrameClockAfterPaintCallback
forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockAfterPaintCallback a -> IO ()
wrapped
wrapped'' <- C_FrameClockAfterPaintCallback
-> IO (FunPtr C_FrameClockAfterPaintCallback)
mk_FrameClockAfterPaintCallback C_FrameClockAfterPaintCallback
wrapped'
connectSignalFunPtr obj "after-paint" wrapped'' SignalConnectAfter Nothing
#if defined(ENABLE_OVERLOADING)
data FrameClockAfterPaintSignalInfo
instance SignalInfo FrameClockAfterPaintSignalInfo where
type HaskellCallbackType FrameClockAfterPaintSignalInfo = FrameClockAfterPaintCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_FrameClockAfterPaintCallback cb
cb'' <- mk_FrameClockAfterPaintCallback cb'
connectSignalFunPtr obj "after-paint" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock::after-paint"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#g:signal:afterPaint"})
#endif
type FrameClockBeforePaintCallback =
IO ()
type C_FrameClockBeforePaintCallback =
Ptr FrameClock ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_FrameClockBeforePaintCallback :: C_FrameClockBeforePaintCallback -> IO (FunPtr C_FrameClockBeforePaintCallback)
wrap_FrameClockBeforePaintCallback ::
GObject a => (a -> FrameClockBeforePaintCallback) ->
C_FrameClockBeforePaintCallback
wrap_FrameClockBeforePaintCallback :: forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockBeforePaintCallback a -> IO ()
gi'cb Ptr FrameClock
gi'selfPtr Ptr ()
_ = do
Ptr FrameClock -> (FrameClock -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr FrameClock
gi'selfPtr ((FrameClock -> IO ()) -> IO ()) -> (FrameClock -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \FrameClock
gi'self -> a -> IO ()
gi'cb (FrameClock -> a
forall a b. Coercible a b => a -> b
Coerce.coerce FrameClock
gi'self)
onFrameClockBeforePaint :: (IsFrameClock a, MonadIO m) => a -> ((?self :: a) => FrameClockBeforePaintCallback) -> m SignalHandlerId
onFrameClockBeforePaint :: forall a (m :: * -> *).
(IsFrameClock a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
onFrameClockBeforePaint a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
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 -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_FrameClockAfterPaintCallback
wrapped' = (a -> IO ()) -> C_FrameClockAfterPaintCallback
forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockBeforePaintCallback a -> IO ()
wrapped
wrapped'' <- C_FrameClockAfterPaintCallback
-> IO (FunPtr C_FrameClockAfterPaintCallback)
mk_FrameClockBeforePaintCallback C_FrameClockAfterPaintCallback
wrapped'
connectSignalFunPtr obj "before-paint" wrapped'' SignalConnectBefore Nothing
afterFrameClockBeforePaint :: (IsFrameClock a, MonadIO m) => a -> ((?self :: a) => FrameClockBeforePaintCallback) -> m SignalHandlerId
afterFrameClockBeforePaint :: forall a (m :: * -> *).
(IsFrameClock a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
afterFrameClockBeforePaint a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
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 -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_FrameClockAfterPaintCallback
wrapped' = (a -> IO ()) -> C_FrameClockAfterPaintCallback
forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockBeforePaintCallback a -> IO ()
wrapped
wrapped'' <- C_FrameClockAfterPaintCallback
-> IO (FunPtr C_FrameClockAfterPaintCallback)
mk_FrameClockBeforePaintCallback C_FrameClockAfterPaintCallback
wrapped'
connectSignalFunPtr obj "before-paint" wrapped'' SignalConnectAfter Nothing
#if defined(ENABLE_OVERLOADING)
data FrameClockBeforePaintSignalInfo
instance SignalInfo FrameClockBeforePaintSignalInfo where
type HaskellCallbackType FrameClockBeforePaintSignalInfo = FrameClockBeforePaintCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_FrameClockBeforePaintCallback cb
cb'' <- mk_FrameClockBeforePaintCallback cb'
connectSignalFunPtr obj "before-paint" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock::before-paint"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#g:signal:beforePaint"})
#endif
type FrameClockFlushEventsCallback =
IO ()
type C_FrameClockFlushEventsCallback =
Ptr FrameClock ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_FrameClockFlushEventsCallback :: C_FrameClockFlushEventsCallback -> IO (FunPtr C_FrameClockFlushEventsCallback)
wrap_FrameClockFlushEventsCallback ::
GObject a => (a -> FrameClockFlushEventsCallback) ->
C_FrameClockFlushEventsCallback
wrap_FrameClockFlushEventsCallback :: forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockFlushEventsCallback a -> IO ()
gi'cb Ptr FrameClock
gi'selfPtr Ptr ()
_ = do
Ptr FrameClock -> (FrameClock -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr FrameClock
gi'selfPtr ((FrameClock -> IO ()) -> IO ()) -> (FrameClock -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \FrameClock
gi'self -> a -> IO ()
gi'cb (FrameClock -> a
forall a b. Coercible a b => a -> b
Coerce.coerce FrameClock
gi'self)
onFrameClockFlushEvents :: (IsFrameClock a, MonadIO m) => a -> ((?self :: a) => FrameClockFlushEventsCallback) -> m SignalHandlerId
onFrameClockFlushEvents :: forall a (m :: * -> *).
(IsFrameClock a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
onFrameClockFlushEvents a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
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 -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_FrameClockAfterPaintCallback
wrapped' = (a -> IO ()) -> C_FrameClockAfterPaintCallback
forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockFlushEventsCallback a -> IO ()
wrapped
wrapped'' <- C_FrameClockAfterPaintCallback
-> IO (FunPtr C_FrameClockAfterPaintCallback)
mk_FrameClockFlushEventsCallback C_FrameClockAfterPaintCallback
wrapped'
connectSignalFunPtr obj "flush-events" wrapped'' SignalConnectBefore Nothing
afterFrameClockFlushEvents :: (IsFrameClock a, MonadIO m) => a -> ((?self :: a) => FrameClockFlushEventsCallback) -> m SignalHandlerId
afterFrameClockFlushEvents :: forall a (m :: * -> *).
(IsFrameClock a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
afterFrameClockFlushEvents a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
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 -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_FrameClockAfterPaintCallback
wrapped' = (a -> IO ()) -> C_FrameClockAfterPaintCallback
forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockFlushEventsCallback a -> IO ()
wrapped
wrapped'' <- C_FrameClockAfterPaintCallback
-> IO (FunPtr C_FrameClockAfterPaintCallback)
mk_FrameClockFlushEventsCallback C_FrameClockAfterPaintCallback
wrapped'
connectSignalFunPtr obj "flush-events" wrapped'' SignalConnectAfter Nothing
#if defined(ENABLE_OVERLOADING)
data FrameClockFlushEventsSignalInfo
instance SignalInfo FrameClockFlushEventsSignalInfo where
type HaskellCallbackType FrameClockFlushEventsSignalInfo = FrameClockFlushEventsCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_FrameClockFlushEventsCallback cb
cb'' <- mk_FrameClockFlushEventsCallback cb'
connectSignalFunPtr obj "flush-events" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock::flush-events"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#g:signal:flushEvents"})
#endif
type FrameClockLayoutCallback =
IO ()
type C_FrameClockLayoutCallback =
Ptr FrameClock ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_FrameClockLayoutCallback :: C_FrameClockLayoutCallback -> IO (FunPtr C_FrameClockLayoutCallback)
wrap_FrameClockLayoutCallback ::
GObject a => (a -> FrameClockLayoutCallback) ->
C_FrameClockLayoutCallback
wrap_FrameClockLayoutCallback :: forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockLayoutCallback a -> IO ()
gi'cb Ptr FrameClock
gi'selfPtr Ptr ()
_ = do
Ptr FrameClock -> (FrameClock -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr FrameClock
gi'selfPtr ((FrameClock -> IO ()) -> IO ()) -> (FrameClock -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \FrameClock
gi'self -> a -> IO ()
gi'cb (FrameClock -> a
forall a b. Coercible a b => a -> b
Coerce.coerce FrameClock
gi'self)
onFrameClockLayout :: (IsFrameClock a, MonadIO m) => a -> ((?self :: a) => FrameClockLayoutCallback) -> m SignalHandlerId
onFrameClockLayout :: forall a (m :: * -> *).
(IsFrameClock a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
onFrameClockLayout a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
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 -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_FrameClockAfterPaintCallback
wrapped' = (a -> IO ()) -> C_FrameClockAfterPaintCallback
forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockLayoutCallback a -> IO ()
wrapped
wrapped'' <- C_FrameClockAfterPaintCallback
-> IO (FunPtr C_FrameClockAfterPaintCallback)
mk_FrameClockLayoutCallback C_FrameClockAfterPaintCallback
wrapped'
connectSignalFunPtr obj "layout" wrapped'' SignalConnectBefore Nothing
afterFrameClockLayout :: (IsFrameClock a, MonadIO m) => a -> ((?self :: a) => FrameClockLayoutCallback) -> m SignalHandlerId
afterFrameClockLayout :: forall a (m :: * -> *).
(IsFrameClock a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
afterFrameClockLayout a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
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 -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_FrameClockAfterPaintCallback
wrapped' = (a -> IO ()) -> C_FrameClockAfterPaintCallback
forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockLayoutCallback a -> IO ()
wrapped
wrapped'' <- C_FrameClockAfterPaintCallback
-> IO (FunPtr C_FrameClockAfterPaintCallback)
mk_FrameClockLayoutCallback C_FrameClockAfterPaintCallback
wrapped'
connectSignalFunPtr obj "layout" wrapped'' SignalConnectAfter Nothing
#if defined(ENABLE_OVERLOADING)
data FrameClockLayoutSignalInfo
instance SignalInfo FrameClockLayoutSignalInfo where
type HaskellCallbackType FrameClockLayoutSignalInfo = FrameClockLayoutCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_FrameClockLayoutCallback cb
cb'' <- mk_FrameClockLayoutCallback cb'
connectSignalFunPtr obj "layout" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock::layout"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#g:signal:layout"})
#endif
type FrameClockPaintCallback =
IO ()
type C_FrameClockPaintCallback =
Ptr FrameClock ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_FrameClockPaintCallback :: C_FrameClockPaintCallback -> IO (FunPtr C_FrameClockPaintCallback)
wrap_FrameClockPaintCallback ::
GObject a => (a -> FrameClockPaintCallback) ->
C_FrameClockPaintCallback
wrap_FrameClockPaintCallback :: forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockPaintCallback a -> IO ()
gi'cb Ptr FrameClock
gi'selfPtr Ptr ()
_ = do
Ptr FrameClock -> (FrameClock -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr FrameClock
gi'selfPtr ((FrameClock -> IO ()) -> IO ()) -> (FrameClock -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \FrameClock
gi'self -> a -> IO ()
gi'cb (FrameClock -> a
forall a b. Coercible a b => a -> b
Coerce.coerce FrameClock
gi'self)
onFrameClockPaint :: (IsFrameClock a, MonadIO m) => a -> ((?self :: a) => FrameClockPaintCallback) -> m SignalHandlerId
onFrameClockPaint :: forall a (m :: * -> *).
(IsFrameClock a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
onFrameClockPaint a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
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 -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_FrameClockAfterPaintCallback
wrapped' = (a -> IO ()) -> C_FrameClockAfterPaintCallback
forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockPaintCallback a -> IO ()
wrapped
wrapped'' <- C_FrameClockAfterPaintCallback
-> IO (FunPtr C_FrameClockAfterPaintCallback)
mk_FrameClockPaintCallback C_FrameClockAfterPaintCallback
wrapped'
connectSignalFunPtr obj "paint" wrapped'' SignalConnectBefore Nothing
afterFrameClockPaint :: (IsFrameClock a, MonadIO m) => a -> ((?self :: a) => FrameClockPaintCallback) -> m SignalHandlerId
afterFrameClockPaint :: forall a (m :: * -> *).
(IsFrameClock a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
afterFrameClockPaint a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
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 -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_FrameClockAfterPaintCallback
wrapped' = (a -> IO ()) -> C_FrameClockAfterPaintCallback
forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockPaintCallback a -> IO ()
wrapped
wrapped'' <- C_FrameClockAfterPaintCallback
-> IO (FunPtr C_FrameClockAfterPaintCallback)
mk_FrameClockPaintCallback C_FrameClockAfterPaintCallback
wrapped'
connectSignalFunPtr obj "paint" wrapped'' SignalConnectAfter Nothing
#if defined(ENABLE_OVERLOADING)
data FrameClockPaintSignalInfo
instance SignalInfo FrameClockPaintSignalInfo where
type HaskellCallbackType FrameClockPaintSignalInfo = FrameClockPaintCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_FrameClockPaintCallback cb
cb'' <- mk_FrameClockPaintCallback cb'
connectSignalFunPtr obj "paint" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock::paint"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#g:signal:paint"})
#endif
type FrameClockResumeEventsCallback =
IO ()
type C_FrameClockResumeEventsCallback =
Ptr FrameClock ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_FrameClockResumeEventsCallback :: C_FrameClockResumeEventsCallback -> IO (FunPtr C_FrameClockResumeEventsCallback)
wrap_FrameClockResumeEventsCallback ::
GObject a => (a -> FrameClockResumeEventsCallback) ->
C_FrameClockResumeEventsCallback
wrap_FrameClockResumeEventsCallback :: forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockResumeEventsCallback a -> IO ()
gi'cb Ptr FrameClock
gi'selfPtr Ptr ()
_ = do
Ptr FrameClock -> (FrameClock -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr FrameClock
gi'selfPtr ((FrameClock -> IO ()) -> IO ()) -> (FrameClock -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \FrameClock
gi'self -> a -> IO ()
gi'cb (FrameClock -> a
forall a b. Coercible a b => a -> b
Coerce.coerce FrameClock
gi'self)
onFrameClockResumeEvents :: (IsFrameClock a, MonadIO m) => a -> ((?self :: a) => FrameClockResumeEventsCallback) -> m SignalHandlerId
onFrameClockResumeEvents :: forall a (m :: * -> *).
(IsFrameClock a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
onFrameClockResumeEvents a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
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 -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_FrameClockAfterPaintCallback
wrapped' = (a -> IO ()) -> C_FrameClockAfterPaintCallback
forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockResumeEventsCallback a -> IO ()
wrapped
wrapped'' <- C_FrameClockAfterPaintCallback
-> IO (FunPtr C_FrameClockAfterPaintCallback)
mk_FrameClockResumeEventsCallback C_FrameClockAfterPaintCallback
wrapped'
connectSignalFunPtr obj "resume-events" wrapped'' SignalConnectBefore Nothing
afterFrameClockResumeEvents :: (IsFrameClock a, MonadIO m) => a -> ((?self :: a) => FrameClockResumeEventsCallback) -> m SignalHandlerId
afterFrameClockResumeEvents :: forall a (m :: * -> *).
(IsFrameClock a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
afterFrameClockResumeEvents a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
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 -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_FrameClockAfterPaintCallback
wrapped' = (a -> IO ()) -> C_FrameClockAfterPaintCallback
forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockResumeEventsCallback a -> IO ()
wrapped
wrapped'' <- C_FrameClockAfterPaintCallback
-> IO (FunPtr C_FrameClockAfterPaintCallback)
mk_FrameClockResumeEventsCallback C_FrameClockAfterPaintCallback
wrapped'
connectSignalFunPtr obj "resume-events" wrapped'' SignalConnectAfter Nothing
#if defined(ENABLE_OVERLOADING)
data FrameClockResumeEventsSignalInfo
instance SignalInfo FrameClockResumeEventsSignalInfo where
type HaskellCallbackType FrameClockResumeEventsSignalInfo = FrameClockResumeEventsCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_FrameClockResumeEventsCallback cb
cb'' <- mk_FrameClockResumeEventsCallback cb'
connectSignalFunPtr obj "resume-events" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock::resume-events"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#g:signal:resumeEvents"})
#endif
type FrameClockUpdateCallback =
IO ()
type C_FrameClockUpdateCallback =
Ptr FrameClock ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_FrameClockUpdateCallback :: C_FrameClockUpdateCallback -> IO (FunPtr C_FrameClockUpdateCallback)
wrap_FrameClockUpdateCallback ::
GObject a => (a -> FrameClockUpdateCallback) ->
C_FrameClockUpdateCallback
wrap_FrameClockUpdateCallback :: forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockUpdateCallback a -> IO ()
gi'cb Ptr FrameClock
gi'selfPtr Ptr ()
_ = do
Ptr FrameClock -> (FrameClock -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr FrameClock
gi'selfPtr ((FrameClock -> IO ()) -> IO ()) -> (FrameClock -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \FrameClock
gi'self -> a -> IO ()
gi'cb (FrameClock -> a
forall a b. Coercible a b => a -> b
Coerce.coerce FrameClock
gi'self)
onFrameClockUpdate :: (IsFrameClock a, MonadIO m) => a -> ((?self :: a) => FrameClockUpdateCallback) -> m SignalHandlerId
onFrameClockUpdate :: forall a (m :: * -> *).
(IsFrameClock a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
onFrameClockUpdate a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
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 -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_FrameClockAfterPaintCallback
wrapped' = (a -> IO ()) -> C_FrameClockAfterPaintCallback
forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockUpdateCallback a -> IO ()
wrapped
wrapped'' <- C_FrameClockAfterPaintCallback
-> IO (FunPtr C_FrameClockAfterPaintCallback)
mk_FrameClockUpdateCallback C_FrameClockAfterPaintCallback
wrapped'
connectSignalFunPtr obj "update" wrapped'' SignalConnectBefore Nothing
afterFrameClockUpdate :: (IsFrameClock a, MonadIO m) => a -> ((?self :: a) => FrameClockUpdateCallback) -> m SignalHandlerId
afterFrameClockUpdate :: forall a (m :: * -> *).
(IsFrameClock a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
afterFrameClockUpdate a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
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 -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_FrameClockAfterPaintCallback
wrapped' = (a -> IO ()) -> C_FrameClockAfterPaintCallback
forall a.
GObject a =>
(a -> IO ()) -> C_FrameClockAfterPaintCallback
wrap_FrameClockUpdateCallback a -> IO ()
wrapped
wrapped'' <- C_FrameClockAfterPaintCallback
-> IO (FunPtr C_FrameClockAfterPaintCallback)
mk_FrameClockUpdateCallback C_FrameClockAfterPaintCallback
wrapped'
connectSignalFunPtr obj "update" wrapped'' SignalConnectAfter Nothing
#if defined(ENABLE_OVERLOADING)
data FrameClockUpdateSignalInfo
instance SignalInfo FrameClockUpdateSignalInfo where
type HaskellCallbackType FrameClockUpdateSignalInfo = FrameClockUpdateCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_FrameClockUpdateCallback cb
cb'' <- mk_FrameClockUpdateCallback cb'
connectSignalFunPtr obj "update" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock::update"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#g:signal:update"})
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList FrameClock
type instance O.AttributeList FrameClock = FrameClockAttributeList
type FrameClockAttributeList = ('[ ] :: [(Symbol, DK.Type)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList FrameClock = FrameClockSignalList
type FrameClockSignalList = ('[ '("afterPaint", FrameClockAfterPaintSignalInfo), '("beforePaint", FrameClockBeforePaintSignalInfo), '("flushEvents", FrameClockFlushEventsSignalInfo), '("layout", FrameClockLayoutSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("paint", FrameClockPaintSignalInfo), '("resumeEvents", FrameClockResumeEventsSignalInfo), '("update", FrameClockUpdateSignalInfo)] :: [(Symbol, DK.Type)])
#endif
foreign import ccall "gdk_frame_clock_begin_updating" gdk_frame_clock_begin_updating ::
Ptr FrameClock ->
IO ()
frameClockBeginUpdating ::
(B.CallStack.HasCallStack, MonadIO m, IsFrameClock a) =>
a
-> m ()
frameClockBeginUpdating :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFrameClock a) =>
a -> m ()
frameClockBeginUpdating a
frameClock = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
frameClock' <- a -> IO (Ptr FrameClock)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
frameClock
gdk_frame_clock_begin_updating frameClock'
touchManagedPtr frameClock
return ()
#if defined(ENABLE_OVERLOADING)
data FrameClockBeginUpdatingMethodInfo
instance (signature ~ (m ()), MonadIO m, IsFrameClock a) => O.OverloadedMethod FrameClockBeginUpdatingMethodInfo a signature where
overloadedMethod = frameClockBeginUpdating
instance O.OverloadedMethodInfo FrameClockBeginUpdatingMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock.frameClockBeginUpdating",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#v:frameClockBeginUpdating"
})
#endif
foreign import ccall "gdk_frame_clock_end_updating" gdk_frame_clock_end_updating ::
Ptr FrameClock ->
IO ()
frameClockEndUpdating ::
(B.CallStack.HasCallStack, MonadIO m, IsFrameClock a) =>
a
-> m ()
frameClockEndUpdating :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFrameClock a) =>
a -> m ()
frameClockEndUpdating a
frameClock = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
frameClock' <- a -> IO (Ptr FrameClock)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
frameClock
gdk_frame_clock_end_updating frameClock'
touchManagedPtr frameClock
return ()
#if defined(ENABLE_OVERLOADING)
data FrameClockEndUpdatingMethodInfo
instance (signature ~ (m ()), MonadIO m, IsFrameClock a) => O.OverloadedMethod FrameClockEndUpdatingMethodInfo a signature where
overloadedMethod = frameClockEndUpdating
instance O.OverloadedMethodInfo FrameClockEndUpdatingMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock.frameClockEndUpdating",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#v:frameClockEndUpdating"
})
#endif
foreign import ccall "gdk_frame_clock_get_current_timings" gdk_frame_clock_get_current_timings ::
Ptr FrameClock ->
IO (Ptr Gdk.FrameTimings.FrameTimings)
frameClockGetCurrentTimings ::
(B.CallStack.HasCallStack, MonadIO m, IsFrameClock a) =>
a
-> m (Maybe Gdk.FrameTimings.FrameTimings)
frameClockGetCurrentTimings :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFrameClock a) =>
a -> m (Maybe FrameTimings)
frameClockGetCurrentTimings a
frameClock = IO (Maybe FrameTimings) -> m (Maybe FrameTimings)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe FrameTimings) -> m (Maybe FrameTimings))
-> IO (Maybe FrameTimings) -> m (Maybe FrameTimings)
forall a b. (a -> b) -> a -> b
$ do
frameClock' <- a -> IO (Ptr FrameClock)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
frameClock
result <- gdk_frame_clock_get_current_timings frameClock'
maybeResult <- convertIfNonNull result $ \Ptr FrameTimings
result' -> do
result'' <- ((ManagedPtr FrameTimings -> FrameTimings)
-> Ptr FrameTimings -> IO FrameTimings
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
newBoxed ManagedPtr FrameTimings -> FrameTimings
Gdk.FrameTimings.FrameTimings) Ptr FrameTimings
result'
return result''
touchManagedPtr frameClock
return maybeResult
#if defined(ENABLE_OVERLOADING)
data FrameClockGetCurrentTimingsMethodInfo
instance (signature ~ (m (Maybe Gdk.FrameTimings.FrameTimings)), MonadIO m, IsFrameClock a) => O.OverloadedMethod FrameClockGetCurrentTimingsMethodInfo a signature where
overloadedMethod = frameClockGetCurrentTimings
instance O.OverloadedMethodInfo FrameClockGetCurrentTimingsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock.frameClockGetCurrentTimings",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#v:frameClockGetCurrentTimings"
})
#endif
foreign import ccall "gdk_frame_clock_get_fps" gdk_frame_clock_get_fps ::
Ptr FrameClock ->
IO CDouble
frameClockGetFps ::
(B.CallStack.HasCallStack, MonadIO m, IsFrameClock a) =>
a
-> m Double
frameClockGetFps :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFrameClock a) =>
a -> m Double
frameClockGetFps a
frameClock = IO Double -> m Double
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Double -> m Double) -> IO Double -> m Double
forall a b. (a -> b) -> a -> b
$ do
frameClock' <- a -> IO (Ptr FrameClock)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
frameClock
result <- gdk_frame_clock_get_fps frameClock'
let result' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
result
touchManagedPtr frameClock
return result'
#if defined(ENABLE_OVERLOADING)
data FrameClockGetFpsMethodInfo
instance (signature ~ (m Double), MonadIO m, IsFrameClock a) => O.OverloadedMethod FrameClockGetFpsMethodInfo a signature where
overloadedMethod = frameClockGetFps
instance O.OverloadedMethodInfo FrameClockGetFpsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock.frameClockGetFps",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#v:frameClockGetFps"
})
#endif
foreign import ccall "gdk_frame_clock_get_frame_counter" gdk_frame_clock_get_frame_counter ::
Ptr FrameClock ->
IO Int64
frameClockGetFrameCounter ::
(B.CallStack.HasCallStack, MonadIO m, IsFrameClock a) =>
a
-> m Int64
frameClockGetFrameCounter :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFrameClock a) =>
a -> m Int64
frameClockGetFrameCounter a
frameClock = IO Int64 -> m Int64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int64 -> m Int64) -> IO Int64 -> m Int64
forall a b. (a -> b) -> a -> b
$ do
frameClock' <- a -> IO (Ptr FrameClock)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
frameClock
result <- gdk_frame_clock_get_frame_counter frameClock'
touchManagedPtr frameClock
return result
#if defined(ENABLE_OVERLOADING)
data FrameClockGetFrameCounterMethodInfo
instance (signature ~ (m Int64), MonadIO m, IsFrameClock a) => O.OverloadedMethod FrameClockGetFrameCounterMethodInfo a signature where
overloadedMethod = frameClockGetFrameCounter
instance O.OverloadedMethodInfo FrameClockGetFrameCounterMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock.frameClockGetFrameCounter",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#v:frameClockGetFrameCounter"
})
#endif
foreign import ccall "gdk_frame_clock_get_frame_time" gdk_frame_clock_get_frame_time ::
Ptr FrameClock ->
IO Int64
frameClockGetFrameTime ::
(B.CallStack.HasCallStack, MonadIO m, IsFrameClock a) =>
a
-> m Int64
frameClockGetFrameTime :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFrameClock a) =>
a -> m Int64
frameClockGetFrameTime a
frameClock = IO Int64 -> m Int64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int64 -> m Int64) -> IO Int64 -> m Int64
forall a b. (a -> b) -> a -> b
$ do
frameClock' <- a -> IO (Ptr FrameClock)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
frameClock
result <- gdk_frame_clock_get_frame_time frameClock'
touchManagedPtr frameClock
return result
#if defined(ENABLE_OVERLOADING)
data FrameClockGetFrameTimeMethodInfo
instance (signature ~ (m Int64), MonadIO m, IsFrameClock a) => O.OverloadedMethod FrameClockGetFrameTimeMethodInfo a signature where
overloadedMethod = frameClockGetFrameTime
instance O.OverloadedMethodInfo FrameClockGetFrameTimeMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock.frameClockGetFrameTime",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#v:frameClockGetFrameTime"
})
#endif
foreign import ccall "gdk_frame_clock_get_history_start" gdk_frame_clock_get_history_start ::
Ptr FrameClock ->
IO Int64
frameClockGetHistoryStart ::
(B.CallStack.HasCallStack, MonadIO m, IsFrameClock a) =>
a
-> m Int64
frameClockGetHistoryStart :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFrameClock a) =>
a -> m Int64
frameClockGetHistoryStart a
frameClock = IO Int64 -> m Int64
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int64 -> m Int64) -> IO Int64 -> m Int64
forall a b. (a -> b) -> a -> b
$ do
frameClock' <- a -> IO (Ptr FrameClock)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
frameClock
result <- gdk_frame_clock_get_history_start frameClock'
touchManagedPtr frameClock
return result
#if defined(ENABLE_OVERLOADING)
data FrameClockGetHistoryStartMethodInfo
instance (signature ~ (m Int64), MonadIO m, IsFrameClock a) => O.OverloadedMethod FrameClockGetHistoryStartMethodInfo a signature where
overloadedMethod = frameClockGetHistoryStart
instance O.OverloadedMethodInfo FrameClockGetHistoryStartMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock.frameClockGetHistoryStart",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#v:frameClockGetHistoryStart"
})
#endif
foreign import ccall "gdk_frame_clock_get_refresh_info" gdk_frame_clock_get_refresh_info ::
Ptr FrameClock ->
Int64 ->
Ptr Int64 ->
Ptr Int64 ->
IO ()
frameClockGetRefreshInfo ::
(B.CallStack.HasCallStack, MonadIO m, IsFrameClock a) =>
a
-> Int64
-> m ((Int64, Int64))
frameClockGetRefreshInfo :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFrameClock a) =>
a -> Int64 -> m (Int64, Int64)
frameClockGetRefreshInfo a
frameClock Int64
baseTime = IO (Int64, Int64) -> m (Int64, Int64)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Int64, Int64) -> m (Int64, Int64))
-> IO (Int64, Int64) -> m (Int64, Int64)
forall a b. (a -> b) -> a -> b
$ do
frameClock' <- a -> IO (Ptr FrameClock)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
frameClock
refreshIntervalReturn <- allocMem :: IO (Ptr Int64)
presentationTimeReturn <- allocMem :: IO (Ptr Int64)
gdk_frame_clock_get_refresh_info frameClock' baseTime refreshIntervalReturn presentationTimeReturn
refreshIntervalReturn' <- peek refreshIntervalReturn
presentationTimeReturn' <- peek presentationTimeReturn
touchManagedPtr frameClock
freeMem refreshIntervalReturn
freeMem presentationTimeReturn
return (refreshIntervalReturn', presentationTimeReturn')
#if defined(ENABLE_OVERLOADING)
data FrameClockGetRefreshInfoMethodInfo
instance (signature ~ (Int64 -> m ((Int64, Int64))), MonadIO m, IsFrameClock a) => O.OverloadedMethod FrameClockGetRefreshInfoMethodInfo a signature where
overloadedMethod = frameClockGetRefreshInfo
instance O.OverloadedMethodInfo FrameClockGetRefreshInfoMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock.frameClockGetRefreshInfo",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#v:frameClockGetRefreshInfo"
})
#endif
foreign import ccall "gdk_frame_clock_get_timings" gdk_frame_clock_get_timings ::
Ptr FrameClock ->
Int64 ->
IO (Ptr Gdk.FrameTimings.FrameTimings)
frameClockGetTimings ::
(B.CallStack.HasCallStack, MonadIO m, IsFrameClock a) =>
a
-> Int64
-> m (Maybe Gdk.FrameTimings.FrameTimings)
frameClockGetTimings :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFrameClock a) =>
a -> Int64 -> m (Maybe FrameTimings)
frameClockGetTimings a
frameClock Int64
frameCounter = IO (Maybe FrameTimings) -> m (Maybe FrameTimings)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe FrameTimings) -> m (Maybe FrameTimings))
-> IO (Maybe FrameTimings) -> m (Maybe FrameTimings)
forall a b. (a -> b) -> a -> b
$ do
frameClock' <- a -> IO (Ptr FrameClock)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
frameClock
result <- gdk_frame_clock_get_timings frameClock' frameCounter
maybeResult <- convertIfNonNull result $ \Ptr FrameTimings
result' -> do
result'' <- ((ManagedPtr FrameTimings -> FrameTimings)
-> Ptr FrameTimings -> IO FrameTimings
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
newBoxed ManagedPtr FrameTimings -> FrameTimings
Gdk.FrameTimings.FrameTimings) Ptr FrameTimings
result'
return result''
touchManagedPtr frameClock
return maybeResult
#if defined(ENABLE_OVERLOADING)
data FrameClockGetTimingsMethodInfo
instance (signature ~ (Int64 -> m (Maybe Gdk.FrameTimings.FrameTimings)), MonadIO m, IsFrameClock a) => O.OverloadedMethod FrameClockGetTimingsMethodInfo a signature where
overloadedMethod = frameClockGetTimings
instance O.OverloadedMethodInfo FrameClockGetTimingsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock.frameClockGetTimings",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#v:frameClockGetTimings"
})
#endif
foreign import ccall "gdk_frame_clock_request_phase" gdk_frame_clock_request_phase ::
Ptr FrameClock ->
CUInt ->
IO ()
frameClockRequestPhase ::
(B.CallStack.HasCallStack, MonadIO m, IsFrameClock a) =>
a
-> [Gdk.Flags.FrameClockPhase]
-> m ()
frameClockRequestPhase :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFrameClock a) =>
a -> [FrameClockPhase] -> m ()
frameClockRequestPhase a
frameClock [FrameClockPhase]
phase = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
frameClock' <- a -> IO (Ptr FrameClock)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
frameClock
let phase' = [FrameClockPhase] -> CUInt
forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [FrameClockPhase]
phase
gdk_frame_clock_request_phase frameClock' phase'
touchManagedPtr frameClock
return ()
#if defined(ENABLE_OVERLOADING)
data FrameClockRequestPhaseMethodInfo
instance (signature ~ ([Gdk.Flags.FrameClockPhase] -> m ()), MonadIO m, IsFrameClock a) => O.OverloadedMethod FrameClockRequestPhaseMethodInfo a signature where
overloadedMethod = frameClockRequestPhase
instance O.OverloadedMethodInfo FrameClockRequestPhaseMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gdk.Objects.FrameClock.frameClockRequestPhase",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gdk-4.0.9/docs/GI-Gdk-Objects-FrameClock.html#v:frameClockRequestPhase"
})
#endif