qtah-qt5-0.8.0: src/Graphics/UI/Qtah/Generated/Widgets/QCheckBox.hs
{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-}
---------- GENERATED FILE, EDITS WILL BE LOST ----------
module Graphics.UI.Qtah.Generated.Widgets.QCheckBox (
castQCheckBoxToQAbstractButton,
castQAbstractButtonToQCheckBox,
castQCheckBoxToQWidget,
castQWidgetToQCheckBox,
castQCheckBoxToQObject,
castQObjectToQCheckBox,
QCheckBoxValue (..),
QCheckBoxConstPtr (..),
checkState,
isTristate,
QCheckBoxPtr (..),
setCheckState,
setTristate,
QCheckBoxConst (..),
castQCheckBoxToConst,
QCheckBox (..),
castQCheckBoxToNonconst,
new,
newWithParent,
newWithText,
newWithTextAndParent,
QCheckBoxSuper (..),
QCheckBoxSuperConst (..),
) where
import qualified Foreign as HoppyF
import qualified Foreign.C as HoppyFC
import qualified Foreign.Hoppy.Runtime as HoppyFHR
import qualified Graphics.UI.Qtah.Generated.Core.QObject as M94
import qualified Graphics.UI.Qtah.Generated.Core.QString as M142
import qualified Graphics.UI.Qtah.Generated.Core.Types as M190
import qualified Graphics.UI.Qtah.Generated.Widgets.QAbstractButton as M354
import qualified Graphics.UI.Qtah.Generated.Widgets.QWidget as M506
import Prelude (($), (.), (/=), (=<<), (==), (>>=))
import qualified Prelude as HoppyP
foreign import ccall "genpop__QCheckBox_new" new' :: HoppyP.IO (HoppyF.Ptr QCheckBox)
foreign import ccall "genpop__QCheckBox_newWithParent" newWithParent' :: HoppyF.Ptr M506.QWidget -> HoppyP.IO (HoppyF.Ptr QCheckBox)
foreign import ccall "genpop__QCheckBox_newWithText" newWithText' :: HoppyF.Ptr M142.QStringConst -> HoppyP.IO (HoppyF.Ptr QCheckBox)
foreign import ccall "genpop__QCheckBox_newWithTextAndParent" newWithTextAndParent' :: HoppyF.Ptr M142.QStringConst -> HoppyF.Ptr M506.QWidget -> HoppyP.IO (HoppyF.Ptr QCheckBox)
foreign import ccall "genpop__QCheckBox_checkState" checkState' :: HoppyF.Ptr QCheckBoxConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QCheckBox_setCheckState" setCheckState' :: HoppyF.Ptr QCheckBox -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QCheckBox_isTristate" isTristate' :: HoppyF.Ptr QCheckBoxConst -> HoppyP.IO HoppyFC.CBool
foreign import ccall "genpop__QCheckBox_setTristate" setTristate' :: HoppyF.Ptr QCheckBox -> HoppyFC.CBool -> HoppyP.IO ()
foreign import ccall "gencast__QCheckBox__QAbstractButton" castQCheckBoxToQAbstractButton :: HoppyF.Ptr QCheckBoxConst -> HoppyF.Ptr M354.QAbstractButtonConst
foreign import ccall "gencast__QAbstractButton__QCheckBox" castQAbstractButtonToQCheckBox :: HoppyF.Ptr M354.QAbstractButtonConst -> HoppyF.Ptr QCheckBoxConst
foreign import ccall "gencast__QCheckBox__QWidget" castQCheckBoxToQWidget :: HoppyF.Ptr QCheckBoxConst -> HoppyF.Ptr M506.QWidgetConst
foreign import ccall "gencast__QWidget__QCheckBox" castQWidgetToQCheckBox :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr QCheckBoxConst
foreign import ccall "gencast__QCheckBox__QObject" castQCheckBoxToQObject :: HoppyF.Ptr QCheckBoxConst -> HoppyF.Ptr M94.QObjectConst
foreign import ccall "gencast__QObject__QCheckBox" castQObjectToQCheckBox :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr QCheckBoxConst
foreign import ccall "gendel__QCheckBox" delete'QCheckBox :: HoppyF.Ptr QCheckBoxConst -> HoppyP.IO ()
foreign import ccall "&gendel__QCheckBox" deletePtr'QCheckBox :: HoppyF.FunPtr (HoppyF.Ptr QCheckBoxConst -> HoppyP.IO ())
class QCheckBoxValue a where
withQCheckBoxPtr :: a -> (QCheckBoxConst -> HoppyP.IO b) -> HoppyP.IO b
instance {-# OVERLAPPABLE #-} QCheckBoxConstPtr a => QCheckBoxValue a where
withQCheckBoxPtr = HoppyP.flip ($) . toQCheckBoxConst
class (M354.QAbstractButtonConstPtr this) => QCheckBoxConstPtr this where
toQCheckBoxConst :: this -> QCheckBoxConst
checkState :: (QCheckBoxValue this) => (this) {- ^ this -} -> (HoppyP.IO M190.QtCheckState)
checkState arg'1 =
withQCheckBoxPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
(
HoppyP.return . HoppyFHR.toCppEnum
) =<<
(checkState' arg'1')
isTristate :: (QCheckBoxValue this) => (this) {- ^ this -} -> (HoppyP.IO HoppyP.Bool)
isTristate arg'1 =
withQCheckBoxPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
(
(HoppyP.return . (/= 0))
) =<<
(isTristate' arg'1')
class (QCheckBoxConstPtr this, M354.QAbstractButtonPtr this) => QCheckBoxPtr this where
toQCheckBox :: this -> QCheckBox
setCheckState :: (QCheckBoxPtr this) => (this) {- ^ this -} -> (M190.QtCheckState) -> (HoppyP.IO ())
setCheckState arg'1 arg'2 =
HoppyFHR.withCppPtr (toQCheckBox arg'1) $ \arg'1' ->
(
HoppyP.return . HoppyFHR.fromCppEnum
) arg'2 >>= \arg'2' ->
(setCheckState' arg'1' arg'2')
setTristate :: (QCheckBoxPtr this) => (this) {- ^ this -} -> (HoppyP.Bool) -> (HoppyP.IO ())
setTristate arg'1 arg'2 =
HoppyFHR.withCppPtr (toQCheckBox arg'1) $ \arg'1' ->
(
\x -> HoppyP.return $ if x then 1 else 0
) arg'2 >>= \arg'2' ->
(setTristate' arg'1' arg'2')
data QCheckBoxConst =
QCheckBoxConst (HoppyF.Ptr QCheckBoxConst)
| QCheckBoxConstGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QCheckBoxConst)
deriving (HoppyP.Show)
instance HoppyP.Eq QCheckBoxConst where
x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y
instance HoppyP.Ord QCheckBoxConst where
compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)
castQCheckBoxToConst :: QCheckBox -> QCheckBoxConst
castQCheckBoxToConst (QCheckBox ptr') = QCheckBoxConst $ HoppyF.castPtr ptr'
castQCheckBoxToConst (QCheckBoxGc fptr' ptr') = QCheckBoxConstGc fptr' $ HoppyF.castPtr ptr'
instance HoppyFHR.CppPtr QCheckBoxConst where
nullptr = QCheckBoxConst HoppyF.nullPtr
withCppPtr (QCheckBoxConst ptr') f' = f' ptr'
withCppPtr (QCheckBoxConstGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
toPtr (QCheckBoxConst ptr') = ptr'
toPtr (QCheckBoxConstGc _ ptr') = ptr'
touchCppPtr (QCheckBoxConst _) = HoppyP.return ()
touchCppPtr (QCheckBoxConstGc fptr' _) = HoppyF.touchForeignPtr fptr'
instance HoppyFHR.Deletable QCheckBoxConst where
delete (QCheckBoxConst ptr') = delete'QCheckBox ptr'
delete (QCheckBoxConstGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QCheckBoxConst", " object."]
toGc this'@(QCheckBoxConst ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QCheckBoxConstGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QCheckBox :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ())
toGc this'@(QCheckBoxConstGc {}) = HoppyP.return this'
instance QCheckBoxConstPtr QCheckBoxConst where
toQCheckBoxConst = HoppyP.id
instance M354.QAbstractButtonConstPtr QCheckBoxConst where
toQAbstractButtonConst (QCheckBoxConst ptr') = M354.QAbstractButtonConst $ castQCheckBoxToQAbstractButton ptr'
toQAbstractButtonConst (QCheckBoxConstGc fptr' ptr') = M354.QAbstractButtonConstGc fptr' $ castQCheckBoxToQAbstractButton ptr'
instance M506.QWidgetConstPtr QCheckBoxConst where
toQWidgetConst (QCheckBoxConst ptr') = M506.QWidgetConst $ castQCheckBoxToQWidget ptr'
toQWidgetConst (QCheckBoxConstGc fptr' ptr') = M506.QWidgetConstGc fptr' $ castQCheckBoxToQWidget ptr'
instance M94.QObjectConstPtr QCheckBoxConst where
toQObjectConst (QCheckBoxConst ptr') = M94.QObjectConst $ castQCheckBoxToQObject ptr'
toQObjectConst (QCheckBoxConstGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQCheckBoxToQObject ptr'
data QCheckBox =
QCheckBox (HoppyF.Ptr QCheckBox)
| QCheckBoxGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QCheckBox)
deriving (HoppyP.Show)
instance HoppyP.Eq QCheckBox where
x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y
instance HoppyP.Ord QCheckBox where
compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)
castQCheckBoxToNonconst :: QCheckBoxConst -> QCheckBox
castQCheckBoxToNonconst (QCheckBoxConst ptr') = QCheckBox $ HoppyF.castPtr ptr'
castQCheckBoxToNonconst (QCheckBoxConstGc fptr' ptr') = QCheckBoxGc fptr' $ HoppyF.castPtr ptr'
instance HoppyFHR.CppPtr QCheckBox where
nullptr = QCheckBox HoppyF.nullPtr
withCppPtr (QCheckBox ptr') f' = f' ptr'
withCppPtr (QCheckBoxGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
toPtr (QCheckBox ptr') = ptr'
toPtr (QCheckBoxGc _ ptr') = ptr'
touchCppPtr (QCheckBox _) = HoppyP.return ()
touchCppPtr (QCheckBoxGc fptr' _) = HoppyF.touchForeignPtr fptr'
instance HoppyFHR.Deletable QCheckBox where
delete (QCheckBox ptr') = delete'QCheckBox $ (HoppyF.castPtr ptr' :: HoppyF.Ptr QCheckBoxConst)
delete (QCheckBoxGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QCheckBox", " object."]
toGc this'@(QCheckBox ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QCheckBoxGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QCheckBox :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ())
toGc this'@(QCheckBoxGc {}) = HoppyP.return this'
instance QCheckBoxConstPtr QCheckBox where
toQCheckBoxConst (QCheckBox ptr') = QCheckBoxConst $ (HoppyF.castPtr :: HoppyF.Ptr QCheckBox -> HoppyF.Ptr QCheckBoxConst) ptr'
toQCheckBoxConst (QCheckBoxGc fptr' ptr') = QCheckBoxConstGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr QCheckBox -> HoppyF.Ptr QCheckBoxConst) ptr'
instance QCheckBoxPtr QCheckBox where
toQCheckBox = HoppyP.id
instance M354.QAbstractButtonConstPtr QCheckBox where
toQAbstractButtonConst (QCheckBox ptr') = M354.QAbstractButtonConst $ castQCheckBoxToQAbstractButton $ (HoppyF.castPtr :: HoppyF.Ptr QCheckBox -> HoppyF.Ptr QCheckBoxConst) ptr'
toQAbstractButtonConst (QCheckBoxGc fptr' ptr') = M354.QAbstractButtonConstGc fptr' $ castQCheckBoxToQAbstractButton $ (HoppyF.castPtr :: HoppyF.Ptr QCheckBox -> HoppyF.Ptr QCheckBoxConst) ptr'
instance M354.QAbstractButtonPtr QCheckBox where
toQAbstractButton (QCheckBox ptr') = M354.QAbstractButton $ (HoppyF.castPtr :: HoppyF.Ptr M354.QAbstractButtonConst -> HoppyF.Ptr M354.QAbstractButton) $ castQCheckBoxToQAbstractButton $ (HoppyF.castPtr :: HoppyF.Ptr QCheckBox -> HoppyF.Ptr QCheckBoxConst) ptr'
toQAbstractButton (QCheckBoxGc fptr' ptr') = M354.QAbstractButtonGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M354.QAbstractButtonConst -> HoppyF.Ptr M354.QAbstractButton) $ castQCheckBoxToQAbstractButton $ (HoppyF.castPtr :: HoppyF.Ptr QCheckBox -> HoppyF.Ptr QCheckBoxConst) ptr'
instance M506.QWidgetConstPtr QCheckBox where
toQWidgetConst (QCheckBox ptr') = M506.QWidgetConst $ castQCheckBoxToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QCheckBox -> HoppyF.Ptr QCheckBoxConst) ptr'
toQWidgetConst (QCheckBoxGc fptr' ptr') = M506.QWidgetConstGc fptr' $ castQCheckBoxToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QCheckBox -> HoppyF.Ptr QCheckBoxConst) ptr'
instance M506.QWidgetPtr QCheckBox where
toQWidget (QCheckBox ptr') = M506.QWidget $ (HoppyF.castPtr :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr M506.QWidget) $ castQCheckBoxToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QCheckBox -> HoppyF.Ptr QCheckBoxConst) ptr'
toQWidget (QCheckBoxGc fptr' ptr') = M506.QWidgetGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr M506.QWidget) $ castQCheckBoxToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QCheckBox -> HoppyF.Ptr QCheckBoxConst) ptr'
instance M94.QObjectConstPtr QCheckBox where
toQObjectConst (QCheckBox ptr') = M94.QObjectConst $ castQCheckBoxToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QCheckBox -> HoppyF.Ptr QCheckBoxConst) ptr'
toQObjectConst (QCheckBoxGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQCheckBoxToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QCheckBox -> HoppyF.Ptr QCheckBoxConst) ptr'
instance M94.QObjectPtr QCheckBox where
toQObject (QCheckBox ptr') = M94.QObject $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQCheckBoxToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QCheckBox -> HoppyF.Ptr QCheckBoxConst) ptr'
toQObject (QCheckBoxGc fptr' ptr') = M94.QObjectGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQCheckBoxToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QCheckBox -> HoppyF.Ptr QCheckBoxConst) ptr'
new :: (HoppyP.IO QCheckBox)
new =
HoppyP.fmap QCheckBox
(new')
newWithParent :: (M506.QWidgetPtr arg'1) => (arg'1) -> (HoppyP.IO QCheckBox)
newWithParent arg'1 =
HoppyFHR.withCppPtr (M506.toQWidget arg'1) $ \arg'1' ->
HoppyP.fmap QCheckBox
(newWithParent' arg'1')
newWithText :: (M142.QStringValue arg'1) => (arg'1) -> (HoppyP.IO QCheckBox)
newWithText arg'1 =
M142.withQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
HoppyP.fmap QCheckBox
(newWithText' arg'1')
newWithTextAndParent :: (M142.QStringValue arg'1, M506.QWidgetPtr arg'2) => (arg'1) -> (arg'2) -> (HoppyP.IO QCheckBox)
newWithTextAndParent arg'1 arg'2 =
M142.withQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
HoppyFHR.withCppPtr (M506.toQWidget arg'2) $ \arg'2' ->
HoppyP.fmap QCheckBox
(newWithTextAndParent' arg'1' arg'2')
class QCheckBoxSuper a where
downToQCheckBox :: a -> QCheckBox
instance QCheckBoxSuper M354.QAbstractButton where
downToQCheckBox = castQCheckBoxToNonconst . cast' . M354.castQAbstractButtonToConst
where
cast' (M354.QAbstractButtonConst ptr') = QCheckBoxConst $ castQAbstractButtonToQCheckBox ptr'
cast' (M354.QAbstractButtonConstGc fptr' ptr') = QCheckBoxConstGc fptr' $ castQAbstractButtonToQCheckBox ptr'
instance QCheckBoxSuper M506.QWidget where
downToQCheckBox = castQCheckBoxToNonconst . cast' . M506.castQWidgetToConst
where
cast' (M506.QWidgetConst ptr') = QCheckBoxConst $ castQWidgetToQCheckBox ptr'
cast' (M506.QWidgetConstGc fptr' ptr') = QCheckBoxConstGc fptr' $ castQWidgetToQCheckBox ptr'
instance QCheckBoxSuper M94.QObject where
downToQCheckBox = castQCheckBoxToNonconst . cast' . M94.castQObjectToConst
where
cast' (M94.QObjectConst ptr') = QCheckBoxConst $ castQObjectToQCheckBox ptr'
cast' (M94.QObjectConstGc fptr' ptr') = QCheckBoxConstGc fptr' $ castQObjectToQCheckBox ptr'
class QCheckBoxSuperConst a where
downToQCheckBoxConst :: a -> QCheckBoxConst
instance QCheckBoxSuperConst M354.QAbstractButtonConst where
downToQCheckBoxConst = cast'
where
cast' (M354.QAbstractButtonConst ptr') = QCheckBoxConst $ castQAbstractButtonToQCheckBox ptr'
cast' (M354.QAbstractButtonConstGc fptr' ptr') = QCheckBoxConstGc fptr' $ castQAbstractButtonToQCheckBox ptr'
instance QCheckBoxSuperConst M506.QWidgetConst where
downToQCheckBoxConst = cast'
where
cast' (M506.QWidgetConst ptr') = QCheckBoxConst $ castQWidgetToQCheckBox ptr'
cast' (M506.QWidgetConstGc fptr' ptr') = QCheckBoxConstGc fptr' $ castQWidgetToQCheckBox ptr'
instance QCheckBoxSuperConst M94.QObjectConst where
downToQCheckBoxConst = cast'
where
cast' (M94.QObjectConst ptr') = QCheckBoxConst $ castQObjectToQCheckBox ptr'
cast' (M94.QObjectConstGc fptr' ptr') = QCheckBoxConstGc fptr' $ castQObjectToQCheckBox ptr'
instance HoppyFHR.Assignable (HoppyF.Ptr (HoppyF.Ptr QCheckBox)) QCheckBox where
assign ptr' value' = HoppyF.poke ptr' $ HoppyFHR.toPtr value'
instance HoppyFHR.Decodable (HoppyF.Ptr (HoppyF.Ptr QCheckBox)) QCheckBox where
decode = HoppyP.fmap QCheckBox . HoppyF.peek