{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.GES.Objects.Transition
(
Transition(..) ,
IsTransition ,
toTransition ,
#if defined(ENABLE_OVERLOADING)
ResolveTransitionMethod ,
#endif
) 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 {-# SOURCE #-} qualified GI.GES.Interfaces.Extractable as GES.Extractable
import {-# SOURCE #-} qualified GI.GES.Interfaces.MetaContainer as GES.MetaContainer
import {-# SOURCE #-} qualified GI.GES.Objects.Operation as GES.Operation
import {-# SOURCE #-} qualified GI.GES.Objects.TimelineElement as GES.TimelineElement
import {-# SOURCE #-} qualified GI.GES.Objects.TrackElement as GES.TrackElement
import qualified GI.GObject.Objects.Object as GObject.Object
newtype Transition = Transition (SP.ManagedPtr Transition)
deriving (Transition -> Transition -> Bool
(Transition -> Transition -> Bool)
-> (Transition -> Transition -> Bool) -> Eq Transition
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Transition -> Transition -> Bool
== :: Transition -> Transition -> Bool
$c/= :: Transition -> Transition -> Bool
/= :: Transition -> Transition -> Bool
Eq)
instance SP.ManagedPtrNewtype Transition where
toManagedPtr :: Transition -> ManagedPtr Transition
toManagedPtr (Transition ManagedPtr Transition
p) = ManagedPtr Transition
p
foreign import ccall "ges_transition_get_type"
c_ges_transition_get_type :: IO B.Types.GType
instance B.Types.TypedObject Transition where
glibType :: IO GType
glibType = IO GType
c_ges_transition_get_type
instance B.Types.GObject Transition
class (SP.GObject o, O.IsDescendantOf Transition o) => IsTransition o
instance (SP.GObject o, O.IsDescendantOf Transition o) => IsTransition o
instance O.HasParentTypes Transition
type instance O.ParentTypes Transition = '[GES.Operation.Operation, GES.TrackElement.TrackElement, GES.TimelineElement.TimelineElement, GObject.Object.Object, GES.Extractable.Extractable, GES.MetaContainer.MetaContainer]
toTransition :: (MIO.MonadIO m, IsTransition o) => o -> m Transition
toTransition :: forall (m :: * -> *) o.
(MonadIO m, IsTransition o) =>
o -> m Transition
toTransition = IO Transition -> m Transition
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Transition -> m Transition)
-> (o -> IO Transition) -> o -> m Transition
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr Transition -> Transition) -> o -> IO Transition
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr Transition -> Transition
Transition
instance B.GValue.IsGValue (Maybe Transition) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_ges_transition_get_type
gvalueSet_ :: Ptr GValue -> Maybe Transition -> IO ()
gvalueSet_ Ptr GValue
gv Maybe Transition
P.Nothing = Ptr GValue -> Ptr Transition -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr Transition
forall a. Ptr a
FP.nullPtr :: FP.Ptr Transition)
gvalueSet_ Ptr GValue
gv (P.Just Transition
obj) = Transition -> (Ptr Transition -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr Transition
obj (Ptr GValue -> Ptr Transition -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe Transition)
gvalueGet_ Ptr GValue
gv = do
Ptr Transition
ptr <- Ptr GValue -> IO (Ptr Transition)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr Transition)
if Ptr Transition
ptr Ptr Transition -> Ptr Transition -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr Transition
forall a. Ptr a
FP.nullPtr
then Transition -> Maybe Transition
forall a. a -> Maybe a
P.Just (Transition -> Maybe Transition)
-> IO Transition -> IO (Maybe Transition)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr Transition -> Transition)
-> Ptr Transition -> IO Transition
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr Transition -> Transition
Transition Ptr Transition
ptr
else Maybe Transition -> IO (Maybe Transition)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Transition
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveTransitionMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
ResolveTransitionMethod "addChildProperty" o = GES.TimelineElement.TimelineElementAddChildPropertyMethodInfo
ResolveTransitionMethod "addChildrenProps" o = GES.TrackElement.TrackElementAddChildrenPropsMethodInfo
ResolveTransitionMethod "addMetasFromString" o = GES.MetaContainer.MetaContainerAddMetasFromStringMethodInfo
ResolveTransitionMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveTransitionMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveTransitionMethod "checkMetaRegistered" o = GES.MetaContainer.MetaContainerCheckMetaRegisteredMethodInfo
ResolveTransitionMethod "clampControlSource" o = GES.TrackElement.TrackElementClampControlSourceMethodInfo
ResolveTransitionMethod "copy" o = GES.TimelineElement.TimelineElementCopyMethodInfo
ResolveTransitionMethod "edit" o = GES.TrackElement.TrackElementEditMethodInfo
ResolveTransitionMethod "editFull" o = GES.TimelineElement.TimelineElementEditFullMethodInfo
ResolveTransitionMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveTransitionMethod "foreach" o = GES.MetaContainer.MetaContainerForeachMethodInfo
ResolveTransitionMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveTransitionMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveTransitionMethod "hasInternalSource" o = GES.TrackElement.TrackElementHasInternalSourceMethodInfo
ResolveTransitionMethod "isActive" o = GES.TrackElement.TrackElementIsActiveMethodInfo
ResolveTransitionMethod "isCore" o = GES.TrackElement.TrackElementIsCoreMethodInfo
ResolveTransitionMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveTransitionMethod "listChildrenProperties" o = GES.TrackElement.TrackElementListChildrenPropertiesMethodInfo
ResolveTransitionMethod "lookupChild" o = GES.TrackElement.TrackElementLookupChildMethodInfo
ResolveTransitionMethod "metasToString" o = GES.MetaContainer.MetaContainerMetasToStringMethodInfo
ResolveTransitionMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveTransitionMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveTransitionMethod "paste" o = GES.TimelineElement.TimelineElementPasteMethodInfo
ResolveTransitionMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveTransitionMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveTransitionMethod "registerMeta" o = GES.MetaContainer.MetaContainerRegisterMetaMethodInfo
ResolveTransitionMethod "registerMetaBoolean" o = GES.MetaContainer.MetaContainerRegisterMetaBooleanMethodInfo
ResolveTransitionMethod "registerMetaDate" o = GES.MetaContainer.MetaContainerRegisterMetaDateMethodInfo
ResolveTransitionMethod "registerMetaDateTime" o = GES.MetaContainer.MetaContainerRegisterMetaDateTimeMethodInfo
ResolveTransitionMethod "registerMetaDouble" o = GES.MetaContainer.MetaContainerRegisterMetaDoubleMethodInfo
ResolveTransitionMethod "registerMetaFloat" o = GES.MetaContainer.MetaContainerRegisterMetaFloatMethodInfo
ResolveTransitionMethod "registerMetaInt" o = GES.MetaContainer.MetaContainerRegisterMetaIntMethodInfo
ResolveTransitionMethod "registerMetaInt64" o = GES.MetaContainer.MetaContainerRegisterMetaInt64MethodInfo
ResolveTransitionMethod "registerMetaString" o = GES.MetaContainer.MetaContainerRegisterMetaStringMethodInfo
ResolveTransitionMethod "registerMetaUint" o = GES.MetaContainer.MetaContainerRegisterMetaUintMethodInfo
ResolveTransitionMethod "registerMetaUint64" o = GES.MetaContainer.MetaContainerRegisterMetaUint64MethodInfo
ResolveTransitionMethod "registerStaticMeta" o = GES.MetaContainer.MetaContainerRegisterStaticMetaMethodInfo
ResolveTransitionMethod "removeChildProperty" o = GES.TimelineElement.TimelineElementRemoveChildPropertyMethodInfo
ResolveTransitionMethod "removeControlBinding" o = GES.TrackElement.TrackElementRemoveControlBindingMethodInfo
ResolveTransitionMethod "ripple" o = GES.TimelineElement.TimelineElementRippleMethodInfo
ResolveTransitionMethod "rippleEnd" o = GES.TimelineElement.TimelineElementRippleEndMethodInfo
ResolveTransitionMethod "rollEnd" o = GES.TimelineElement.TimelineElementRollEndMethodInfo
ResolveTransitionMethod "rollStart" o = GES.TimelineElement.TimelineElementRollStartMethodInfo
ResolveTransitionMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveTransitionMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveTransitionMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveTransitionMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveTransitionMethod "trim" o = GES.TimelineElement.TimelineElementTrimMethodInfo
ResolveTransitionMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveTransitionMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveTransitionMethod "getAllControlBindings" o = GES.TrackElement.TrackElementGetAllControlBindingsMethodInfo
ResolveTransitionMethod "getAsset" o = GES.Extractable.ExtractableGetAssetMethodInfo
ResolveTransitionMethod "getAutoClampControlSources" o = GES.TrackElement.TrackElementGetAutoClampControlSourcesMethodInfo
ResolveTransitionMethod "getBoolean" o = GES.MetaContainer.MetaContainerGetBooleanMethodInfo
ResolveTransitionMethod "getChildProperty" o = GES.TimelineElement.TimelineElementGetChildPropertyMethodInfo
ResolveTransitionMethod "getChildPropertyByPspec" o = GES.TimelineElement.TimelineElementGetChildPropertyByPspecMethodInfo
ResolveTransitionMethod "getControlBinding" o = GES.TrackElement.TrackElementGetControlBindingMethodInfo
ResolveTransitionMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveTransitionMethod "getDate" o = GES.MetaContainer.MetaContainerGetDateMethodInfo
ResolveTransitionMethod "getDateTime" o = GES.MetaContainer.MetaContainerGetDateTimeMethodInfo
ResolveTransitionMethod "getDouble" o = GES.MetaContainer.MetaContainerGetDoubleMethodInfo
ResolveTransitionMethod "getDuration" o = GES.TimelineElement.TimelineElementGetDurationMethodInfo
ResolveTransitionMethod "getElement" o = GES.TrackElement.TrackElementGetElementMethodInfo
ResolveTransitionMethod "getFloat" o = GES.MetaContainer.MetaContainerGetFloatMethodInfo
ResolveTransitionMethod "getGnlobject" o = GES.TrackElement.TrackElementGetGnlobjectMethodInfo
ResolveTransitionMethod "getId" o = GES.Extractable.ExtractableGetIdMethodInfo
ResolveTransitionMethod "getInpoint" o = GES.TimelineElement.TimelineElementGetInpointMethodInfo
ResolveTransitionMethod "getInt" o = GES.MetaContainer.MetaContainerGetIntMethodInfo
ResolveTransitionMethod "getInt64" o = GES.MetaContainer.MetaContainerGetInt64MethodInfo
ResolveTransitionMethod "getLayerPriority" o = GES.TimelineElement.TimelineElementGetLayerPriorityMethodInfo
ResolveTransitionMethod "getMarkerList" o = GES.MetaContainer.MetaContainerGetMarkerListMethodInfo
ResolveTransitionMethod "getMaxDuration" o = GES.TimelineElement.TimelineElementGetMaxDurationMethodInfo
ResolveTransitionMethod "getMeta" o = GES.MetaContainer.MetaContainerGetMetaMethodInfo
ResolveTransitionMethod "getName" o = GES.TimelineElement.TimelineElementGetNameMethodInfo
ResolveTransitionMethod "getNaturalFramerate" o = GES.TimelineElement.TimelineElementGetNaturalFramerateMethodInfo
ResolveTransitionMethod "getNleobject" o = GES.TrackElement.TrackElementGetNleobjectMethodInfo
ResolveTransitionMethod "getParent" o = GES.TimelineElement.TimelineElementGetParentMethodInfo
ResolveTransitionMethod "getPriority" o = GES.TimelineElement.TimelineElementGetPriorityMethodInfo
ResolveTransitionMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveTransitionMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveTransitionMethod "getStart" o = GES.TimelineElement.TimelineElementGetStartMethodInfo
ResolveTransitionMethod "getString" o = GES.MetaContainer.MetaContainerGetStringMethodInfo
ResolveTransitionMethod "getTimeline" o = GES.TimelineElement.TimelineElementGetTimelineMethodInfo
ResolveTransitionMethod "getToplevelParent" o = GES.TimelineElement.TimelineElementGetToplevelParentMethodInfo
ResolveTransitionMethod "getTrack" o = GES.TrackElement.TrackElementGetTrackMethodInfo
ResolveTransitionMethod "getTrackType" o = GES.TrackElement.TrackElementGetTrackTypeMethodInfo
ResolveTransitionMethod "getTrackTypes" o = GES.TimelineElement.TimelineElementGetTrackTypesMethodInfo
ResolveTransitionMethod "getUint" o = GES.MetaContainer.MetaContainerGetUintMethodInfo
ResolveTransitionMethod "getUint64" o = GES.MetaContainer.MetaContainerGetUint64MethodInfo
ResolveTransitionMethod "setActive" o = GES.TrackElement.TrackElementSetActiveMethodInfo
ResolveTransitionMethod "setAsset" o = GES.Extractable.ExtractableSetAssetMethodInfo
ResolveTransitionMethod "setAutoClampControlSources" o = GES.TrackElement.TrackElementSetAutoClampControlSourcesMethodInfo
ResolveTransitionMethod "setBoolean" o = GES.MetaContainer.MetaContainerSetBooleanMethodInfo
ResolveTransitionMethod "setChildProperty" o = GES.TimelineElement.TimelineElementSetChildPropertyMethodInfo
ResolveTransitionMethod "setChildPropertyByPspec" o = GES.TimelineElement.TimelineElementSetChildPropertyByPspecMethodInfo
ResolveTransitionMethod "setChildPropertyFull" o = GES.TimelineElement.TimelineElementSetChildPropertyFullMethodInfo
ResolveTransitionMethod "setControlSource" o = GES.TrackElement.TrackElementSetControlSourceMethodInfo
ResolveTransitionMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveTransitionMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveTransitionMethod "setDate" o = GES.MetaContainer.MetaContainerSetDateMethodInfo
ResolveTransitionMethod "setDateTime" o = GES.MetaContainer.MetaContainerSetDateTimeMethodInfo
ResolveTransitionMethod "setDouble" o = GES.MetaContainer.MetaContainerSetDoubleMethodInfo
ResolveTransitionMethod "setDuration" o = GES.TimelineElement.TimelineElementSetDurationMethodInfo
ResolveTransitionMethod "setFloat" o = GES.MetaContainer.MetaContainerSetFloatMethodInfo
ResolveTransitionMethod "setHasInternalSource" o = GES.TrackElement.TrackElementSetHasInternalSourceMethodInfo
ResolveTransitionMethod "setInpoint" o = GES.TimelineElement.TimelineElementSetInpointMethodInfo
ResolveTransitionMethod "setInt" o = GES.MetaContainer.MetaContainerSetIntMethodInfo
ResolveTransitionMethod "setInt64" o = GES.MetaContainer.MetaContainerSetInt64MethodInfo
ResolveTransitionMethod "setMarkerList" o = GES.MetaContainer.MetaContainerSetMarkerListMethodInfo
ResolveTransitionMethod "setMaxDuration" o = GES.TimelineElement.TimelineElementSetMaxDurationMethodInfo
ResolveTransitionMethod "setMeta" o = GES.MetaContainer.MetaContainerSetMetaMethodInfo
ResolveTransitionMethod "setName" o = GES.TimelineElement.TimelineElementSetNameMethodInfo
ResolveTransitionMethod "setParent" o = GES.TimelineElement.TimelineElementSetParentMethodInfo
ResolveTransitionMethod "setPriority" o = GES.TimelineElement.TimelineElementSetPriorityMethodInfo
ResolveTransitionMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveTransitionMethod "setStart" o = GES.TimelineElement.TimelineElementSetStartMethodInfo
ResolveTransitionMethod "setString" o = GES.MetaContainer.MetaContainerSetStringMethodInfo
ResolveTransitionMethod "setTimeline" o = GES.TimelineElement.TimelineElementSetTimelineMethodInfo
ResolveTransitionMethod "setTrackType" o = GES.TrackElement.TrackElementSetTrackTypeMethodInfo
ResolveTransitionMethod "setUint" o = GES.MetaContainer.MetaContainerSetUintMethodInfo
ResolveTransitionMethod "setUint64" o = GES.MetaContainer.MetaContainerSetUint64MethodInfo
ResolveTransitionMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveTransitionMethod t Transition, O.OverloadedMethod info Transition p) => OL.IsLabel t (Transition -> 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 ~ ResolveTransitionMethod t Transition, O.OverloadedMethod info Transition p, R.HasField t Transition p) => R.HasField t Transition p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveTransitionMethod t Transition, O.OverloadedMethodInfo info Transition) => OL.IsLabel t (O.MethodProxy info Transition) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList Transition
type instance O.AttributeList Transition = TransitionAttributeList
type TransitionAttributeList = ('[ '("active", GES.TrackElement.TrackElementActivePropertyInfo), '("autoClampControlSources", GES.TrackElement.TrackElementAutoClampControlSourcesPropertyInfo), '("duration", GES.TimelineElement.TimelineElementDurationPropertyInfo), '("hasInternalSource", GES.TrackElement.TrackElementHasInternalSourcePropertyInfo), '("inPoint", GES.TimelineElement.TimelineElementInPointPropertyInfo), '("maxDuration", GES.TimelineElement.TimelineElementMaxDurationPropertyInfo), '("name", GES.TimelineElement.TimelineElementNamePropertyInfo), '("parent", GES.TimelineElement.TimelineElementParentPropertyInfo), '("priority", GES.TimelineElement.TimelineElementPriorityPropertyInfo), '("serialize", GES.TimelineElement.TimelineElementSerializePropertyInfo), '("start", GES.TimelineElement.TimelineElementStartPropertyInfo), '("timeline", GES.TimelineElement.TimelineElementTimelinePropertyInfo), '("track", GES.TrackElement.TrackElementTrackPropertyInfo), '("trackType", GES.TrackElement.TrackElementTrackTypePropertyInfo)] :: [(Symbol, DK.Type)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList Transition = TransitionSignalList
type TransitionSignalList = ('[ '("childPropertyAdded", GES.TimelineElement.TimelineElementChildPropertyAddedSignalInfo), '("childPropertyRemoved", GES.TimelineElement.TimelineElementChildPropertyRemovedSignalInfo), '("controlBindingAdded", GES.TrackElement.TrackElementControlBindingAddedSignalInfo), '("controlBindingRemoved", GES.TrackElement.TrackElementControlBindingRemovedSignalInfo), '("deepNotify", GES.TimelineElement.TimelineElementDeepNotifySignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("notifyMeta", GES.MetaContainer.MetaContainerNotifyMetaSignalInfo)] :: [(Symbol, DK.Type)])
#endif