qtah-qt5-0.8.0: src/Graphics/UI/Qtah/Generated/Gui/QDragEnterEvent.hs
{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-}
---------- GENERATED FILE, EDITS WILL BE LOST ----------
module Graphics.UI.Qtah.Generated.Gui.QDragEnterEvent (
castQDragEnterEventToQDragMoveEvent,
castQDragMoveEventToQDragEnterEvent,
castQDragEnterEventToQDropEvent,
castQDropEventToQDragEnterEvent,
castQDragEnterEventToQEvent,
castQEventToQDragEnterEvent,
QDragEnterEventValue (..),
QDragEnterEventConstPtr (..),
QDragEnterEventPtr (..),
QDragEnterEventConst (..),
castQDragEnterEventToConst,
QDragEnterEvent (..),
castQDragEnterEventToNonconst,
new,
QDragEnterEventSuper (..),
QDragEnterEventSuperConst (..),
) where
import qualified Foreign as HoppyF
import qualified Foreign.C as HoppyFC
import qualified Foreign.Hoppy.Runtime as HoppyFHR
import qualified Graphics.UI.Qtah.Flags as QtahFlags
import qualified Graphics.UI.Qtah.Generated.Core.QEvent as M34
import qualified Graphics.UI.Qtah.Generated.Core.QMimeData as M90
import qualified Graphics.UI.Qtah.Generated.Core.QPoint as M114
import qualified Graphics.UI.Qtah.Generated.Core.Types as M190
import qualified Graphics.UI.Qtah.Generated.Gui.QDragMoveEvent as M264
import qualified Graphics.UI.Qtah.Generated.Gui.QDropEvent as M266
import Prelude (($), (.), (==), (>>=))
import qualified Prelude as HoppyP
import qualified Prelude as QtahP
foreign import ccall "genpop__QDragEnterEvent_new" new' :: HoppyF.Ptr M114.QPointConst -> HoppyFC.CInt -> HoppyF.Ptr M90.QMimeDataConst -> HoppyFC.CInt -> HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr QDragEnterEvent)
foreign import ccall "gencast__QDragEnterEvent__QDragMoveEvent" castQDragEnterEventToQDragMoveEvent :: HoppyF.Ptr QDragEnterEventConst -> HoppyF.Ptr M264.QDragMoveEventConst
foreign import ccall "gencast__QDragMoveEvent__QDragEnterEvent" castQDragMoveEventToQDragEnterEvent :: HoppyF.Ptr M264.QDragMoveEventConst -> HoppyF.Ptr QDragEnterEventConst
foreign import ccall "gencast__QDragEnterEvent__QDropEvent" castQDragEnterEventToQDropEvent :: HoppyF.Ptr QDragEnterEventConst -> HoppyF.Ptr M266.QDropEventConst
foreign import ccall "gencast__QDropEvent__QDragEnterEvent" castQDropEventToQDragEnterEvent :: HoppyF.Ptr M266.QDropEventConst -> HoppyF.Ptr QDragEnterEventConst
foreign import ccall "gencast__QDragEnterEvent__QEvent" castQDragEnterEventToQEvent :: HoppyF.Ptr QDragEnterEventConst -> HoppyF.Ptr M34.QEventConst
foreign import ccall "gencast__QEvent__QDragEnterEvent" castQEventToQDragEnterEvent :: HoppyF.Ptr M34.QEventConst -> HoppyF.Ptr QDragEnterEventConst
foreign import ccall "gendel__QDragEnterEvent" delete'QDragEnterEvent :: HoppyF.Ptr QDragEnterEventConst -> HoppyP.IO ()
foreign import ccall "&gendel__QDragEnterEvent" deletePtr'QDragEnterEvent :: HoppyF.FunPtr (HoppyF.Ptr QDragEnterEventConst -> HoppyP.IO ())
class QDragEnterEventValue a where
withQDragEnterEventPtr :: a -> (QDragEnterEventConst -> HoppyP.IO b) -> HoppyP.IO b
instance {-# OVERLAPPABLE #-} QDragEnterEventConstPtr a => QDragEnterEventValue a where
withQDragEnterEventPtr = HoppyP.flip ($) . toQDragEnterEventConst
class (M264.QDragMoveEventConstPtr this) => QDragEnterEventConstPtr this where
toQDragEnterEventConst :: this -> QDragEnterEventConst
class (QDragEnterEventConstPtr this, M264.QDragMoveEventPtr this) => QDragEnterEventPtr this where
toQDragEnterEvent :: this -> QDragEnterEvent
data QDragEnterEventConst =
QDragEnterEventConst (HoppyF.Ptr QDragEnterEventConst)
| QDragEnterEventConstGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QDragEnterEventConst)
deriving (HoppyP.Show)
instance HoppyP.Eq QDragEnterEventConst where
x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y
instance HoppyP.Ord QDragEnterEventConst where
compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)
castQDragEnterEventToConst :: QDragEnterEvent -> QDragEnterEventConst
castQDragEnterEventToConst (QDragEnterEvent ptr') = QDragEnterEventConst $ HoppyF.castPtr ptr'
castQDragEnterEventToConst (QDragEnterEventGc fptr' ptr') = QDragEnterEventConstGc fptr' $ HoppyF.castPtr ptr'
instance HoppyFHR.CppPtr QDragEnterEventConst where
nullptr = QDragEnterEventConst HoppyF.nullPtr
withCppPtr (QDragEnterEventConst ptr') f' = f' ptr'
withCppPtr (QDragEnterEventConstGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
toPtr (QDragEnterEventConst ptr') = ptr'
toPtr (QDragEnterEventConstGc _ ptr') = ptr'
touchCppPtr (QDragEnterEventConst _) = HoppyP.return ()
touchCppPtr (QDragEnterEventConstGc fptr' _) = HoppyF.touchForeignPtr fptr'
instance HoppyFHR.Deletable QDragEnterEventConst where
delete (QDragEnterEventConst ptr') = delete'QDragEnterEvent ptr'
delete (QDragEnterEventConstGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QDragEnterEventConst", " object."]
toGc this'@(QDragEnterEventConst ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QDragEnterEventConstGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QDragEnterEvent :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ())
toGc this'@(QDragEnterEventConstGc {}) = HoppyP.return this'
instance QDragEnterEventConstPtr QDragEnterEventConst where
toQDragEnterEventConst = HoppyP.id
instance M264.QDragMoveEventConstPtr QDragEnterEventConst where
toQDragMoveEventConst (QDragEnterEventConst ptr') = M264.QDragMoveEventConst $ castQDragEnterEventToQDragMoveEvent ptr'
toQDragMoveEventConst (QDragEnterEventConstGc fptr' ptr') = M264.QDragMoveEventConstGc fptr' $ castQDragEnterEventToQDragMoveEvent ptr'
instance M266.QDropEventConstPtr QDragEnterEventConst where
toQDropEventConst (QDragEnterEventConst ptr') = M266.QDropEventConst $ castQDragEnterEventToQDropEvent ptr'
toQDropEventConst (QDragEnterEventConstGc fptr' ptr') = M266.QDropEventConstGc fptr' $ castQDragEnterEventToQDropEvent ptr'
instance M34.QEventConstPtr QDragEnterEventConst where
toQEventConst (QDragEnterEventConst ptr') = M34.QEventConst $ castQDragEnterEventToQEvent ptr'
toQEventConst (QDragEnterEventConstGc fptr' ptr') = M34.QEventConstGc fptr' $ castQDragEnterEventToQEvent ptr'
data QDragEnterEvent =
QDragEnterEvent (HoppyF.Ptr QDragEnterEvent)
| QDragEnterEventGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QDragEnterEvent)
deriving (HoppyP.Show)
instance HoppyP.Eq QDragEnterEvent where
x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y
instance HoppyP.Ord QDragEnterEvent where
compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)
castQDragEnterEventToNonconst :: QDragEnterEventConst -> QDragEnterEvent
castQDragEnterEventToNonconst (QDragEnterEventConst ptr') = QDragEnterEvent $ HoppyF.castPtr ptr'
castQDragEnterEventToNonconst (QDragEnterEventConstGc fptr' ptr') = QDragEnterEventGc fptr' $ HoppyF.castPtr ptr'
instance HoppyFHR.CppPtr QDragEnterEvent where
nullptr = QDragEnterEvent HoppyF.nullPtr
withCppPtr (QDragEnterEvent ptr') f' = f' ptr'
withCppPtr (QDragEnterEventGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
toPtr (QDragEnterEvent ptr') = ptr'
toPtr (QDragEnterEventGc _ ptr') = ptr'
touchCppPtr (QDragEnterEvent _) = HoppyP.return ()
touchCppPtr (QDragEnterEventGc fptr' _) = HoppyF.touchForeignPtr fptr'
instance HoppyFHR.Deletable QDragEnterEvent where
delete (QDragEnterEvent ptr') = delete'QDragEnterEvent $ (HoppyF.castPtr ptr' :: HoppyF.Ptr QDragEnterEventConst)
delete (QDragEnterEventGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QDragEnterEvent", " object."]
toGc this'@(QDragEnterEvent ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QDragEnterEventGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QDragEnterEvent :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ())
toGc this'@(QDragEnterEventGc {}) = HoppyP.return this'
instance QDragEnterEventConstPtr QDragEnterEvent where
toQDragEnterEventConst (QDragEnterEvent ptr') = QDragEnterEventConst $ (HoppyF.castPtr :: HoppyF.Ptr QDragEnterEvent -> HoppyF.Ptr QDragEnterEventConst) ptr'
toQDragEnterEventConst (QDragEnterEventGc fptr' ptr') = QDragEnterEventConstGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr QDragEnterEvent -> HoppyF.Ptr QDragEnterEventConst) ptr'
instance QDragEnterEventPtr QDragEnterEvent where
toQDragEnterEvent = HoppyP.id
instance M264.QDragMoveEventConstPtr QDragEnterEvent where
toQDragMoveEventConst (QDragEnterEvent ptr') = M264.QDragMoveEventConst $ castQDragEnterEventToQDragMoveEvent $ (HoppyF.castPtr :: HoppyF.Ptr QDragEnterEvent -> HoppyF.Ptr QDragEnterEventConst) ptr'
toQDragMoveEventConst (QDragEnterEventGc fptr' ptr') = M264.QDragMoveEventConstGc fptr' $ castQDragEnterEventToQDragMoveEvent $ (HoppyF.castPtr :: HoppyF.Ptr QDragEnterEvent -> HoppyF.Ptr QDragEnterEventConst) ptr'
instance M264.QDragMoveEventPtr QDragEnterEvent where
toQDragMoveEvent (QDragEnterEvent ptr') = M264.QDragMoveEvent $ (HoppyF.castPtr :: HoppyF.Ptr M264.QDragMoveEventConst -> HoppyF.Ptr M264.QDragMoveEvent) $ castQDragEnterEventToQDragMoveEvent $ (HoppyF.castPtr :: HoppyF.Ptr QDragEnterEvent -> HoppyF.Ptr QDragEnterEventConst) ptr'
toQDragMoveEvent (QDragEnterEventGc fptr' ptr') = M264.QDragMoveEventGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M264.QDragMoveEventConst -> HoppyF.Ptr M264.QDragMoveEvent) $ castQDragEnterEventToQDragMoveEvent $ (HoppyF.castPtr :: HoppyF.Ptr QDragEnterEvent -> HoppyF.Ptr QDragEnterEventConst) ptr'
instance M266.QDropEventConstPtr QDragEnterEvent where
toQDropEventConst (QDragEnterEvent ptr') = M266.QDropEventConst $ castQDragEnterEventToQDropEvent $ (HoppyF.castPtr :: HoppyF.Ptr QDragEnterEvent -> HoppyF.Ptr QDragEnterEventConst) ptr'
toQDropEventConst (QDragEnterEventGc fptr' ptr') = M266.QDropEventConstGc fptr' $ castQDragEnterEventToQDropEvent $ (HoppyF.castPtr :: HoppyF.Ptr QDragEnterEvent -> HoppyF.Ptr QDragEnterEventConst) ptr'
instance M266.QDropEventPtr QDragEnterEvent where
toQDropEvent (QDragEnterEvent ptr') = M266.QDropEvent $ (HoppyF.castPtr :: HoppyF.Ptr M266.QDropEventConst -> HoppyF.Ptr M266.QDropEvent) $ castQDragEnterEventToQDropEvent $ (HoppyF.castPtr :: HoppyF.Ptr QDragEnterEvent -> HoppyF.Ptr QDragEnterEventConst) ptr'
toQDropEvent (QDragEnterEventGc fptr' ptr') = M266.QDropEventGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M266.QDropEventConst -> HoppyF.Ptr M266.QDropEvent) $ castQDragEnterEventToQDropEvent $ (HoppyF.castPtr :: HoppyF.Ptr QDragEnterEvent -> HoppyF.Ptr QDragEnterEventConst) ptr'
instance M34.QEventConstPtr QDragEnterEvent where
toQEventConst (QDragEnterEvent ptr') = M34.QEventConst $ castQDragEnterEventToQEvent $ (HoppyF.castPtr :: HoppyF.Ptr QDragEnterEvent -> HoppyF.Ptr QDragEnterEventConst) ptr'
toQEventConst (QDragEnterEventGc fptr' ptr') = M34.QEventConstGc fptr' $ castQDragEnterEventToQEvent $ (HoppyF.castPtr :: HoppyF.Ptr QDragEnterEvent -> HoppyF.Ptr QDragEnterEventConst) ptr'
instance M34.QEventPtr QDragEnterEvent where
toQEvent (QDragEnterEvent ptr') = M34.QEvent $ (HoppyF.castPtr :: HoppyF.Ptr M34.QEventConst -> HoppyF.Ptr M34.QEvent) $ castQDragEnterEventToQEvent $ (HoppyF.castPtr :: HoppyF.Ptr QDragEnterEvent -> HoppyF.Ptr QDragEnterEventConst) ptr'
toQEvent (QDragEnterEventGc fptr' ptr') = M34.QEventGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M34.QEventConst -> HoppyF.Ptr M34.QEvent) $ castQDragEnterEventToQEvent $ (HoppyF.castPtr :: HoppyF.Ptr QDragEnterEvent -> HoppyF.Ptr QDragEnterEventConst) ptr'
new :: (M114.QPointValue arg'1, M190.IsQtDropActions arg'2, M90.QMimeDataValue arg'3, M190.IsQtMouseButtons arg'4, M190.IsQtKeyboardModifiers arg'5) => (arg'1) -> (arg'2) -> (arg'3) -> (arg'4) -> (arg'5) -> (HoppyP.IO QDragEnterEvent)
new arg'1 arg'2 arg'3 arg'4 arg'5 =
M114.withQPointPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
(
QtahP.return . QtahFlags.flagsToNum . M190.toQtDropActions
) arg'2 >>= \arg'2' ->
M90.withQMimeDataPtr arg'3 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'3' ->
(
QtahP.return . QtahFlags.flagsToNum . M190.toQtMouseButtons
) arg'4 >>= \arg'4' ->
(
QtahP.return . QtahFlags.flagsToNum . M190.toQtKeyboardModifiers
) arg'5 >>= \arg'5' ->
HoppyP.fmap QDragEnterEvent
(new' arg'1' arg'2' arg'3' arg'4' arg'5')
class QDragEnterEventSuper a where
downToQDragEnterEvent :: a -> QDragEnterEvent
instance QDragEnterEventSuper M264.QDragMoveEvent where
downToQDragEnterEvent = castQDragEnterEventToNonconst . cast' . M264.castQDragMoveEventToConst
where
cast' (M264.QDragMoveEventConst ptr') = QDragEnterEventConst $ castQDragMoveEventToQDragEnterEvent ptr'
cast' (M264.QDragMoveEventConstGc fptr' ptr') = QDragEnterEventConstGc fptr' $ castQDragMoveEventToQDragEnterEvent ptr'
instance QDragEnterEventSuper M266.QDropEvent where
downToQDragEnterEvent = castQDragEnterEventToNonconst . cast' . M266.castQDropEventToConst
where
cast' (M266.QDropEventConst ptr') = QDragEnterEventConst $ castQDropEventToQDragEnterEvent ptr'
cast' (M266.QDropEventConstGc fptr' ptr') = QDragEnterEventConstGc fptr' $ castQDropEventToQDragEnterEvent ptr'
instance QDragEnterEventSuper M34.QEvent where
downToQDragEnterEvent = castQDragEnterEventToNonconst . cast' . M34.castQEventToConst
where
cast' (M34.QEventConst ptr') = QDragEnterEventConst $ castQEventToQDragEnterEvent ptr'
cast' (M34.QEventConstGc fptr' ptr') = QDragEnterEventConstGc fptr' $ castQEventToQDragEnterEvent ptr'
class QDragEnterEventSuperConst a where
downToQDragEnterEventConst :: a -> QDragEnterEventConst
instance QDragEnterEventSuperConst M264.QDragMoveEventConst where
downToQDragEnterEventConst = cast'
where
cast' (M264.QDragMoveEventConst ptr') = QDragEnterEventConst $ castQDragMoveEventToQDragEnterEvent ptr'
cast' (M264.QDragMoveEventConstGc fptr' ptr') = QDragEnterEventConstGc fptr' $ castQDragMoveEventToQDragEnterEvent ptr'
instance QDragEnterEventSuperConst M266.QDropEventConst where
downToQDragEnterEventConst = cast'
where
cast' (M266.QDropEventConst ptr') = QDragEnterEventConst $ castQDropEventToQDragEnterEvent ptr'
cast' (M266.QDropEventConstGc fptr' ptr') = QDragEnterEventConstGc fptr' $ castQDropEventToQDragEnterEvent ptr'
instance QDragEnterEventSuperConst M34.QEventConst where
downToQDragEnterEventConst = cast'
where
cast' (M34.QEventConst ptr') = QDragEnterEventConst $ castQEventToQDragEnterEvent ptr'
cast' (M34.QEventConstGc fptr' ptr') = QDragEnterEventConstGc fptr' $ castQEventToQDragEnterEvent ptr'
instance HoppyFHR.Assignable (HoppyF.Ptr (HoppyF.Ptr QDragEnterEvent)) QDragEnterEvent where
assign ptr' value' = HoppyF.poke ptr' $ HoppyFHR.toPtr value'
instance HoppyFHR.Decodable (HoppyF.Ptr (HoppyF.Ptr QDragEnterEvent)) QDragEnterEvent where
decode = HoppyP.fmap QDragEnterEvent . HoppyF.peek