{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-} ---------- GENERATED FILE, EDITS WILL BE LOST ---------- module Graphics.UI.Qtah.Generated.Core.QParallelAnimationGroup ( castQParallelAnimationGroupToQAnimationGroup, castQAnimationGroupToQParallelAnimationGroup, castQParallelAnimationGroupToQAbstractAnimation, castQAbstractAnimationToQParallelAnimationGroup, castQParallelAnimationGroupToQObject, castQObjectToQParallelAnimationGroup, QParallelAnimationGroupValue (..), QParallelAnimationGroupConstPtr (..), QParallelAnimationGroupPtr (..), QParallelAnimationGroupConst (..), castQParallelAnimationGroupToConst, QParallelAnimationGroup (..), castQParallelAnimationGroupToNonconst, QParallelAnimationGroupSuper (..), QParallelAnimationGroupSuperConst (..), ) where import qualified Foreign as HoppyF import qualified Foreign.Hoppy.Runtime as HoppyFHR import qualified Graphics.UI.Qtah.Generated.Core.QAbstractAnimation as M2 import qualified Graphics.UI.Qtah.Generated.Core.QAnimationGroup as M10 import qualified Graphics.UI.Qtah.Generated.Core.QObject as M94 import Prelude (($), (.), (==)) import qualified Prelude as HoppyP foreign import ccall "gencast__QParallelAnimationGroup__QAnimationGroup" castQParallelAnimationGroupToQAnimationGroup :: HoppyF.Ptr QParallelAnimationGroupConst -> HoppyF.Ptr M10.QAnimationGroupConst foreign import ccall "gencast__QAnimationGroup__QParallelAnimationGroup" castQAnimationGroupToQParallelAnimationGroup :: HoppyF.Ptr M10.QAnimationGroupConst -> HoppyF.Ptr QParallelAnimationGroupConst foreign import ccall "gencast__QParallelAnimationGroup__QAbstractAnimation" castQParallelAnimationGroupToQAbstractAnimation :: HoppyF.Ptr QParallelAnimationGroupConst -> HoppyF.Ptr M2.QAbstractAnimationConst foreign import ccall "gencast__QAbstractAnimation__QParallelAnimationGroup" castQAbstractAnimationToQParallelAnimationGroup :: HoppyF.Ptr M2.QAbstractAnimationConst -> HoppyF.Ptr QParallelAnimationGroupConst foreign import ccall "gencast__QParallelAnimationGroup__QObject" castQParallelAnimationGroupToQObject :: HoppyF.Ptr QParallelAnimationGroupConst -> HoppyF.Ptr M94.QObjectConst foreign import ccall "gencast__QObject__QParallelAnimationGroup" castQObjectToQParallelAnimationGroup :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr QParallelAnimationGroupConst foreign import ccall "gendel__QParallelAnimationGroup" delete'QParallelAnimationGroup :: HoppyF.Ptr QParallelAnimationGroupConst -> HoppyP.IO () foreign import ccall "&gendel__QParallelAnimationGroup" deletePtr'QParallelAnimationGroup :: HoppyF.FunPtr (HoppyF.Ptr QParallelAnimationGroupConst -> HoppyP.IO ()) class QParallelAnimationGroupValue a where withQParallelAnimationGroupPtr :: a -> (QParallelAnimationGroupConst -> HoppyP.IO b) -> HoppyP.IO b instance {-# OVERLAPPABLE #-} QParallelAnimationGroupConstPtr a => QParallelAnimationGroupValue a where withQParallelAnimationGroupPtr = HoppyP.flip ($) . toQParallelAnimationGroupConst class (M10.QAnimationGroupConstPtr this) => QParallelAnimationGroupConstPtr this where toQParallelAnimationGroupConst :: this -> QParallelAnimationGroupConst class (QParallelAnimationGroupConstPtr this, M10.QAnimationGroupPtr this) => QParallelAnimationGroupPtr this where toQParallelAnimationGroup :: this -> QParallelAnimationGroup data QParallelAnimationGroupConst = QParallelAnimationGroupConst (HoppyF.Ptr QParallelAnimationGroupConst) | QParallelAnimationGroupConstGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QParallelAnimationGroupConst) deriving (HoppyP.Show) instance HoppyP.Eq QParallelAnimationGroupConst where x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y instance HoppyP.Ord QParallelAnimationGroupConst where compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y) castQParallelAnimationGroupToConst :: QParallelAnimationGroup -> QParallelAnimationGroupConst castQParallelAnimationGroupToConst (QParallelAnimationGroup ptr') = QParallelAnimationGroupConst $ HoppyF.castPtr ptr' castQParallelAnimationGroupToConst (QParallelAnimationGroupGc fptr' ptr') = QParallelAnimationGroupConstGc fptr' $ HoppyF.castPtr ptr' instance HoppyFHR.CppPtr QParallelAnimationGroupConst where nullptr = QParallelAnimationGroupConst HoppyF.nullPtr withCppPtr (QParallelAnimationGroupConst ptr') f' = f' ptr' withCppPtr (QParallelAnimationGroupConstGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr' toPtr (QParallelAnimationGroupConst ptr') = ptr' toPtr (QParallelAnimationGroupConstGc _ ptr') = ptr' touchCppPtr (QParallelAnimationGroupConst _) = HoppyP.return () touchCppPtr (QParallelAnimationGroupConstGc fptr' _) = HoppyF.touchForeignPtr fptr' instance HoppyFHR.Deletable QParallelAnimationGroupConst where delete (QParallelAnimationGroupConst ptr') = delete'QParallelAnimationGroup ptr' delete (QParallelAnimationGroupConstGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QParallelAnimationGroupConst", " object."] toGc this'@(QParallelAnimationGroupConst ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QParallelAnimationGroupConstGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QParallelAnimationGroup :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ()) toGc this'@(QParallelAnimationGroupConstGc {}) = HoppyP.return this' instance QParallelAnimationGroupConstPtr QParallelAnimationGroupConst where toQParallelAnimationGroupConst = HoppyP.id instance M10.QAnimationGroupConstPtr QParallelAnimationGroupConst where toQAnimationGroupConst (QParallelAnimationGroupConst ptr') = M10.QAnimationGroupConst $ castQParallelAnimationGroupToQAnimationGroup ptr' toQAnimationGroupConst (QParallelAnimationGroupConstGc fptr' ptr') = M10.QAnimationGroupConstGc fptr' $ castQParallelAnimationGroupToQAnimationGroup ptr' instance M2.QAbstractAnimationConstPtr QParallelAnimationGroupConst where toQAbstractAnimationConst (QParallelAnimationGroupConst ptr') = M2.QAbstractAnimationConst $ castQParallelAnimationGroupToQAbstractAnimation ptr' toQAbstractAnimationConst (QParallelAnimationGroupConstGc fptr' ptr') = M2.QAbstractAnimationConstGc fptr' $ castQParallelAnimationGroupToQAbstractAnimation ptr' instance M94.QObjectConstPtr QParallelAnimationGroupConst where toQObjectConst (QParallelAnimationGroupConst ptr') = M94.QObjectConst $ castQParallelAnimationGroupToQObject ptr' toQObjectConst (QParallelAnimationGroupConstGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQParallelAnimationGroupToQObject ptr' data QParallelAnimationGroup = QParallelAnimationGroup (HoppyF.Ptr QParallelAnimationGroup) | QParallelAnimationGroupGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QParallelAnimationGroup) deriving (HoppyP.Show) instance HoppyP.Eq QParallelAnimationGroup where x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y instance HoppyP.Ord QParallelAnimationGroup where compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y) castQParallelAnimationGroupToNonconst :: QParallelAnimationGroupConst -> QParallelAnimationGroup castQParallelAnimationGroupToNonconst (QParallelAnimationGroupConst ptr') = QParallelAnimationGroup $ HoppyF.castPtr ptr' castQParallelAnimationGroupToNonconst (QParallelAnimationGroupConstGc fptr' ptr') = QParallelAnimationGroupGc fptr' $ HoppyF.castPtr ptr' instance HoppyFHR.CppPtr QParallelAnimationGroup where nullptr = QParallelAnimationGroup HoppyF.nullPtr withCppPtr (QParallelAnimationGroup ptr') f' = f' ptr' withCppPtr (QParallelAnimationGroupGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr' toPtr (QParallelAnimationGroup ptr') = ptr' toPtr (QParallelAnimationGroupGc _ ptr') = ptr' touchCppPtr (QParallelAnimationGroup _) = HoppyP.return () touchCppPtr (QParallelAnimationGroupGc fptr' _) = HoppyF.touchForeignPtr fptr' instance HoppyFHR.Deletable QParallelAnimationGroup where delete (QParallelAnimationGroup ptr') = delete'QParallelAnimationGroup $ (HoppyF.castPtr ptr' :: HoppyF.Ptr QParallelAnimationGroupConst) delete (QParallelAnimationGroupGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QParallelAnimationGroup", " object."] toGc this'@(QParallelAnimationGroup ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QParallelAnimationGroupGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QParallelAnimationGroup :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ()) toGc this'@(QParallelAnimationGroupGc {}) = HoppyP.return this' instance QParallelAnimationGroupConstPtr QParallelAnimationGroup where toQParallelAnimationGroupConst (QParallelAnimationGroup ptr') = QParallelAnimationGroupConst $ (HoppyF.castPtr :: HoppyF.Ptr QParallelAnimationGroup -> HoppyF.Ptr QParallelAnimationGroupConst) ptr' toQParallelAnimationGroupConst (QParallelAnimationGroupGc fptr' ptr') = QParallelAnimationGroupConstGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr QParallelAnimationGroup -> HoppyF.Ptr QParallelAnimationGroupConst) ptr' instance QParallelAnimationGroupPtr QParallelAnimationGroup where toQParallelAnimationGroup = HoppyP.id instance M10.QAnimationGroupConstPtr QParallelAnimationGroup where toQAnimationGroupConst (QParallelAnimationGroup ptr') = M10.QAnimationGroupConst $ castQParallelAnimationGroupToQAnimationGroup $ (HoppyF.castPtr :: HoppyF.Ptr QParallelAnimationGroup -> HoppyF.Ptr QParallelAnimationGroupConst) ptr' toQAnimationGroupConst (QParallelAnimationGroupGc fptr' ptr') = M10.QAnimationGroupConstGc fptr' $ castQParallelAnimationGroupToQAnimationGroup $ (HoppyF.castPtr :: HoppyF.Ptr QParallelAnimationGroup -> HoppyF.Ptr QParallelAnimationGroupConst) ptr' instance M10.QAnimationGroupPtr QParallelAnimationGroup where toQAnimationGroup (QParallelAnimationGroup ptr') = M10.QAnimationGroup $ (HoppyF.castPtr :: HoppyF.Ptr M10.QAnimationGroupConst -> HoppyF.Ptr M10.QAnimationGroup) $ castQParallelAnimationGroupToQAnimationGroup $ (HoppyF.castPtr :: HoppyF.Ptr QParallelAnimationGroup -> HoppyF.Ptr QParallelAnimationGroupConst) ptr' toQAnimationGroup (QParallelAnimationGroupGc fptr' ptr') = M10.QAnimationGroupGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M10.QAnimationGroupConst -> HoppyF.Ptr M10.QAnimationGroup) $ castQParallelAnimationGroupToQAnimationGroup $ (HoppyF.castPtr :: HoppyF.Ptr QParallelAnimationGroup -> HoppyF.Ptr QParallelAnimationGroupConst) ptr' instance M2.QAbstractAnimationConstPtr QParallelAnimationGroup where toQAbstractAnimationConst (QParallelAnimationGroup ptr') = M2.QAbstractAnimationConst $ castQParallelAnimationGroupToQAbstractAnimation $ (HoppyF.castPtr :: HoppyF.Ptr QParallelAnimationGroup -> HoppyF.Ptr QParallelAnimationGroupConst) ptr' toQAbstractAnimationConst (QParallelAnimationGroupGc fptr' ptr') = M2.QAbstractAnimationConstGc fptr' $ castQParallelAnimationGroupToQAbstractAnimation $ (HoppyF.castPtr :: HoppyF.Ptr QParallelAnimationGroup -> HoppyF.Ptr QParallelAnimationGroupConst) ptr' instance M2.QAbstractAnimationPtr QParallelAnimationGroup where toQAbstractAnimation (QParallelAnimationGroup ptr') = M2.QAbstractAnimation $ (HoppyF.castPtr :: HoppyF.Ptr M2.QAbstractAnimationConst -> HoppyF.Ptr M2.QAbstractAnimation) $ castQParallelAnimationGroupToQAbstractAnimation $ (HoppyF.castPtr :: HoppyF.Ptr QParallelAnimationGroup -> HoppyF.Ptr QParallelAnimationGroupConst) ptr' toQAbstractAnimation (QParallelAnimationGroupGc fptr' ptr') = M2.QAbstractAnimationGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M2.QAbstractAnimationConst -> HoppyF.Ptr M2.QAbstractAnimation) $ castQParallelAnimationGroupToQAbstractAnimation $ (HoppyF.castPtr :: HoppyF.Ptr QParallelAnimationGroup -> HoppyF.Ptr QParallelAnimationGroupConst) ptr' instance M94.QObjectConstPtr QParallelAnimationGroup where toQObjectConst (QParallelAnimationGroup ptr') = M94.QObjectConst $ castQParallelAnimationGroupToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QParallelAnimationGroup -> HoppyF.Ptr QParallelAnimationGroupConst) ptr' toQObjectConst (QParallelAnimationGroupGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQParallelAnimationGroupToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QParallelAnimationGroup -> HoppyF.Ptr QParallelAnimationGroupConst) ptr' instance M94.QObjectPtr QParallelAnimationGroup where toQObject (QParallelAnimationGroup ptr') = M94.QObject $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQParallelAnimationGroupToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QParallelAnimationGroup -> HoppyF.Ptr QParallelAnimationGroupConst) ptr' toQObject (QParallelAnimationGroupGc fptr' ptr') = M94.QObjectGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQParallelAnimationGroupToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QParallelAnimationGroup -> HoppyF.Ptr QParallelAnimationGroupConst) ptr' class QParallelAnimationGroupSuper a where downToQParallelAnimationGroup :: a -> QParallelAnimationGroup instance QParallelAnimationGroupSuper M10.QAnimationGroup where downToQParallelAnimationGroup = castQParallelAnimationGroupToNonconst . cast' . M10.castQAnimationGroupToConst where cast' (M10.QAnimationGroupConst ptr') = QParallelAnimationGroupConst $ castQAnimationGroupToQParallelAnimationGroup ptr' cast' (M10.QAnimationGroupConstGc fptr' ptr') = QParallelAnimationGroupConstGc fptr' $ castQAnimationGroupToQParallelAnimationGroup ptr' instance QParallelAnimationGroupSuper M2.QAbstractAnimation where downToQParallelAnimationGroup = castQParallelAnimationGroupToNonconst . cast' . M2.castQAbstractAnimationToConst where cast' (M2.QAbstractAnimationConst ptr') = QParallelAnimationGroupConst $ castQAbstractAnimationToQParallelAnimationGroup ptr' cast' (M2.QAbstractAnimationConstGc fptr' ptr') = QParallelAnimationGroupConstGc fptr' $ castQAbstractAnimationToQParallelAnimationGroup ptr' instance QParallelAnimationGroupSuper M94.QObject where downToQParallelAnimationGroup = castQParallelAnimationGroupToNonconst . cast' . M94.castQObjectToConst where cast' (M94.QObjectConst ptr') = QParallelAnimationGroupConst $ castQObjectToQParallelAnimationGroup ptr' cast' (M94.QObjectConstGc fptr' ptr') = QParallelAnimationGroupConstGc fptr' $ castQObjectToQParallelAnimationGroup ptr' class QParallelAnimationGroupSuperConst a where downToQParallelAnimationGroupConst :: a -> QParallelAnimationGroupConst instance QParallelAnimationGroupSuperConst M10.QAnimationGroupConst where downToQParallelAnimationGroupConst = cast' where cast' (M10.QAnimationGroupConst ptr') = QParallelAnimationGroupConst $ castQAnimationGroupToQParallelAnimationGroup ptr' cast' (M10.QAnimationGroupConstGc fptr' ptr') = QParallelAnimationGroupConstGc fptr' $ castQAnimationGroupToQParallelAnimationGroup ptr' instance QParallelAnimationGroupSuperConst M2.QAbstractAnimationConst where downToQParallelAnimationGroupConst = cast' where cast' (M2.QAbstractAnimationConst ptr') = QParallelAnimationGroupConst $ castQAbstractAnimationToQParallelAnimationGroup ptr' cast' (M2.QAbstractAnimationConstGc fptr' ptr') = QParallelAnimationGroupConstGc fptr' $ castQAbstractAnimationToQParallelAnimationGroup ptr' instance QParallelAnimationGroupSuperConst M94.QObjectConst where downToQParallelAnimationGroupConst = cast' where cast' (M94.QObjectConst ptr') = QParallelAnimationGroupConst $ castQObjectToQParallelAnimationGroup ptr' cast' (M94.QObjectConstGc fptr' ptr') = QParallelAnimationGroupConstGc fptr' $ castQObjectToQParallelAnimationGroup ptr' instance HoppyFHR.Assignable (HoppyF.Ptr (HoppyF.Ptr QParallelAnimationGroup)) QParallelAnimationGroup where assign ptr' value' = HoppyF.poke ptr' $ HoppyFHR.toPtr value' instance HoppyFHR.Decodable (HoppyF.Ptr (HoppyF.Ptr QParallelAnimationGroup)) QParallelAnimationGroup where decode = HoppyP.fmap QParallelAnimationGroup . HoppyF.peek