{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-} ---------- GENERATED FILE, EDITS WILL BE LOST ---------- module Graphics.UI.Qtah.Generated.Widgets.QScrollBar ( castQScrollBarToQAbstractSlider, castQAbstractSliderToQScrollBar, castQScrollBarToQWidget, castQWidgetToQScrollBar, castQScrollBarToQObject, castQObjectToQScrollBar, QScrollBarValue (..), QScrollBarConstPtr (..), QScrollBarPtr (..), QScrollBarConst (..), castQScrollBarToConst, QScrollBar (..), castQScrollBarToNonconst, new, newWithParent, newWithOrientation, newWithOrientationAndParent, QScrollBarSuper (..), QScrollBarSuperConst (..), ) 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.Types as M190 import {-# SOURCE #-} qualified Graphics.UI.Qtah.Generated.Widgets.QAbstractSlider as M364 import {-# SOURCE #-} qualified Graphics.UI.Qtah.Generated.Widgets.QWidget as M506 import Prelude (($), (.), (==), (>>=)) import qualified Prelude as HoppyP foreign import ccall "genpop__QScrollBar_new" new' :: HoppyP.IO (HoppyF.Ptr QScrollBar) foreign import ccall "genpop__QScrollBar_newWithParent" newWithParent' :: HoppyF.Ptr M506.QWidget -> HoppyP.IO (HoppyF.Ptr QScrollBar) foreign import ccall "genpop__QScrollBar_newWithOrientation" newWithOrientation' :: HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr QScrollBar) foreign import ccall "genpop__QScrollBar_newWithOrientationAndParent" newWithOrientationAndParent' :: HoppyFC.CInt -> HoppyF.Ptr M506.QWidget -> HoppyP.IO (HoppyF.Ptr QScrollBar) foreign import ccall "gencast__QScrollBar__QAbstractSlider" castQScrollBarToQAbstractSlider :: HoppyF.Ptr QScrollBarConst -> HoppyF.Ptr M364.QAbstractSliderConst foreign import ccall "gencast__QAbstractSlider__QScrollBar" castQAbstractSliderToQScrollBar :: HoppyF.Ptr M364.QAbstractSliderConst -> HoppyF.Ptr QScrollBarConst foreign import ccall "gencast__QScrollBar__QWidget" castQScrollBarToQWidget :: HoppyF.Ptr QScrollBarConst -> HoppyF.Ptr M506.QWidgetConst foreign import ccall "gencast__QWidget__QScrollBar" castQWidgetToQScrollBar :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr QScrollBarConst foreign import ccall "gencast__QScrollBar__QObject" castQScrollBarToQObject :: HoppyF.Ptr QScrollBarConst -> HoppyF.Ptr M94.QObjectConst foreign import ccall "gencast__QObject__QScrollBar" castQObjectToQScrollBar :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr QScrollBarConst foreign import ccall "gendel__QScrollBar" delete'QScrollBar :: HoppyF.Ptr QScrollBarConst -> HoppyP.IO () foreign import ccall "&gendel__QScrollBar" deletePtr'QScrollBar :: HoppyF.FunPtr (HoppyF.Ptr QScrollBarConst -> HoppyP.IO ()) class QScrollBarValue a where withQScrollBarPtr :: a -> (QScrollBarConst -> HoppyP.IO b) -> HoppyP.IO b instance {-# OVERLAPPABLE #-} QScrollBarConstPtr a => QScrollBarValue a where withQScrollBarPtr = HoppyP.flip ($) . toQScrollBarConst class (M364.QAbstractSliderConstPtr this) => QScrollBarConstPtr this where toQScrollBarConst :: this -> QScrollBarConst class (QScrollBarConstPtr this, M364.QAbstractSliderPtr this) => QScrollBarPtr this where toQScrollBar :: this -> QScrollBar data QScrollBarConst = QScrollBarConst (HoppyF.Ptr QScrollBarConst) | QScrollBarConstGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QScrollBarConst) deriving (HoppyP.Show) instance HoppyP.Eq QScrollBarConst where x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y instance HoppyP.Ord QScrollBarConst where compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y) castQScrollBarToConst :: QScrollBar -> QScrollBarConst castQScrollBarToConst (QScrollBar ptr') = QScrollBarConst $ HoppyF.castPtr ptr' castQScrollBarToConst (QScrollBarGc fptr' ptr') = QScrollBarConstGc fptr' $ HoppyF.castPtr ptr' instance HoppyFHR.CppPtr QScrollBarConst where nullptr = QScrollBarConst HoppyF.nullPtr withCppPtr (QScrollBarConst ptr') f' = f' ptr' withCppPtr (QScrollBarConstGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr' toPtr (QScrollBarConst ptr') = ptr' toPtr (QScrollBarConstGc _ ptr') = ptr' touchCppPtr (QScrollBarConst _) = HoppyP.return () touchCppPtr (QScrollBarConstGc fptr' _) = HoppyF.touchForeignPtr fptr' instance HoppyFHR.Deletable QScrollBarConst where delete (QScrollBarConst ptr') = delete'QScrollBar ptr' delete (QScrollBarConstGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QScrollBarConst", " object."] toGc this'@(QScrollBarConst ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QScrollBarConstGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QScrollBar :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ()) toGc this'@(QScrollBarConstGc {}) = HoppyP.return this' instance QScrollBarConstPtr QScrollBarConst where toQScrollBarConst = HoppyP.id instance M364.QAbstractSliderConstPtr QScrollBarConst where toQAbstractSliderConst (QScrollBarConst ptr') = M364.QAbstractSliderConst $ castQScrollBarToQAbstractSlider ptr' toQAbstractSliderConst (QScrollBarConstGc fptr' ptr') = M364.QAbstractSliderConstGc fptr' $ castQScrollBarToQAbstractSlider ptr' instance M506.QWidgetConstPtr QScrollBarConst where toQWidgetConst (QScrollBarConst ptr') = M506.QWidgetConst $ castQScrollBarToQWidget ptr' toQWidgetConst (QScrollBarConstGc fptr' ptr') = M506.QWidgetConstGc fptr' $ castQScrollBarToQWidget ptr' instance M94.QObjectConstPtr QScrollBarConst where toQObjectConst (QScrollBarConst ptr') = M94.QObjectConst $ castQScrollBarToQObject ptr' toQObjectConst (QScrollBarConstGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQScrollBarToQObject ptr' data QScrollBar = QScrollBar (HoppyF.Ptr QScrollBar) | QScrollBarGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QScrollBar) deriving (HoppyP.Show) instance HoppyP.Eq QScrollBar where x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y instance HoppyP.Ord QScrollBar where compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y) castQScrollBarToNonconst :: QScrollBarConst -> QScrollBar castQScrollBarToNonconst (QScrollBarConst ptr') = QScrollBar $ HoppyF.castPtr ptr' castQScrollBarToNonconst (QScrollBarConstGc fptr' ptr') = QScrollBarGc fptr' $ HoppyF.castPtr ptr' instance HoppyFHR.CppPtr QScrollBar where nullptr = QScrollBar HoppyF.nullPtr withCppPtr (QScrollBar ptr') f' = f' ptr' withCppPtr (QScrollBarGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr' toPtr (QScrollBar ptr') = ptr' toPtr (QScrollBarGc _ ptr') = ptr' touchCppPtr (QScrollBar _) = HoppyP.return () touchCppPtr (QScrollBarGc fptr' _) = HoppyF.touchForeignPtr fptr' instance HoppyFHR.Deletable QScrollBar where delete (QScrollBar ptr') = delete'QScrollBar $ (HoppyF.castPtr ptr' :: HoppyF.Ptr QScrollBarConst) delete (QScrollBarGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QScrollBar", " object."] toGc this'@(QScrollBar ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QScrollBarGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QScrollBar :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ()) toGc this'@(QScrollBarGc {}) = HoppyP.return this' instance QScrollBarConstPtr QScrollBar where toQScrollBarConst (QScrollBar ptr') = QScrollBarConst $ (HoppyF.castPtr :: HoppyF.Ptr QScrollBar -> HoppyF.Ptr QScrollBarConst) ptr' toQScrollBarConst (QScrollBarGc fptr' ptr') = QScrollBarConstGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr QScrollBar -> HoppyF.Ptr QScrollBarConst) ptr' instance QScrollBarPtr QScrollBar where toQScrollBar = HoppyP.id instance M364.QAbstractSliderConstPtr QScrollBar where toQAbstractSliderConst (QScrollBar ptr') = M364.QAbstractSliderConst $ castQScrollBarToQAbstractSlider $ (HoppyF.castPtr :: HoppyF.Ptr QScrollBar -> HoppyF.Ptr QScrollBarConst) ptr' toQAbstractSliderConst (QScrollBarGc fptr' ptr') = M364.QAbstractSliderConstGc fptr' $ castQScrollBarToQAbstractSlider $ (HoppyF.castPtr :: HoppyF.Ptr QScrollBar -> HoppyF.Ptr QScrollBarConst) ptr' instance M364.QAbstractSliderPtr QScrollBar where toQAbstractSlider (QScrollBar ptr') = M364.QAbstractSlider $ (HoppyF.castPtr :: HoppyF.Ptr M364.QAbstractSliderConst -> HoppyF.Ptr M364.QAbstractSlider) $ castQScrollBarToQAbstractSlider $ (HoppyF.castPtr :: HoppyF.Ptr QScrollBar -> HoppyF.Ptr QScrollBarConst) ptr' toQAbstractSlider (QScrollBarGc fptr' ptr') = M364.QAbstractSliderGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M364.QAbstractSliderConst -> HoppyF.Ptr M364.QAbstractSlider) $ castQScrollBarToQAbstractSlider $ (HoppyF.castPtr :: HoppyF.Ptr QScrollBar -> HoppyF.Ptr QScrollBarConst) ptr' instance M506.QWidgetConstPtr QScrollBar where toQWidgetConst (QScrollBar ptr') = M506.QWidgetConst $ castQScrollBarToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QScrollBar -> HoppyF.Ptr QScrollBarConst) ptr' toQWidgetConst (QScrollBarGc fptr' ptr') = M506.QWidgetConstGc fptr' $ castQScrollBarToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QScrollBar -> HoppyF.Ptr QScrollBarConst) ptr' instance M506.QWidgetPtr QScrollBar where toQWidget (QScrollBar ptr') = M506.QWidget $ (HoppyF.castPtr :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr M506.QWidget) $ castQScrollBarToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QScrollBar -> HoppyF.Ptr QScrollBarConst) ptr' toQWidget (QScrollBarGc fptr' ptr') = M506.QWidgetGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr M506.QWidget) $ castQScrollBarToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QScrollBar -> HoppyF.Ptr QScrollBarConst) ptr' instance M94.QObjectConstPtr QScrollBar where toQObjectConst (QScrollBar ptr') = M94.QObjectConst $ castQScrollBarToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QScrollBar -> HoppyF.Ptr QScrollBarConst) ptr' toQObjectConst (QScrollBarGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQScrollBarToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QScrollBar -> HoppyF.Ptr QScrollBarConst) ptr' instance M94.QObjectPtr QScrollBar where toQObject (QScrollBar ptr') = M94.QObject $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQScrollBarToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QScrollBar -> HoppyF.Ptr QScrollBarConst) ptr' toQObject (QScrollBarGc fptr' ptr') = M94.QObjectGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQScrollBarToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QScrollBar -> HoppyF.Ptr QScrollBarConst) ptr' new :: (HoppyP.IO QScrollBar) new = HoppyP.fmap QScrollBar (new') newWithParent :: (M506.QWidgetPtr arg'1) => (arg'1) -> (HoppyP.IO QScrollBar) newWithParent arg'1 = HoppyFHR.withCppPtr (M506.toQWidget arg'1) $ \arg'1' -> HoppyP.fmap QScrollBar (newWithParent' arg'1') newWithOrientation :: (M190.QtOrientation) -> (HoppyP.IO QScrollBar) newWithOrientation arg'1 = ( HoppyP.return . HoppyFHR.fromCppEnum ) arg'1 >>= \arg'1' -> HoppyP.fmap QScrollBar (newWithOrientation' arg'1') newWithOrientationAndParent :: (M506.QWidgetPtr arg'2) => (M190.QtOrientation) -> (arg'2) -> (HoppyP.IO QScrollBar) newWithOrientationAndParent arg'1 arg'2 = ( HoppyP.return . HoppyFHR.fromCppEnum ) arg'1 >>= \arg'1' -> HoppyFHR.withCppPtr (M506.toQWidget arg'2) $ \arg'2' -> HoppyP.fmap QScrollBar (newWithOrientationAndParent' arg'1' arg'2') class QScrollBarSuper a where downToQScrollBar :: a -> QScrollBar instance QScrollBarSuper M364.QAbstractSlider where downToQScrollBar = castQScrollBarToNonconst . cast' . M364.castQAbstractSliderToConst where cast' (M364.QAbstractSliderConst ptr') = QScrollBarConst $ castQAbstractSliderToQScrollBar ptr' cast' (M364.QAbstractSliderConstGc fptr' ptr') = QScrollBarConstGc fptr' $ castQAbstractSliderToQScrollBar ptr' instance QScrollBarSuper M506.QWidget where downToQScrollBar = castQScrollBarToNonconst . cast' . M506.castQWidgetToConst where cast' (M506.QWidgetConst ptr') = QScrollBarConst $ castQWidgetToQScrollBar ptr' cast' (M506.QWidgetConstGc fptr' ptr') = QScrollBarConstGc fptr' $ castQWidgetToQScrollBar ptr' instance QScrollBarSuper M94.QObject where downToQScrollBar = castQScrollBarToNonconst . cast' . M94.castQObjectToConst where cast' (M94.QObjectConst ptr') = QScrollBarConst $ castQObjectToQScrollBar ptr' cast' (M94.QObjectConstGc fptr' ptr') = QScrollBarConstGc fptr' $ castQObjectToQScrollBar ptr' class QScrollBarSuperConst a where downToQScrollBarConst :: a -> QScrollBarConst instance QScrollBarSuperConst M364.QAbstractSliderConst where downToQScrollBarConst = cast' where cast' (M364.QAbstractSliderConst ptr') = QScrollBarConst $ castQAbstractSliderToQScrollBar ptr' cast' (M364.QAbstractSliderConstGc fptr' ptr') = QScrollBarConstGc fptr' $ castQAbstractSliderToQScrollBar ptr' instance QScrollBarSuperConst M506.QWidgetConst where downToQScrollBarConst = cast' where cast' (M506.QWidgetConst ptr') = QScrollBarConst $ castQWidgetToQScrollBar ptr' cast' (M506.QWidgetConstGc fptr' ptr') = QScrollBarConstGc fptr' $ castQWidgetToQScrollBar ptr' instance QScrollBarSuperConst M94.QObjectConst where downToQScrollBarConst = cast' where cast' (M94.QObjectConst ptr') = QScrollBarConst $ castQObjectToQScrollBar ptr' cast' (M94.QObjectConstGc fptr' ptr') = QScrollBarConstGc fptr' $ castQObjectToQScrollBar ptr' instance HoppyFHR.Assignable (HoppyF.Ptr (HoppyF.Ptr QScrollBar)) QScrollBar where assign ptr' value' = HoppyF.poke ptr' $ HoppyFHR.toPtr value' instance HoppyFHR.Decodable (HoppyF.Ptr (HoppyF.Ptr QScrollBar)) QScrollBar where decode = HoppyP.fmap QScrollBar . HoppyF.peek