qtah-qt5-0.8.0: src/Graphics/UI/Qtah/Generated/Widgets/QDateEdit.hs
{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-}
---------- GENERATED FILE, EDITS WILL BE LOST ----------
module Graphics.UI.Qtah.Generated.Widgets.QDateEdit (
castQDateEditToQDateTimeEdit,
castQDateTimeEditToQDateEdit,
castQDateEditToQAbstractSpinBox,
castQAbstractSpinBoxToQDateEdit,
castQDateEditToQWidget,
castQWidgetToQDateEdit,
castQDateEditToQObject,
castQObjectToQDateEdit,
QDateEditValue (..),
QDateEditConstPtr (..),
QDateEditPtr (..),
QDateEditConst (..),
castQDateEditToConst,
QDateEdit (..),
castQDateEditToNonconst,
new,
newWithParent,
newWithDate,
newWithDateAndParent,
QDateEditSuper (..),
QDateEditSuperConst (..),
) where
import qualified Foreign as HoppyF
import qualified Foreign.Hoppy.Runtime as HoppyFHR
import qualified Graphics.UI.Qtah.Generated.Core.QDate as M22
import qualified Graphics.UI.Qtah.Generated.Core.QObject as M94
import qualified Graphics.UI.Qtah.Generated.Widgets.QAbstractSpinBox as M366
import qualified Graphics.UI.Qtah.Generated.Widgets.QDateTimeEdit as M384
import qualified Graphics.UI.Qtah.Generated.Widgets.QWidget as M506
import Prelude (($), (.), (==))
import qualified Prelude as HoppyP
foreign import ccall "genpop__QDateEdit_new" new' :: HoppyP.IO (HoppyF.Ptr QDateEdit)
foreign import ccall "genpop__QDateEdit_newWithParent" newWithParent' :: HoppyF.Ptr M506.QWidget -> HoppyP.IO (HoppyF.Ptr QDateEdit)
foreign import ccall "genpop__QDateEdit_newWithDate" newWithDate' :: HoppyF.Ptr M22.QDateConst -> HoppyP.IO (HoppyF.Ptr QDateEdit)
foreign import ccall "genpop__QDateEdit_newWithDateAndParent" newWithDateAndParent' :: HoppyF.Ptr M22.QDateConst -> HoppyF.Ptr M506.QWidget -> HoppyP.IO (HoppyF.Ptr QDateEdit)
foreign import ccall "gencast__QDateEdit__QDateTimeEdit" castQDateEditToQDateTimeEdit :: HoppyF.Ptr QDateEditConst -> HoppyF.Ptr M384.QDateTimeEditConst
foreign import ccall "gencast__QDateTimeEdit__QDateEdit" castQDateTimeEditToQDateEdit :: HoppyF.Ptr M384.QDateTimeEditConst -> HoppyF.Ptr QDateEditConst
foreign import ccall "gencast__QDateEdit__QAbstractSpinBox" castQDateEditToQAbstractSpinBox :: HoppyF.Ptr QDateEditConst -> HoppyF.Ptr M366.QAbstractSpinBoxConst
foreign import ccall "gencast__QAbstractSpinBox__QDateEdit" castQAbstractSpinBoxToQDateEdit :: HoppyF.Ptr M366.QAbstractSpinBoxConst -> HoppyF.Ptr QDateEditConst
foreign import ccall "gencast__QDateEdit__QWidget" castQDateEditToQWidget :: HoppyF.Ptr QDateEditConst -> HoppyF.Ptr M506.QWidgetConst
foreign import ccall "gencast__QWidget__QDateEdit" castQWidgetToQDateEdit :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr QDateEditConst
foreign import ccall "gencast__QDateEdit__QObject" castQDateEditToQObject :: HoppyF.Ptr QDateEditConst -> HoppyF.Ptr M94.QObjectConst
foreign import ccall "gencast__QObject__QDateEdit" castQObjectToQDateEdit :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr QDateEditConst
foreign import ccall "gendel__QDateEdit" delete'QDateEdit :: HoppyF.Ptr QDateEditConst -> HoppyP.IO ()
foreign import ccall "&gendel__QDateEdit" deletePtr'QDateEdit :: HoppyF.FunPtr (HoppyF.Ptr QDateEditConst -> HoppyP.IO ())
class QDateEditValue a where
withQDateEditPtr :: a -> (QDateEditConst -> HoppyP.IO b) -> HoppyP.IO b
instance {-# OVERLAPPABLE #-} QDateEditConstPtr a => QDateEditValue a where
withQDateEditPtr = HoppyP.flip ($) . toQDateEditConst
class (M384.QDateTimeEditConstPtr this) => QDateEditConstPtr this where
toQDateEditConst :: this -> QDateEditConst
class (QDateEditConstPtr this, M384.QDateTimeEditPtr this) => QDateEditPtr this where
toQDateEdit :: this -> QDateEdit
data QDateEditConst =
QDateEditConst (HoppyF.Ptr QDateEditConst)
| QDateEditConstGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QDateEditConst)
deriving (HoppyP.Show)
instance HoppyP.Eq QDateEditConst where
x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y
instance HoppyP.Ord QDateEditConst where
compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)
castQDateEditToConst :: QDateEdit -> QDateEditConst
castQDateEditToConst (QDateEdit ptr') = QDateEditConst $ HoppyF.castPtr ptr'
castQDateEditToConst (QDateEditGc fptr' ptr') = QDateEditConstGc fptr' $ HoppyF.castPtr ptr'
instance HoppyFHR.CppPtr QDateEditConst where
nullptr = QDateEditConst HoppyF.nullPtr
withCppPtr (QDateEditConst ptr') f' = f' ptr'
withCppPtr (QDateEditConstGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
toPtr (QDateEditConst ptr') = ptr'
toPtr (QDateEditConstGc _ ptr') = ptr'
touchCppPtr (QDateEditConst _) = HoppyP.return ()
touchCppPtr (QDateEditConstGc fptr' _) = HoppyF.touchForeignPtr fptr'
instance HoppyFHR.Deletable QDateEditConst where
delete (QDateEditConst ptr') = delete'QDateEdit ptr'
delete (QDateEditConstGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QDateEditConst", " object."]
toGc this'@(QDateEditConst ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QDateEditConstGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QDateEdit :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ())
toGc this'@(QDateEditConstGc {}) = HoppyP.return this'
instance QDateEditConstPtr QDateEditConst where
toQDateEditConst = HoppyP.id
instance M384.QDateTimeEditConstPtr QDateEditConst where
toQDateTimeEditConst (QDateEditConst ptr') = M384.QDateTimeEditConst $ castQDateEditToQDateTimeEdit ptr'
toQDateTimeEditConst (QDateEditConstGc fptr' ptr') = M384.QDateTimeEditConstGc fptr' $ castQDateEditToQDateTimeEdit ptr'
instance M366.QAbstractSpinBoxConstPtr QDateEditConst where
toQAbstractSpinBoxConst (QDateEditConst ptr') = M366.QAbstractSpinBoxConst $ castQDateEditToQAbstractSpinBox ptr'
toQAbstractSpinBoxConst (QDateEditConstGc fptr' ptr') = M366.QAbstractSpinBoxConstGc fptr' $ castQDateEditToQAbstractSpinBox ptr'
instance M506.QWidgetConstPtr QDateEditConst where
toQWidgetConst (QDateEditConst ptr') = M506.QWidgetConst $ castQDateEditToQWidget ptr'
toQWidgetConst (QDateEditConstGc fptr' ptr') = M506.QWidgetConstGc fptr' $ castQDateEditToQWidget ptr'
instance M94.QObjectConstPtr QDateEditConst where
toQObjectConst (QDateEditConst ptr') = M94.QObjectConst $ castQDateEditToQObject ptr'
toQObjectConst (QDateEditConstGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQDateEditToQObject ptr'
data QDateEdit =
QDateEdit (HoppyF.Ptr QDateEdit)
| QDateEditGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QDateEdit)
deriving (HoppyP.Show)
instance HoppyP.Eq QDateEdit where
x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y
instance HoppyP.Ord QDateEdit where
compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)
castQDateEditToNonconst :: QDateEditConst -> QDateEdit
castQDateEditToNonconst (QDateEditConst ptr') = QDateEdit $ HoppyF.castPtr ptr'
castQDateEditToNonconst (QDateEditConstGc fptr' ptr') = QDateEditGc fptr' $ HoppyF.castPtr ptr'
instance HoppyFHR.CppPtr QDateEdit where
nullptr = QDateEdit HoppyF.nullPtr
withCppPtr (QDateEdit ptr') f' = f' ptr'
withCppPtr (QDateEditGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
toPtr (QDateEdit ptr') = ptr'
toPtr (QDateEditGc _ ptr') = ptr'
touchCppPtr (QDateEdit _) = HoppyP.return ()
touchCppPtr (QDateEditGc fptr' _) = HoppyF.touchForeignPtr fptr'
instance HoppyFHR.Deletable QDateEdit where
delete (QDateEdit ptr') = delete'QDateEdit $ (HoppyF.castPtr ptr' :: HoppyF.Ptr QDateEditConst)
delete (QDateEditGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QDateEdit", " object."]
toGc this'@(QDateEdit ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QDateEditGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QDateEdit :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ())
toGc this'@(QDateEditGc {}) = HoppyP.return this'
instance QDateEditConstPtr QDateEdit where
toQDateEditConst (QDateEdit ptr') = QDateEditConst $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
toQDateEditConst (QDateEditGc fptr' ptr') = QDateEditConstGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
instance QDateEditPtr QDateEdit where
toQDateEdit = HoppyP.id
instance M384.QDateTimeEditConstPtr QDateEdit where
toQDateTimeEditConst (QDateEdit ptr') = M384.QDateTimeEditConst $ castQDateEditToQDateTimeEdit $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
toQDateTimeEditConst (QDateEditGc fptr' ptr') = M384.QDateTimeEditConstGc fptr' $ castQDateEditToQDateTimeEdit $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
instance M384.QDateTimeEditPtr QDateEdit where
toQDateTimeEdit (QDateEdit ptr') = M384.QDateTimeEdit $ (HoppyF.castPtr :: HoppyF.Ptr M384.QDateTimeEditConst -> HoppyF.Ptr M384.QDateTimeEdit) $ castQDateEditToQDateTimeEdit $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
toQDateTimeEdit (QDateEditGc fptr' ptr') = M384.QDateTimeEditGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M384.QDateTimeEditConst -> HoppyF.Ptr M384.QDateTimeEdit) $ castQDateEditToQDateTimeEdit $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
instance M366.QAbstractSpinBoxConstPtr QDateEdit where
toQAbstractSpinBoxConst (QDateEdit ptr') = M366.QAbstractSpinBoxConst $ castQDateEditToQAbstractSpinBox $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
toQAbstractSpinBoxConst (QDateEditGc fptr' ptr') = M366.QAbstractSpinBoxConstGc fptr' $ castQDateEditToQAbstractSpinBox $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
instance M366.QAbstractSpinBoxPtr QDateEdit where
toQAbstractSpinBox (QDateEdit ptr') = M366.QAbstractSpinBox $ (HoppyF.castPtr :: HoppyF.Ptr M366.QAbstractSpinBoxConst -> HoppyF.Ptr M366.QAbstractSpinBox) $ castQDateEditToQAbstractSpinBox $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
toQAbstractSpinBox (QDateEditGc fptr' ptr') = M366.QAbstractSpinBoxGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M366.QAbstractSpinBoxConst -> HoppyF.Ptr M366.QAbstractSpinBox) $ castQDateEditToQAbstractSpinBox $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
instance M506.QWidgetConstPtr QDateEdit where
toQWidgetConst (QDateEdit ptr') = M506.QWidgetConst $ castQDateEditToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
toQWidgetConst (QDateEditGc fptr' ptr') = M506.QWidgetConstGc fptr' $ castQDateEditToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
instance M506.QWidgetPtr QDateEdit where
toQWidget (QDateEdit ptr') = M506.QWidget $ (HoppyF.castPtr :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr M506.QWidget) $ castQDateEditToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
toQWidget (QDateEditGc fptr' ptr') = M506.QWidgetGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr M506.QWidget) $ castQDateEditToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
instance M94.QObjectConstPtr QDateEdit where
toQObjectConst (QDateEdit ptr') = M94.QObjectConst $ castQDateEditToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
toQObjectConst (QDateEditGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQDateEditToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
instance M94.QObjectPtr QDateEdit where
toQObject (QDateEdit ptr') = M94.QObject $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQDateEditToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
toQObject (QDateEditGc fptr' ptr') = M94.QObjectGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQDateEditToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QDateEdit -> HoppyF.Ptr QDateEditConst) ptr'
new :: (HoppyP.IO QDateEdit)
new =
HoppyP.fmap QDateEdit
(new')
newWithParent :: (M506.QWidgetPtr arg'1) => (arg'1) -> (HoppyP.IO QDateEdit)
newWithParent arg'1 =
HoppyFHR.withCppPtr (M506.toQWidget arg'1) $ \arg'1' ->
HoppyP.fmap QDateEdit
(newWithParent' arg'1')
newWithDate :: (M22.QDateValue arg'1) => (arg'1) -> (HoppyP.IO QDateEdit)
newWithDate arg'1 =
M22.withQDatePtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
HoppyP.fmap QDateEdit
(newWithDate' arg'1')
newWithDateAndParent :: (M22.QDateValue arg'1, M506.QWidgetPtr arg'2) => (arg'1) -> (arg'2) -> (HoppyP.IO QDateEdit)
newWithDateAndParent arg'1 arg'2 =
M22.withQDatePtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
HoppyFHR.withCppPtr (M506.toQWidget arg'2) $ \arg'2' ->
HoppyP.fmap QDateEdit
(newWithDateAndParent' arg'1' arg'2')
class QDateEditSuper a where
downToQDateEdit :: a -> QDateEdit
instance QDateEditSuper M384.QDateTimeEdit where
downToQDateEdit = castQDateEditToNonconst . cast' . M384.castQDateTimeEditToConst
where
cast' (M384.QDateTimeEditConst ptr') = QDateEditConst $ castQDateTimeEditToQDateEdit ptr'
cast' (M384.QDateTimeEditConstGc fptr' ptr') = QDateEditConstGc fptr' $ castQDateTimeEditToQDateEdit ptr'
instance QDateEditSuper M366.QAbstractSpinBox where
downToQDateEdit = castQDateEditToNonconst . cast' . M366.castQAbstractSpinBoxToConst
where
cast' (M366.QAbstractSpinBoxConst ptr') = QDateEditConst $ castQAbstractSpinBoxToQDateEdit ptr'
cast' (M366.QAbstractSpinBoxConstGc fptr' ptr') = QDateEditConstGc fptr' $ castQAbstractSpinBoxToQDateEdit ptr'
instance QDateEditSuper M506.QWidget where
downToQDateEdit = castQDateEditToNonconst . cast' . M506.castQWidgetToConst
where
cast' (M506.QWidgetConst ptr') = QDateEditConst $ castQWidgetToQDateEdit ptr'
cast' (M506.QWidgetConstGc fptr' ptr') = QDateEditConstGc fptr' $ castQWidgetToQDateEdit ptr'
instance QDateEditSuper M94.QObject where
downToQDateEdit = castQDateEditToNonconst . cast' . M94.castQObjectToConst
where
cast' (M94.QObjectConst ptr') = QDateEditConst $ castQObjectToQDateEdit ptr'
cast' (M94.QObjectConstGc fptr' ptr') = QDateEditConstGc fptr' $ castQObjectToQDateEdit ptr'
class QDateEditSuperConst a where
downToQDateEditConst :: a -> QDateEditConst
instance QDateEditSuperConst M384.QDateTimeEditConst where
downToQDateEditConst = cast'
where
cast' (M384.QDateTimeEditConst ptr') = QDateEditConst $ castQDateTimeEditToQDateEdit ptr'
cast' (M384.QDateTimeEditConstGc fptr' ptr') = QDateEditConstGc fptr' $ castQDateTimeEditToQDateEdit ptr'
instance QDateEditSuperConst M366.QAbstractSpinBoxConst where
downToQDateEditConst = cast'
where
cast' (M366.QAbstractSpinBoxConst ptr') = QDateEditConst $ castQAbstractSpinBoxToQDateEdit ptr'
cast' (M366.QAbstractSpinBoxConstGc fptr' ptr') = QDateEditConstGc fptr' $ castQAbstractSpinBoxToQDateEdit ptr'
instance QDateEditSuperConst M506.QWidgetConst where
downToQDateEditConst = cast'
where
cast' (M506.QWidgetConst ptr') = QDateEditConst $ castQWidgetToQDateEdit ptr'
cast' (M506.QWidgetConstGc fptr' ptr') = QDateEditConstGc fptr' $ castQWidgetToQDateEdit ptr'
instance QDateEditSuperConst M94.QObjectConst where
downToQDateEditConst = cast'
where
cast' (M94.QObjectConst ptr') = QDateEditConst $ castQObjectToQDateEdit ptr'
cast' (M94.QObjectConstGc fptr' ptr') = QDateEditConstGc fptr' $ castQObjectToQDateEdit ptr'
instance HoppyFHR.Assignable (HoppyF.Ptr (HoppyF.Ptr QDateEdit)) QDateEdit where
assign ptr' value' = HoppyF.poke ptr' $ HoppyFHR.toPtr value'
instance HoppyFHR.Decodable (HoppyF.Ptr (HoppyF.Ptr QDateEdit)) QDateEdit where
decode = HoppyP.fmap QDateEdit . HoppyF.peek