qtah-qt5-0.8.0: src/Graphics/UI/Qtah/Generated/Core/QStandardPaths.hs
{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-}
---------- GENERATED FILE, EDITS WILL BE LOST ----------
module Graphics.UI.Qtah.Generated.Core.QStandardPaths (
QStandardPathsValue (..),
QStandardPathsConstPtr (..),
QStandardPathsPtr (..),
displayName,
findExecutable,
findExecutableWithPaths,
locate,
locateWithOptions,
locateAll,
locateAllWithOptions,
setTestModeEnabled,
standardLocations,
writableLocation,
QStandardPathsConst (..),
castQStandardPathsToConst,
QStandardPaths (..),
castQStandardPathsToNonconst,
QStandardPathsSuper (..),
QStandardPathsSuperConst (..),
QStandardPathsLocateOption (..),
QStandardPathsLocateOptions,
IsQStandardPathsLocateOptions (..),
locateDirectory,
locateFile,
QStandardPathsStandardLocation (..),
) where
import Data.Bits ((.&.), (.|.))
import qualified Data.Bits as QtahDB
import qualified Foreign as HoppyF
import qualified Foreign.C as HoppyFC
import qualified Foreign.Hoppy.Runtime as HoppyFHR
import qualified Foreign.Hoppy.Runtime as QtahFHR
import qualified Graphics.UI.Qtah.Flags as QtahFlags
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__QStandardPaths_displayName" displayName' :: HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr M142.QStringConst)
foreign import ccall "genpop__QStandardPaths_findExecutable" findExecutable' :: HoppyF.Ptr M142.QStringConst -> HoppyP.IO (HoppyF.Ptr M142.QStringConst)
foreign import ccall "genpop__QStandardPaths_findExecutableWithPaths" findExecutableWithPaths' :: HoppyF.Ptr M142.QStringConst -> HoppyF.Ptr M144.QStringListConst -> HoppyP.IO (HoppyF.Ptr M142.QStringConst)
foreign import ccall "genpop__QStandardPaths_locate" locate' :: HoppyFC.CInt -> HoppyF.Ptr M142.QStringConst -> HoppyP.IO (HoppyF.Ptr M142.QStringConst)
foreign import ccall "genpop__QStandardPaths_locateWithOptions" locateWithOptions' :: HoppyFC.CInt -> HoppyF.Ptr M142.QStringConst -> HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr M142.QStringConst)
foreign import ccall "genpop__QStandardPaths_locateAll" locateAll' :: HoppyFC.CInt -> HoppyF.Ptr M142.QStringConst -> HoppyP.IO (HoppyF.Ptr M144.QStringListConst)
foreign import ccall "genpop__QStandardPaths_locateAllWithOptions" locateAllWithOptions' :: HoppyFC.CInt -> HoppyF.Ptr M142.QStringConst -> HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr M144.QStringListConst)
foreign import ccall "genpop__QStandardPaths_setTestModeEnabled" setTestModeEnabled' :: HoppyFC.CBool -> HoppyP.IO ()
foreign import ccall "genpop__QStandardPaths_standardLocations" standardLocations' :: HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr M144.QStringListConst)
foreign import ccall "genpop__QStandardPaths_writableLocation" writableLocation' :: HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr M142.QStringConst)
class QStandardPathsValue a where
withQStandardPathsPtr :: a -> (QStandardPathsConst -> HoppyP.IO b) -> HoppyP.IO b
instance {-# OVERLAPPABLE #-} QStandardPathsConstPtr a => QStandardPathsValue a where
withQStandardPathsPtr = HoppyP.flip ($) . toQStandardPathsConst
class (HoppyFHR.CppPtr this) => QStandardPathsConstPtr this where
toQStandardPathsConst :: this -> QStandardPathsConst
class (QStandardPathsConstPtr this) => QStandardPathsPtr this where
toQStandardPaths :: this -> QStandardPaths
displayName :: (QStandardPathsStandardLocation) -> (HoppyP.IO QtahP.String)
displayName arg'1 =
(
HoppyP.return . HoppyFHR.fromCppEnum
) arg'1 >>= \arg'1' ->
(HoppyFHR.decodeAndDelete . M142.QStringConst) =<<
(displayName' arg'1')
findExecutable :: (M142.QStringValue arg'1) => (arg'1) -> (HoppyP.IO QtahP.String)
findExecutable arg'1 =
M142.withQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
(HoppyFHR.decodeAndDelete . M142.QStringConst) =<<
(findExecutable' arg'1')
findExecutableWithPaths :: (M142.QStringValue arg'1, M144.QStringListValue arg'2) => (arg'1) -> (arg'2) -> (HoppyP.IO QtahP.String)
findExecutableWithPaths arg'1 arg'2 =
M142.withQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
M144.withQStringListPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
(HoppyFHR.decodeAndDelete . M142.QStringConst) =<<
(findExecutableWithPaths' arg'1' arg'2')
locate :: (M142.QStringValue arg'2) => (QStandardPathsStandardLocation) -> (arg'2) -> (HoppyP.IO QtahP.String)
locate arg'1 arg'2 =
(
HoppyP.return . HoppyFHR.fromCppEnum
) arg'1 >>= \arg'1' ->
M142.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
(HoppyFHR.decodeAndDelete . M142.QStringConst) =<<
(locate' arg'1' arg'2')
locateWithOptions :: (M142.QStringValue arg'2, IsQStandardPathsLocateOptions arg'3) => (QStandardPathsStandardLocation) -> (arg'2) -> (arg'3) -> (HoppyP.IO QtahP.String)
locateWithOptions arg'1 arg'2 arg'3 =
(
HoppyP.return . HoppyFHR.fromCppEnum
) arg'1 >>= \arg'1' ->
M142.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
(
QtahP.return . QtahFlags.flagsToNum . toQStandardPathsLocateOptions
) arg'3 >>= \arg'3' ->
(HoppyFHR.decodeAndDelete . M142.QStringConst) =<<
(locateWithOptions' arg'1' arg'2' arg'3')
locateAll :: (M142.QStringValue arg'2) => (QStandardPathsStandardLocation) -> (arg'2) -> (HoppyP.IO [QtahP.String])
locateAll arg'1 arg'2 =
(
HoppyP.return . HoppyFHR.fromCppEnum
) arg'1 >>= \arg'1' ->
M142.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
(HoppyFHR.decodeAndDelete . M144.QStringListConst) =<<
(locateAll' arg'1' arg'2')
locateAllWithOptions :: (M142.QStringValue arg'2, IsQStandardPathsLocateOptions arg'3) => (QStandardPathsStandardLocation) -> (arg'2) -> (arg'3) -> (HoppyP.IO [QtahP.String])
locateAllWithOptions arg'1 arg'2 arg'3 =
(
HoppyP.return . HoppyFHR.fromCppEnum
) arg'1 >>= \arg'1' ->
M142.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
(
QtahP.return . QtahFlags.flagsToNum . toQStandardPathsLocateOptions
) arg'3 >>= \arg'3' ->
(HoppyFHR.decodeAndDelete . M144.QStringListConst) =<<
(locateAllWithOptions' arg'1' arg'2' arg'3')
setTestModeEnabled :: (HoppyP.Bool) -> (HoppyP.IO ())
setTestModeEnabled arg'1 =
(
\x -> HoppyP.return $ if x then 1 else 0
) arg'1 >>= \arg'1' ->
(setTestModeEnabled' arg'1')
standardLocations :: (QStandardPathsStandardLocation) -> (HoppyP.IO [QtahP.String])
standardLocations arg'1 =
(
HoppyP.return . HoppyFHR.fromCppEnum
) arg'1 >>= \arg'1' ->
(HoppyFHR.decodeAndDelete . M144.QStringListConst) =<<
(standardLocations' arg'1')
writableLocation :: (QStandardPathsStandardLocation) -> (HoppyP.IO QtahP.String)
writableLocation arg'1 =
(
HoppyP.return . HoppyFHR.fromCppEnum
) arg'1 >>= \arg'1' ->
(HoppyFHR.decodeAndDelete . M142.QStringConst) =<<
(writableLocation' arg'1')
data QStandardPathsConst =
QStandardPathsConst (HoppyF.Ptr QStandardPathsConst)
| QStandardPathsConstGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QStandardPathsConst)
deriving (HoppyP.Show)
instance HoppyP.Eq QStandardPathsConst where
x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y
instance HoppyP.Ord QStandardPathsConst where
compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)
castQStandardPathsToConst :: QStandardPaths -> QStandardPathsConst
castQStandardPathsToConst (QStandardPaths ptr') = QStandardPathsConst $ HoppyF.castPtr ptr'
castQStandardPathsToConst (QStandardPathsGc fptr' ptr') = QStandardPathsConstGc fptr' $ HoppyF.castPtr ptr'
instance HoppyFHR.CppPtr QStandardPathsConst where
nullptr = QStandardPathsConst HoppyF.nullPtr
withCppPtr (QStandardPathsConst ptr') f' = f' ptr'
withCppPtr (QStandardPathsConstGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
toPtr (QStandardPathsConst ptr') = ptr'
toPtr (QStandardPathsConstGc _ ptr') = ptr'
touchCppPtr (QStandardPathsConst _) = HoppyP.return ()
touchCppPtr (QStandardPathsConstGc fptr' _) = HoppyF.touchForeignPtr fptr'
instance QStandardPathsConstPtr QStandardPathsConst where
toQStandardPathsConst = HoppyP.id
data QStandardPaths =
QStandardPaths (HoppyF.Ptr QStandardPaths)
| QStandardPathsGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QStandardPaths)
deriving (HoppyP.Show)
instance HoppyP.Eq QStandardPaths where
x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y
instance HoppyP.Ord QStandardPaths where
compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)
castQStandardPathsToNonconst :: QStandardPathsConst -> QStandardPaths
castQStandardPathsToNonconst (QStandardPathsConst ptr') = QStandardPaths $ HoppyF.castPtr ptr'
castQStandardPathsToNonconst (QStandardPathsConstGc fptr' ptr') = QStandardPathsGc fptr' $ HoppyF.castPtr ptr'
instance HoppyFHR.CppPtr QStandardPaths where
nullptr = QStandardPaths HoppyF.nullPtr
withCppPtr (QStandardPaths ptr') f' = f' ptr'
withCppPtr (QStandardPathsGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
toPtr (QStandardPaths ptr') = ptr'
toPtr (QStandardPathsGc _ ptr') = ptr'
touchCppPtr (QStandardPaths _) = HoppyP.return ()
touchCppPtr (QStandardPathsGc fptr' _) = HoppyF.touchForeignPtr fptr'
instance QStandardPathsConstPtr QStandardPaths where
toQStandardPathsConst (QStandardPaths ptr') = QStandardPathsConst $ (HoppyF.castPtr :: HoppyF.Ptr QStandardPaths -> HoppyF.Ptr QStandardPathsConst) ptr'
toQStandardPathsConst (QStandardPathsGc fptr' ptr') = QStandardPathsConstGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr QStandardPaths -> HoppyF.Ptr QStandardPathsConst) ptr'
instance QStandardPathsPtr QStandardPaths where
toQStandardPaths = HoppyP.id
class QStandardPathsSuper a where
downToQStandardPaths :: a -> QStandardPaths
class QStandardPathsSuperConst a where
downToQStandardPathsConst :: a -> QStandardPathsConst
instance HoppyFHR.Assignable (HoppyF.Ptr (HoppyF.Ptr QStandardPaths)) QStandardPaths where
assign ptr' value' = HoppyF.poke ptr' $ HoppyFHR.toPtr value'
instance HoppyFHR.Decodable (HoppyF.Ptr (HoppyF.Ptr QStandardPaths)) QStandardPaths where
decode = HoppyP.fmap QStandardPaths . HoppyF.peek
data QStandardPathsLocateOption =
LocateFile
| LocateDirectory
| UnknownQStandardPathsLocateOption (HoppyFC.CInt)
deriving (HoppyP.Show)
instance HoppyFHR.CppEnum (HoppyFC.CInt) QStandardPathsLocateOption where
fromCppEnum LocateFile = 0
fromCppEnum LocateDirectory = 1
fromCppEnum (UnknownQStandardPathsLocateOption n) = n
toCppEnum (0) = LocateFile
toCppEnum (1) = LocateDirectory
toCppEnum n = UnknownQStandardPathsLocateOption n
instance HoppyP.Eq QStandardPathsLocateOption where
x == y = HoppyFHR.fromCppEnum x == HoppyFHR.fromCppEnum y
instance HoppyP.Ord QStandardPathsLocateOption where
compare x y = HoppyP.compare (HoppyFHR.fromCppEnum x) (HoppyFHR.fromCppEnum y)
newtype QStandardPathsLocateOptions = QStandardPathsLocateOptions (HoppyFC.CInt) deriving (QtahP.Eq, QtahP.Ord, QtahP.Show)
instance QtahFlags.Flags (HoppyFC.CInt) QStandardPathsLocateOption QStandardPathsLocateOptions where
enumToFlags = QStandardPathsLocateOptions . QtahFHR.fromCppEnum
flagsToEnum (QStandardPathsLocateOptions x') = QtahFHR.toCppEnum x'
class IsQStandardPathsLocateOptions a where
toQStandardPathsLocateOptions :: a -> QStandardPathsLocateOptions
instance IsQStandardPathsLocateOptions QStandardPathsLocateOptions where toQStandardPathsLocateOptions = QtahP.id
instance IsQStandardPathsLocateOptions QStandardPathsLocateOption where toQStandardPathsLocateOptions = QtahFlags.enumToFlags
instance IsQStandardPathsLocateOptions (HoppyFC.CInt) where toQStandardPathsLocateOptions = QtahFlags.numToFlags
locateDirectory :: QStandardPathsLocateOptions
locateDirectory = QStandardPathsLocateOptions (1)
locateFile :: QStandardPathsLocateOptions
locateFile = QStandardPathsLocateOptions (0)
instance QtahDB.Bits QStandardPathsLocateOptions where
x .&. y = QtahFlags.numToFlags (QtahFlags.flagsToNum x .&. QtahFlags.flagsToNum y)
x .|. y = QtahFlags.numToFlags (QtahFlags.flagsToNum x .|. QtahFlags.flagsToNum y)
xor x y = QtahFlags.numToFlags $ QtahDB.xor (QtahFlags.flagsToNum x) (QtahFlags.flagsToNum y)
complement x = QtahFlags.numToFlags $ QtahDB.complement $ QtahFlags.flagsToNum x
shift x i = QtahFlags.numToFlags $ QtahDB.shift (QtahFlags.flagsToNum x) i
rotate x i = QtahFlags.numToFlags $ QtahDB.rotate (QtahFlags.flagsToNum x) i
bitSize x = case QtahDB.bitSizeMaybe x of
QtahP.Just n -> n
QtahP.Nothing -> QtahP.error "bitSize is undefined"
bitSizeMaybe = QtahDB.bitSizeMaybe . QtahFlags.flagsToNum
isSigned = QtahDB.isSigned . QtahFlags.flagsToNum
testBit x i = QtahDB.testBit (QtahFlags.flagsToNum x) i
bit = QtahFlags.numToFlags . QtahDB.bit
popCount = QtahDB.popCount . QtahFlags.flagsToNum
data QStandardPathsStandardLocation =
DesktopLocation
| DocumentsLocation
| FontsLocation
| ApplicationsLocation
| MusicLocation
| MoviesLocation
| PicturesLocation
| TempLocation
| HomeLocation
| DataLocation
| CacheLocation
| GenericDataLocation
| RuntimeLocation
| ConfigLocation
| DownloadLocation
| GenericCacheLocation
| GenericConfigLocation
| AppDataLocation
| AppConfigLocation
| UnknownQStandardPathsStandardLocation (HoppyFC.CInt)
deriving (HoppyP.Show)
instance HoppyFHR.CppEnum (HoppyFC.CInt) QStandardPathsStandardLocation where
fromCppEnum DesktopLocation = 0
fromCppEnum DocumentsLocation = 1
fromCppEnum FontsLocation = 2
fromCppEnum ApplicationsLocation = 3
fromCppEnum MusicLocation = 4
fromCppEnum MoviesLocation = 5
fromCppEnum PicturesLocation = 6
fromCppEnum TempLocation = 7
fromCppEnum HomeLocation = 8
fromCppEnum DataLocation = 9
fromCppEnum CacheLocation = 10
fromCppEnum GenericDataLocation = 11
fromCppEnum RuntimeLocation = 12
fromCppEnum ConfigLocation = 13
fromCppEnum DownloadLocation = 14
fromCppEnum GenericCacheLocation = 15
fromCppEnum GenericConfigLocation = 16
fromCppEnum AppDataLocation = 17
fromCppEnum AppConfigLocation = 18
fromCppEnum (UnknownQStandardPathsStandardLocation n) = n
toCppEnum (0) = DesktopLocation
toCppEnum (1) = DocumentsLocation
toCppEnum (2) = FontsLocation
toCppEnum (3) = ApplicationsLocation
toCppEnum (4) = MusicLocation
toCppEnum (5) = MoviesLocation
toCppEnum (6) = PicturesLocation
toCppEnum (7) = TempLocation
toCppEnum (8) = HomeLocation
toCppEnum (9) = DataLocation
toCppEnum (10) = CacheLocation
toCppEnum (11) = GenericDataLocation
toCppEnum (12) = RuntimeLocation
toCppEnum (13) = ConfigLocation
toCppEnum (14) = DownloadLocation
toCppEnum (15) = GenericCacheLocation
toCppEnum (16) = GenericConfigLocation
toCppEnum (17) = AppDataLocation
toCppEnum (18) = AppConfigLocation
toCppEnum n = UnknownQStandardPathsStandardLocation n
instance HoppyP.Eq QStandardPathsStandardLocation where
x == y = HoppyFHR.fromCppEnum x == HoppyFHR.fromCppEnum y
instance HoppyP.Ord QStandardPathsStandardLocation where
compare x y = HoppyP.compare (HoppyFHR.fromCppEnum x) (HoppyFHR.fromCppEnum y)