qtah-qt5-0.8.0: src/Graphics/UI/Qtah/Generated/Core/QFileSystemWatcher.hs
{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-}
---------- GENERATED FILE, EDITS WILL BE LOST ----------
module Graphics.UI.Qtah.Generated.Core.QFileSystemWatcher (
castQFileSystemWatcherToQObject,
castQObjectToQFileSystemWatcher,
QFileSystemWatcherValue (..),
QFileSystemWatcherConstPtr (..),
directories,
files,
QFileSystemWatcherPtr (..),
addPath,
addPaths,
removePath,
removePaths,
QFileSystemWatcherConst (..),
castQFileSystemWatcherToConst,
QFileSystemWatcher (..),
castQFileSystemWatcherToNonconst,
new,
newWithParent,
newWithPaths,
newWithPathsAndParent,
QFileSystemWatcherSuper (..),
QFileSystemWatcherSuperConst (..),
) 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.QStringList as M144
import Prelude (($), (.), (/=), (=<<), (==))
import qualified Prelude as HoppyP
import qualified Prelude as QtahP
foreign import ccall "genpop__QFileSystemWatcher_new" new' :: HoppyP.IO (HoppyF.Ptr QFileSystemWatcher)
foreign import ccall "genpop__QFileSystemWatcher_newWithParent" newWithParent' :: HoppyF.Ptr M94.QObject -> HoppyP.IO (HoppyF.Ptr QFileSystemWatcher)
foreign import ccall "genpop__QFileSystemWatcher_newWithPaths" newWithPaths' :: HoppyF.Ptr M144.QStringListConst -> HoppyP.IO (HoppyF.Ptr QFileSystemWatcher)
foreign import ccall "genpop__QFileSystemWatcher_newWithPathsAndParent" newWithPathsAndParent' :: HoppyF.Ptr M144.QStringListConst -> HoppyF.Ptr M94.QObject -> HoppyP.IO (HoppyF.Ptr QFileSystemWatcher)
foreign import ccall "genpop__QFileSystemWatcher_addPath" addPath' :: HoppyF.Ptr QFileSystemWatcher -> HoppyF.Ptr M142.QStringConst -> HoppyP.IO HoppyFC.CBool
foreign import ccall "genpop__QFileSystemWatcher_addPaths" addPaths' :: HoppyF.Ptr QFileSystemWatcher -> HoppyF.Ptr M144.QStringListConst -> HoppyP.IO (HoppyF.Ptr M144.QStringListConst)
foreign import ccall "genpop__QFileSystemWatcher_directories" directories' :: HoppyF.Ptr QFileSystemWatcherConst -> HoppyP.IO (HoppyF.Ptr M144.QStringListConst)
foreign import ccall "genpop__QFileSystemWatcher_files" files' :: HoppyF.Ptr QFileSystemWatcherConst -> HoppyP.IO (HoppyF.Ptr M144.QStringListConst)
foreign import ccall "genpop__QFileSystemWatcher_removePath" removePath' :: HoppyF.Ptr QFileSystemWatcher -> HoppyF.Ptr M142.QStringConst -> HoppyP.IO HoppyFC.CBool
foreign import ccall "genpop__QFileSystemWatcher_removePaths" removePaths' :: HoppyF.Ptr QFileSystemWatcher -> HoppyF.Ptr M144.QStringListConst -> HoppyP.IO (HoppyF.Ptr M144.QStringListConst)
foreign import ccall "gencast__QFileSystemWatcher__QObject" castQFileSystemWatcherToQObject :: HoppyF.Ptr QFileSystemWatcherConst -> HoppyF.Ptr M94.QObjectConst
foreign import ccall "gencast__QObject__QFileSystemWatcher" castQObjectToQFileSystemWatcher :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr QFileSystemWatcherConst
foreign import ccall "gendel__QFileSystemWatcher" delete'QFileSystemWatcher :: HoppyF.Ptr QFileSystemWatcherConst -> HoppyP.IO ()
foreign import ccall "&gendel__QFileSystemWatcher" deletePtr'QFileSystemWatcher :: HoppyF.FunPtr (HoppyF.Ptr QFileSystemWatcherConst -> HoppyP.IO ())
class QFileSystemWatcherValue a where
withQFileSystemWatcherPtr :: a -> (QFileSystemWatcherConst -> HoppyP.IO b) -> HoppyP.IO b
instance {-# OVERLAPPABLE #-} QFileSystemWatcherConstPtr a => QFileSystemWatcherValue a where
withQFileSystemWatcherPtr = HoppyP.flip ($) . toQFileSystemWatcherConst
class (M94.QObjectConstPtr this) => QFileSystemWatcherConstPtr this where
toQFileSystemWatcherConst :: this -> QFileSystemWatcherConst
directories :: (QFileSystemWatcherValue this) => (this) {- ^ this -} -> (HoppyP.IO [QtahP.String])
directories arg'1 =
withQFileSystemWatcherPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
(HoppyFHR.decodeAndDelete . M144.QStringListConst) =<<
(directories' arg'1')
files :: (QFileSystemWatcherValue this) => (this) {- ^ this -} -> (HoppyP.IO [QtahP.String])
files arg'1 =
withQFileSystemWatcherPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
(HoppyFHR.decodeAndDelete . M144.QStringListConst) =<<
(files' arg'1')
class (QFileSystemWatcherConstPtr this, M94.QObjectPtr this) => QFileSystemWatcherPtr this where
toQFileSystemWatcher :: this -> QFileSystemWatcher
addPath :: (QFileSystemWatcherPtr this, M142.QStringValue arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO HoppyP.Bool)
addPath arg'1 arg'2 =
HoppyFHR.withCppPtr (toQFileSystemWatcher arg'1) $ \arg'1' ->
M142.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
(
(HoppyP.return . (/= 0))
) =<<
(addPath' arg'1' arg'2')
addPaths :: (QFileSystemWatcherPtr this, M144.QStringListValue arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO [QtahP.String])
addPaths arg'1 arg'2 =
HoppyFHR.withCppPtr (toQFileSystemWatcher arg'1) $ \arg'1' ->
M144.withQStringListPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
(HoppyFHR.decodeAndDelete . M144.QStringListConst) =<<
(addPaths' arg'1' arg'2')
removePath :: (QFileSystemWatcherPtr this, M142.QStringValue arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO HoppyP.Bool)
removePath arg'1 arg'2 =
HoppyFHR.withCppPtr (toQFileSystemWatcher arg'1) $ \arg'1' ->
M142.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
(
(HoppyP.return . (/= 0))
) =<<
(removePath' arg'1' arg'2')
removePaths :: (QFileSystemWatcherPtr this, M144.QStringListValue arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO [QtahP.String])
removePaths arg'1 arg'2 =
HoppyFHR.withCppPtr (toQFileSystemWatcher arg'1) $ \arg'1' ->
M144.withQStringListPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
(HoppyFHR.decodeAndDelete . M144.QStringListConst) =<<
(removePaths' arg'1' arg'2')
data QFileSystemWatcherConst =
QFileSystemWatcherConst (HoppyF.Ptr QFileSystemWatcherConst)
| QFileSystemWatcherConstGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QFileSystemWatcherConst)
deriving (HoppyP.Show)
instance HoppyP.Eq QFileSystemWatcherConst where
x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y
instance HoppyP.Ord QFileSystemWatcherConst where
compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)
castQFileSystemWatcherToConst :: QFileSystemWatcher -> QFileSystemWatcherConst
castQFileSystemWatcherToConst (QFileSystemWatcher ptr') = QFileSystemWatcherConst $ HoppyF.castPtr ptr'
castQFileSystemWatcherToConst (QFileSystemWatcherGc fptr' ptr') = QFileSystemWatcherConstGc fptr' $ HoppyF.castPtr ptr'
instance HoppyFHR.CppPtr QFileSystemWatcherConst where
nullptr = QFileSystemWatcherConst HoppyF.nullPtr
withCppPtr (QFileSystemWatcherConst ptr') f' = f' ptr'
withCppPtr (QFileSystemWatcherConstGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
toPtr (QFileSystemWatcherConst ptr') = ptr'
toPtr (QFileSystemWatcherConstGc _ ptr') = ptr'
touchCppPtr (QFileSystemWatcherConst _) = HoppyP.return ()
touchCppPtr (QFileSystemWatcherConstGc fptr' _) = HoppyF.touchForeignPtr fptr'
instance HoppyFHR.Deletable QFileSystemWatcherConst where
delete (QFileSystemWatcherConst ptr') = delete'QFileSystemWatcher ptr'
delete (QFileSystemWatcherConstGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QFileSystemWatcherConst", " object."]
toGc this'@(QFileSystemWatcherConst ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QFileSystemWatcherConstGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QFileSystemWatcher :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ())
toGc this'@(QFileSystemWatcherConstGc {}) = HoppyP.return this'
instance QFileSystemWatcherConstPtr QFileSystemWatcherConst where
toQFileSystemWatcherConst = HoppyP.id
instance M94.QObjectConstPtr QFileSystemWatcherConst where
toQObjectConst (QFileSystemWatcherConst ptr') = M94.QObjectConst $ castQFileSystemWatcherToQObject ptr'
toQObjectConst (QFileSystemWatcherConstGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQFileSystemWatcherToQObject ptr'
data QFileSystemWatcher =
QFileSystemWatcher (HoppyF.Ptr QFileSystemWatcher)
| QFileSystemWatcherGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QFileSystemWatcher)
deriving (HoppyP.Show)
instance HoppyP.Eq QFileSystemWatcher where
x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y
instance HoppyP.Ord QFileSystemWatcher where
compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)
castQFileSystemWatcherToNonconst :: QFileSystemWatcherConst -> QFileSystemWatcher
castQFileSystemWatcherToNonconst (QFileSystemWatcherConst ptr') = QFileSystemWatcher $ HoppyF.castPtr ptr'
castQFileSystemWatcherToNonconst (QFileSystemWatcherConstGc fptr' ptr') = QFileSystemWatcherGc fptr' $ HoppyF.castPtr ptr'
instance HoppyFHR.CppPtr QFileSystemWatcher where
nullptr = QFileSystemWatcher HoppyF.nullPtr
withCppPtr (QFileSystemWatcher ptr') f' = f' ptr'
withCppPtr (QFileSystemWatcherGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
toPtr (QFileSystemWatcher ptr') = ptr'
toPtr (QFileSystemWatcherGc _ ptr') = ptr'
touchCppPtr (QFileSystemWatcher _) = HoppyP.return ()
touchCppPtr (QFileSystemWatcherGc fptr' _) = HoppyF.touchForeignPtr fptr'
instance HoppyFHR.Deletable QFileSystemWatcher where
delete (QFileSystemWatcher ptr') = delete'QFileSystemWatcher $ (HoppyF.castPtr ptr' :: HoppyF.Ptr QFileSystemWatcherConst)
delete (QFileSystemWatcherGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QFileSystemWatcher", " object."]
toGc this'@(QFileSystemWatcher ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QFileSystemWatcherGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QFileSystemWatcher :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ())
toGc this'@(QFileSystemWatcherGc {}) = HoppyP.return this'
instance QFileSystemWatcherConstPtr QFileSystemWatcher where
toQFileSystemWatcherConst (QFileSystemWatcher ptr') = QFileSystemWatcherConst $ (HoppyF.castPtr :: HoppyF.Ptr QFileSystemWatcher -> HoppyF.Ptr QFileSystemWatcherConst) ptr'
toQFileSystemWatcherConst (QFileSystemWatcherGc fptr' ptr') = QFileSystemWatcherConstGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr QFileSystemWatcher -> HoppyF.Ptr QFileSystemWatcherConst) ptr'
instance QFileSystemWatcherPtr QFileSystemWatcher where
toQFileSystemWatcher = HoppyP.id
instance M94.QObjectConstPtr QFileSystemWatcher where
toQObjectConst (QFileSystemWatcher ptr') = M94.QObjectConst $ castQFileSystemWatcherToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QFileSystemWatcher -> HoppyF.Ptr QFileSystemWatcherConst) ptr'
toQObjectConst (QFileSystemWatcherGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQFileSystemWatcherToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QFileSystemWatcher -> HoppyF.Ptr QFileSystemWatcherConst) ptr'
instance M94.QObjectPtr QFileSystemWatcher where
toQObject (QFileSystemWatcher ptr') = M94.QObject $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQFileSystemWatcherToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QFileSystemWatcher -> HoppyF.Ptr QFileSystemWatcherConst) ptr'
toQObject (QFileSystemWatcherGc fptr' ptr') = M94.QObjectGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQFileSystemWatcherToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QFileSystemWatcher -> HoppyF.Ptr QFileSystemWatcherConst) ptr'
new :: (HoppyP.IO QFileSystemWatcher)
new =
HoppyP.fmap QFileSystemWatcher
(new')
newWithParent :: (M94.QObjectPtr arg'1) => (arg'1) -> (HoppyP.IO QFileSystemWatcher)
newWithParent arg'1 =
HoppyFHR.withCppPtr (M94.toQObject arg'1) $ \arg'1' ->
HoppyP.fmap QFileSystemWatcher
(newWithParent' arg'1')
newWithPaths :: (M144.QStringListValue arg'1) => (arg'1) -> (HoppyP.IO QFileSystemWatcher)
newWithPaths arg'1 =
M144.withQStringListPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
HoppyP.fmap QFileSystemWatcher
(newWithPaths' arg'1')
newWithPathsAndParent :: (M144.QStringListValue arg'1, M94.QObjectPtr arg'2) => (arg'1) -> (arg'2) -> (HoppyP.IO QFileSystemWatcher)
newWithPathsAndParent arg'1 arg'2 =
M144.withQStringListPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
HoppyFHR.withCppPtr (M94.toQObject arg'2) $ \arg'2' ->
HoppyP.fmap QFileSystemWatcher
(newWithPathsAndParent' arg'1' arg'2')
class QFileSystemWatcherSuper a where
downToQFileSystemWatcher :: a -> QFileSystemWatcher
instance QFileSystemWatcherSuper M94.QObject where
downToQFileSystemWatcher = castQFileSystemWatcherToNonconst . cast' . M94.castQObjectToConst
where
cast' (M94.QObjectConst ptr') = QFileSystemWatcherConst $ castQObjectToQFileSystemWatcher ptr'
cast' (M94.QObjectConstGc fptr' ptr') = QFileSystemWatcherConstGc fptr' $ castQObjectToQFileSystemWatcher ptr'
class QFileSystemWatcherSuperConst a where
downToQFileSystemWatcherConst :: a -> QFileSystemWatcherConst
instance QFileSystemWatcherSuperConst M94.QObjectConst where
downToQFileSystemWatcherConst = cast'
where
cast' (M94.QObjectConst ptr') = QFileSystemWatcherConst $ castQObjectToQFileSystemWatcher ptr'
cast' (M94.QObjectConstGc fptr' ptr') = QFileSystemWatcherConstGc fptr' $ castQObjectToQFileSystemWatcher ptr'
instance HoppyFHR.Assignable (HoppyF.Ptr (HoppyF.Ptr QFileSystemWatcher)) QFileSystemWatcher where
assign ptr' value' = HoppyF.poke ptr' $ HoppyFHR.toPtr value'
instance HoppyFHR.Decodable (HoppyF.Ptr (HoppyF.Ptr QFileSystemWatcher)) QFileSystemWatcher where
decode = HoppyP.fmap QFileSystemWatcher . HoppyF.peek