{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-} ---------- GENERATED FILE, EDITS WILL BE LOST ---------- module Graphics.UI.Qtah.Generated.Widgets.QLayoutItem ( QLayoutItemValue (..), QLayoutItemConstPtr (..), alignment, expandingDirections, geometry, hasHeightForWidth, heightForWidth, isEmpty, maximumSize, minimumHeightForWidth, minimumSize, sizeHint, QLayoutItemPtr (..), setAlignment, setGeometry, invalidate, layout, widget, QLayoutItemConst (..), castQLayoutItemToConst, QLayoutItem (..), castQLayoutItemToNonconst, QLayoutItemSuper (..), QLayoutItemSuperConst (..), ) where import qualified Foreign as HoppyF import qualified Foreign.C as HoppyFC import qualified Foreign.Hoppy.Runtime as HoppyFHR import qualified Graphics.UI.Qtah.Core.HRect as HRect import qualified Graphics.UI.Qtah.Core.HSize as HSize import qualified Graphics.UI.Qtah.Flags as QtahFlags import qualified Graphics.UI.Qtah.Generated.Core.QRect as M122 import qualified Graphics.UI.Qtah.Generated.Core.QSize as M134 import qualified Graphics.UI.Qtah.Generated.Core.Types as M190 import {-# SOURCE #-} qualified Graphics.UI.Qtah.Generated.Widgets.QLayout as M432 import {-# SOURCE #-} qualified Graphics.UI.Qtah.Generated.Widgets.QWidget as M506 import Prelude (($), (.), (/=), (=<<), (==), (>>=)) import qualified Prelude as HoppyP import qualified Prelude as QtahP foreign import ccall "genpop__QLayoutItem_alignment" alignment' :: HoppyF.Ptr QLayoutItemConst -> HoppyP.IO HoppyFC.CInt foreign import ccall "genpop__QLayoutItem_setAlignment" setAlignment' :: HoppyF.Ptr QLayoutItem -> HoppyFC.CInt -> HoppyP.IO () foreign import ccall "genpop__QLayoutItem_expandingDirections" expandingDirections' :: HoppyF.Ptr QLayoutItemConst -> HoppyP.IO HoppyFC.CInt foreign import ccall "genpop__QLayoutItem_geometry" geometry' :: HoppyF.Ptr QLayoutItemConst -> HoppyP.IO (HoppyF.Ptr M122.QRectConst) foreign import ccall "genpop__QLayoutItem_setGeometry" setGeometry' :: HoppyF.Ptr QLayoutItem -> HoppyF.Ptr M122.QRectConst -> HoppyP.IO () foreign import ccall "genpop__QLayoutItem_hasHeightForWidth" hasHeightForWidth' :: HoppyF.Ptr QLayoutItemConst -> HoppyP.IO HoppyFC.CBool foreign import ccall "genpop__QLayoutItem_heightForWidth" heightForWidth' :: HoppyF.Ptr QLayoutItemConst -> HoppyFC.CInt -> HoppyP.IO HoppyFC.CInt foreign import ccall "genpop__QLayoutItem_invalidate" invalidate' :: HoppyF.Ptr QLayoutItem -> HoppyP.IO () foreign import ccall "genpop__QLayoutItem_isEmpty" isEmpty' :: HoppyF.Ptr QLayoutItemConst -> HoppyP.IO HoppyFC.CBool foreign import ccall "genpop__QLayoutItem_layout" layout' :: HoppyF.Ptr QLayoutItem -> HoppyP.IO (HoppyF.Ptr M432.QLayout) foreign import ccall "genpop__QLayoutItem_maximumSize" maximumSize' :: HoppyF.Ptr QLayoutItemConst -> HoppyP.IO (HoppyF.Ptr M134.QSizeConst) foreign import ccall "genpop__QLayoutItem_minimumHeightForWidth" minimumHeightForWidth' :: HoppyF.Ptr QLayoutItemConst -> HoppyFC.CInt -> HoppyP.IO HoppyFC.CInt foreign import ccall "genpop__QLayoutItem_minimumSize" minimumSize' :: HoppyF.Ptr QLayoutItemConst -> HoppyP.IO (HoppyF.Ptr M134.QSizeConst) foreign import ccall "genpop__QLayoutItem_sizeHint" sizeHint' :: HoppyF.Ptr QLayoutItemConst -> HoppyP.IO (HoppyF.Ptr M134.QSizeConst) foreign import ccall "genpop__QLayoutItem_widget" widget' :: HoppyF.Ptr QLayoutItem -> HoppyP.IO (HoppyF.Ptr M506.QWidget) foreign import ccall "gendel__QLayoutItem" delete'QLayoutItem :: HoppyF.Ptr QLayoutItemConst -> HoppyP.IO () foreign import ccall "&gendel__QLayoutItem" deletePtr'QLayoutItem :: HoppyF.FunPtr (HoppyF.Ptr QLayoutItemConst -> HoppyP.IO ()) class QLayoutItemValue a where withQLayoutItemPtr :: a -> (QLayoutItemConst -> HoppyP.IO b) -> HoppyP.IO b instance {-# OVERLAPPABLE #-} QLayoutItemConstPtr a => QLayoutItemValue a where withQLayoutItemPtr = HoppyP.flip ($) . toQLayoutItemConst class (HoppyFHR.CppPtr this) => QLayoutItemConstPtr this where toQLayoutItemConst :: this -> QLayoutItemConst alignment :: (QLayoutItemValue this) => (this) {- ^ this -} -> (HoppyP.IO M190.QtAlignment) alignment arg'1 = withQLayoutItemPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> ( QtahP.return . QtahFlags.numToFlags ) =<< (alignment' arg'1') expandingDirections :: (QLayoutItemValue this) => (this) {- ^ this -} -> (HoppyP.IO M190.QtOrientations) expandingDirections arg'1 = withQLayoutItemPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> ( QtahP.return . QtahFlags.numToFlags ) =<< (expandingDirections' arg'1') geometry :: (QLayoutItemValue this) => (this) {- ^ this -} -> (HoppyP.IO HRect.HRect) geometry arg'1 = withQLayoutItemPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> (HoppyFHR.decodeAndDelete . M122.QRectConst) =<< (geometry' arg'1') hasHeightForWidth :: (QLayoutItemValue this) => (this) {- ^ this -} -> (HoppyP.IO HoppyP.Bool) hasHeightForWidth arg'1 = withQLayoutItemPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> ( (HoppyP.return . (/= 0)) ) =<< (hasHeightForWidth' arg'1') heightForWidth :: (QLayoutItemValue this) => (this) {- ^ this -} -> (HoppyP.Int) -> (HoppyP.IO HoppyP.Int) heightForWidth arg'1 arg'2 = withQLayoutItemPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> ( HoppyP.return . HoppyFHR.coerceIntegral ) arg'2 >>= \arg'2' -> ( HoppyP.return . HoppyFHR.coerceIntegral ) =<< (heightForWidth' arg'1' arg'2') isEmpty :: (QLayoutItemValue this) => (this) {- ^ this -} -> (HoppyP.IO HoppyP.Bool) isEmpty arg'1 = withQLayoutItemPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> ( (HoppyP.return . (/= 0)) ) =<< (isEmpty' arg'1') maximumSize :: (QLayoutItemValue this) => (this) {- ^ this -} -> (HoppyP.IO HSize.HSize) maximumSize arg'1 = withQLayoutItemPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> (HoppyFHR.decodeAndDelete . M134.QSizeConst) =<< (maximumSize' arg'1') minimumHeightForWidth :: (QLayoutItemValue this) => (this) {- ^ this -} -> (HoppyP.Int) -> (HoppyP.IO HoppyP.Int) minimumHeightForWidth arg'1 arg'2 = withQLayoutItemPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> ( HoppyP.return . HoppyFHR.coerceIntegral ) arg'2 >>= \arg'2' -> ( HoppyP.return . HoppyFHR.coerceIntegral ) =<< (minimumHeightForWidth' arg'1' arg'2') minimumSize :: (QLayoutItemValue this) => (this) {- ^ this -} -> (HoppyP.IO HSize.HSize) minimumSize arg'1 = withQLayoutItemPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> (HoppyFHR.decodeAndDelete . M134.QSizeConst) =<< (minimumSize' arg'1') sizeHint :: (QLayoutItemValue this) => (this) {- ^ this -} -> (HoppyP.IO HSize.HSize) sizeHint arg'1 = withQLayoutItemPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> (HoppyFHR.decodeAndDelete . M134.QSizeConst) =<< (sizeHint' arg'1') class (QLayoutItemConstPtr this) => QLayoutItemPtr this where toQLayoutItem :: this -> QLayoutItem setAlignment :: (QLayoutItemPtr this, M190.IsQtAlignment arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO ()) setAlignment arg'1 arg'2 = HoppyFHR.withCppPtr (toQLayoutItem arg'1) $ \arg'1' -> ( QtahP.return . QtahFlags.flagsToNum . M190.toQtAlignment ) arg'2 >>= \arg'2' -> (setAlignment' arg'1' arg'2') setGeometry :: (QLayoutItemPtr this, M122.QRectValue arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO ()) setGeometry arg'1 arg'2 = HoppyFHR.withCppPtr (toQLayoutItem arg'1) $ \arg'1' -> M122.withQRectPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' -> (setGeometry' arg'1' arg'2') invalidate :: (QLayoutItemPtr this) => (this) {- ^ this -} -> (HoppyP.IO ()) invalidate arg'1 = HoppyFHR.withCppPtr (toQLayoutItem arg'1) $ \arg'1' -> (invalidate' arg'1') layout :: (QLayoutItemPtr this) => (this) {- ^ this -} -> (HoppyP.IO M432.QLayout) layout arg'1 = HoppyFHR.withCppPtr (toQLayoutItem arg'1) $ \arg'1' -> HoppyP.fmap M432.QLayout (layout' arg'1') widget :: (QLayoutItemPtr this) => (this) {- ^ this -} -> (HoppyP.IO M506.QWidget) widget arg'1 = HoppyFHR.withCppPtr (toQLayoutItem arg'1) $ \arg'1' -> HoppyP.fmap M506.QWidget (widget' arg'1') data QLayoutItemConst = QLayoutItemConst (HoppyF.Ptr QLayoutItemConst) | QLayoutItemConstGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QLayoutItemConst) deriving (HoppyP.Show) instance HoppyP.Eq QLayoutItemConst where x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y instance HoppyP.Ord QLayoutItemConst where compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y) castQLayoutItemToConst :: QLayoutItem -> QLayoutItemConst castQLayoutItemToConst (QLayoutItem ptr') = QLayoutItemConst $ HoppyF.castPtr ptr' castQLayoutItemToConst (QLayoutItemGc fptr' ptr') = QLayoutItemConstGc fptr' $ HoppyF.castPtr ptr' instance HoppyFHR.CppPtr QLayoutItemConst where nullptr = QLayoutItemConst HoppyF.nullPtr withCppPtr (QLayoutItemConst ptr') f' = f' ptr' withCppPtr (QLayoutItemConstGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr' toPtr (QLayoutItemConst ptr') = ptr' toPtr (QLayoutItemConstGc _ ptr') = ptr' touchCppPtr (QLayoutItemConst _) = HoppyP.return () touchCppPtr (QLayoutItemConstGc fptr' _) = HoppyF.touchForeignPtr fptr' instance HoppyFHR.Deletable QLayoutItemConst where delete (QLayoutItemConst ptr') = delete'QLayoutItem ptr' delete (QLayoutItemConstGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QLayoutItemConst", " object."] toGc this'@(QLayoutItemConst ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QLayoutItemConstGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QLayoutItem :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ()) toGc this'@(QLayoutItemConstGc {}) = HoppyP.return this' instance QLayoutItemConstPtr QLayoutItemConst where toQLayoutItemConst = HoppyP.id data QLayoutItem = QLayoutItem (HoppyF.Ptr QLayoutItem) | QLayoutItemGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QLayoutItem) deriving (HoppyP.Show) instance HoppyP.Eq QLayoutItem where x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y instance HoppyP.Ord QLayoutItem where compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y) castQLayoutItemToNonconst :: QLayoutItemConst -> QLayoutItem castQLayoutItemToNonconst (QLayoutItemConst ptr') = QLayoutItem $ HoppyF.castPtr ptr' castQLayoutItemToNonconst (QLayoutItemConstGc fptr' ptr') = QLayoutItemGc fptr' $ HoppyF.castPtr ptr' instance HoppyFHR.CppPtr QLayoutItem where nullptr = QLayoutItem HoppyF.nullPtr withCppPtr (QLayoutItem ptr') f' = f' ptr' withCppPtr (QLayoutItemGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr' toPtr (QLayoutItem ptr') = ptr' toPtr (QLayoutItemGc _ ptr') = ptr' touchCppPtr (QLayoutItem _) = HoppyP.return () touchCppPtr (QLayoutItemGc fptr' _) = HoppyF.touchForeignPtr fptr' instance HoppyFHR.Deletable QLayoutItem where delete (QLayoutItem ptr') = delete'QLayoutItem $ (HoppyF.castPtr ptr' :: HoppyF.Ptr QLayoutItemConst) delete (QLayoutItemGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QLayoutItem", " object."] toGc this'@(QLayoutItem ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QLayoutItemGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QLayoutItem :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ()) toGc this'@(QLayoutItemGc {}) = HoppyP.return this' instance QLayoutItemConstPtr QLayoutItem where toQLayoutItemConst (QLayoutItem ptr') = QLayoutItemConst $ (HoppyF.castPtr :: HoppyF.Ptr QLayoutItem -> HoppyF.Ptr QLayoutItemConst) ptr' toQLayoutItemConst (QLayoutItemGc fptr' ptr') = QLayoutItemConstGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr QLayoutItem -> HoppyF.Ptr QLayoutItemConst) ptr' instance QLayoutItemPtr QLayoutItem where toQLayoutItem = HoppyP.id class QLayoutItemSuper a where downToQLayoutItem :: a -> QLayoutItem class QLayoutItemSuperConst a where downToQLayoutItemConst :: a -> QLayoutItemConst instance HoppyFHR.Assignable (HoppyF.Ptr (HoppyF.Ptr QLayoutItem)) QLayoutItem where assign ptr' value' = HoppyF.poke ptr' $ HoppyFHR.toPtr value' instance HoppyFHR.Decodable (HoppyF.Ptr (HoppyF.Ptr QLayoutItem)) QLayoutItem where decode = HoppyP.fmap QLayoutItem . HoppyF.peek