{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-} ---------- GENERATED FILE, EDITS WILL BE LOST ---------- module Graphics.UI.Qtah.Generated.Core.QSettings ( castQSettingsToQObject, castQObjectToQSettings, QSettingsValue (..), QSettingsConstPtr (..), value, valueWithDefault, QSettingsPtr (..), setValue, QSettingsConst (..), castQSettingsToConst, QSettings (..), castQSettingsToNonconst, new, newWithOrganization, newWithOrganizationAndApplication, newWithOrganizationAndApplicationAndParent, newWithParent, QSettingsSuper (..), QSettingsSuperConst (..), ) where import qualified Foreign as HoppyF 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.QVariant as M168 import Prelude (($), (.), (=<<), (==)) import qualified Prelude as HoppyP foreign import ccall "genpop__QSettings_new" new' :: HoppyP.IO (HoppyF.Ptr QSettings) foreign import ccall "genpop__QSettings_newWithOrganization" newWithOrganization' :: HoppyF.Ptr M142.QStringConst -> HoppyP.IO (HoppyF.Ptr QSettings) foreign import ccall "genpop__QSettings_newWithOrganizationAndApplication" newWithOrganizationAndApplication' :: HoppyF.Ptr M142.QStringConst -> HoppyF.Ptr M142.QStringConst -> HoppyP.IO (HoppyF.Ptr QSettings) foreign import ccall "genpop__QSettings_newWithOrganizationAndApplicationAndParent" newWithOrganizationAndApplicationAndParent' :: HoppyF.Ptr M142.QStringConst -> HoppyF.Ptr M142.QStringConst -> HoppyF.Ptr M94.QObject -> HoppyP.IO (HoppyF.Ptr QSettings) foreign import ccall "genpop__QSettings_newWithParent" newWithParent' :: HoppyF.Ptr M94.QObject -> HoppyP.IO (HoppyF.Ptr QSettings) foreign import ccall "genpop__QSettings_setValue" setValue' :: HoppyF.Ptr QSettings -> HoppyF.Ptr M142.QStringConst -> HoppyF.Ptr M168.QVariantConst -> HoppyP.IO () foreign import ccall "genpop__QSettings_value" value' :: HoppyF.Ptr QSettingsConst -> HoppyF.Ptr M142.QStringConst -> HoppyP.IO (HoppyF.Ptr M168.QVariantConst) foreign import ccall "genpop__QSettings_valueWithDefault" valueWithDefault' :: HoppyF.Ptr QSettingsConst -> HoppyF.Ptr M142.QStringConst -> HoppyF.Ptr M168.QVariantConst -> HoppyP.IO (HoppyF.Ptr M168.QVariantConst) foreign import ccall "gencast__QSettings__QObject" castQSettingsToQObject :: HoppyF.Ptr QSettingsConst -> HoppyF.Ptr M94.QObjectConst foreign import ccall "gencast__QObject__QSettings" castQObjectToQSettings :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr QSettingsConst foreign import ccall "gendel__QSettings" delete'QSettings :: HoppyF.Ptr QSettingsConst -> HoppyP.IO () foreign import ccall "&gendel__QSettings" deletePtr'QSettings :: HoppyF.FunPtr (HoppyF.Ptr QSettingsConst -> HoppyP.IO ()) class QSettingsValue a where withQSettingsPtr :: a -> (QSettingsConst -> HoppyP.IO b) -> HoppyP.IO b instance {-# OVERLAPPABLE #-} QSettingsConstPtr a => QSettingsValue a where withQSettingsPtr = HoppyP.flip ($) . toQSettingsConst class (M94.QObjectConstPtr this) => QSettingsConstPtr this where toQSettingsConst :: this -> QSettingsConst value :: (QSettingsValue this, M142.QStringValue arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO M168.QVariant) value arg'1 arg'2 = withQSettingsPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> M142.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' -> (HoppyFHR.decodeAndDelete . M168.QVariantConst) =<< (value' arg'1' arg'2') valueWithDefault :: (QSettingsValue this, M142.QStringValue arg'2, M168.QVariantValue arg'3) => (this) {- ^ this -} -> (arg'2) -> (arg'3) -> (HoppyP.IO M168.QVariant) valueWithDefault arg'1 arg'2 arg'3 = withQSettingsPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> M142.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' -> M168.withQVariantPtr arg'3 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'3' -> (HoppyFHR.decodeAndDelete . M168.QVariantConst) =<< (valueWithDefault' arg'1' arg'2' arg'3') class (QSettingsConstPtr this, M94.QObjectPtr this) => QSettingsPtr this where toQSettings :: this -> QSettings setValue :: (QSettingsPtr this, M142.QStringValue arg'2, M168.QVariantValue arg'3) => (this) {- ^ this -} -> (arg'2) -> (arg'3) -> (HoppyP.IO ()) setValue arg'1 arg'2 arg'3 = HoppyFHR.withCppPtr (toQSettings arg'1) $ \arg'1' -> M142.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' -> M168.withQVariantPtr arg'3 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'3' -> (setValue' arg'1' arg'2' arg'3') data QSettingsConst = QSettingsConst (HoppyF.Ptr QSettingsConst) | QSettingsConstGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QSettingsConst) deriving (HoppyP.Show) instance HoppyP.Eq QSettingsConst where x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y instance HoppyP.Ord QSettingsConst where compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y) castQSettingsToConst :: QSettings -> QSettingsConst castQSettingsToConst (QSettings ptr') = QSettingsConst $ HoppyF.castPtr ptr' castQSettingsToConst (QSettingsGc fptr' ptr') = QSettingsConstGc fptr' $ HoppyF.castPtr ptr' instance HoppyFHR.CppPtr QSettingsConst where nullptr = QSettingsConst HoppyF.nullPtr withCppPtr (QSettingsConst ptr') f' = f' ptr' withCppPtr (QSettingsConstGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr' toPtr (QSettingsConst ptr') = ptr' toPtr (QSettingsConstGc _ ptr') = ptr' touchCppPtr (QSettingsConst _) = HoppyP.return () touchCppPtr (QSettingsConstGc fptr' _) = HoppyF.touchForeignPtr fptr' instance HoppyFHR.Deletable QSettingsConst where delete (QSettingsConst ptr') = delete'QSettings ptr' delete (QSettingsConstGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QSettingsConst", " object."] toGc this'@(QSettingsConst ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QSettingsConstGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QSettings :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ()) toGc this'@(QSettingsConstGc {}) = HoppyP.return this' instance QSettingsConstPtr QSettingsConst where toQSettingsConst = HoppyP.id instance M94.QObjectConstPtr QSettingsConst where toQObjectConst (QSettingsConst ptr') = M94.QObjectConst $ castQSettingsToQObject ptr' toQObjectConst (QSettingsConstGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQSettingsToQObject ptr' data QSettings = QSettings (HoppyF.Ptr QSettings) | QSettingsGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QSettings) deriving (HoppyP.Show) instance HoppyP.Eq QSettings where x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y instance HoppyP.Ord QSettings where compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y) castQSettingsToNonconst :: QSettingsConst -> QSettings castQSettingsToNonconst (QSettingsConst ptr') = QSettings $ HoppyF.castPtr ptr' castQSettingsToNonconst (QSettingsConstGc fptr' ptr') = QSettingsGc fptr' $ HoppyF.castPtr ptr' instance HoppyFHR.CppPtr QSettings where nullptr = QSettings HoppyF.nullPtr withCppPtr (QSettings ptr') f' = f' ptr' withCppPtr (QSettingsGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr' toPtr (QSettings ptr') = ptr' toPtr (QSettingsGc _ ptr') = ptr' touchCppPtr (QSettings _) = HoppyP.return () touchCppPtr (QSettingsGc fptr' _) = HoppyF.touchForeignPtr fptr' instance HoppyFHR.Deletable QSettings where delete (QSettings ptr') = delete'QSettings $ (HoppyF.castPtr ptr' :: HoppyF.Ptr QSettingsConst) delete (QSettingsGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QSettings", " object."] toGc this'@(QSettings ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QSettingsGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QSettings :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ()) toGc this'@(QSettingsGc {}) = HoppyP.return this' instance QSettingsConstPtr QSettings where toQSettingsConst (QSettings ptr') = QSettingsConst $ (HoppyF.castPtr :: HoppyF.Ptr QSettings -> HoppyF.Ptr QSettingsConst) ptr' toQSettingsConst (QSettingsGc fptr' ptr') = QSettingsConstGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr QSettings -> HoppyF.Ptr QSettingsConst) ptr' instance QSettingsPtr QSettings where toQSettings = HoppyP.id instance M94.QObjectConstPtr QSettings where toQObjectConst (QSettings ptr') = M94.QObjectConst $ castQSettingsToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QSettings -> HoppyF.Ptr QSettingsConst) ptr' toQObjectConst (QSettingsGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQSettingsToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QSettings -> HoppyF.Ptr QSettingsConst) ptr' instance M94.QObjectPtr QSettings where toQObject (QSettings ptr') = M94.QObject $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQSettingsToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QSettings -> HoppyF.Ptr QSettingsConst) ptr' toQObject (QSettingsGc fptr' ptr') = M94.QObjectGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQSettingsToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QSettings -> HoppyF.Ptr QSettingsConst) ptr' new :: (HoppyP.IO QSettings) new = HoppyP.fmap QSettings (new') newWithOrganization :: (M142.QStringValue arg'1) => (arg'1) -> (HoppyP.IO QSettings) newWithOrganization arg'1 = M142.withQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> HoppyP.fmap QSettings (newWithOrganization' arg'1') newWithOrganizationAndApplication :: (M142.QStringValue arg'1, M142.QStringValue arg'2) => (arg'1) -> (arg'2) -> (HoppyP.IO QSettings) newWithOrganizationAndApplication arg'1 arg'2 = M142.withQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> M142.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' -> HoppyP.fmap QSettings (newWithOrganizationAndApplication' arg'1' arg'2') newWithOrganizationAndApplicationAndParent :: (M142.QStringValue arg'1, M142.QStringValue arg'2, M94.QObjectPtr arg'3) => (arg'1) -> (arg'2) -> (arg'3) -> (HoppyP.IO QSettings) newWithOrganizationAndApplicationAndParent arg'1 arg'2 arg'3 = M142.withQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> M142.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' -> HoppyFHR.withCppPtr (M94.toQObject arg'3) $ \arg'3' -> HoppyP.fmap QSettings (newWithOrganizationAndApplicationAndParent' arg'1' arg'2' arg'3') newWithParent :: (M94.QObjectPtr arg'1) => (arg'1) -> (HoppyP.IO QSettings) newWithParent arg'1 = HoppyFHR.withCppPtr (M94.toQObject arg'1) $ \arg'1' -> HoppyP.fmap QSettings (newWithParent' arg'1') class QSettingsSuper a where downToQSettings :: a -> QSettings instance QSettingsSuper M94.QObject where downToQSettings = castQSettingsToNonconst . cast' . M94.castQObjectToConst where cast' (M94.QObjectConst ptr') = QSettingsConst $ castQObjectToQSettings ptr' cast' (M94.QObjectConstGc fptr' ptr') = QSettingsConstGc fptr' $ castQObjectToQSettings ptr' class QSettingsSuperConst a where downToQSettingsConst :: a -> QSettingsConst instance QSettingsSuperConst M94.QObjectConst where downToQSettingsConst = cast' where cast' (M94.QObjectConst ptr') = QSettingsConst $ castQObjectToQSettings ptr' cast' (M94.QObjectConstGc fptr' ptr') = QSettingsConstGc fptr' $ castQObjectToQSettings ptr' instance HoppyFHR.Assignable (HoppyF.Ptr (HoppyF.Ptr QSettings)) QSettings where assign ptr' value' = HoppyF.poke ptr' $ HoppyFHR.toPtr value' instance HoppyFHR.Decodable (HoppyF.Ptr (HoppyF.Ptr QSettings)) QSettings where decode = HoppyP.fmap QSettings . HoppyF.peek