{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gtk.Interfaces.FileChooser
(
FileChooser(..) ,
IsFileChooser ,
toFileChooser ,
#if defined(ENABLE_OVERLOADING)
ResolveFileChooserMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
FileChooserAddChoiceMethodInfo ,
#endif
fileChooserAddChoice ,
#if defined(ENABLE_OVERLOADING)
FileChooserAddFilterMethodInfo ,
#endif
fileChooserAddFilter ,
#if defined(ENABLE_OVERLOADING)
FileChooserAddShortcutFolderMethodInfo ,
#endif
fileChooserAddShortcutFolder ,
#if defined(ENABLE_OVERLOADING)
FileChooserGetActionMethodInfo ,
#endif
fileChooserGetAction ,
#if defined(ENABLE_OVERLOADING)
FileChooserGetChoiceMethodInfo ,
#endif
fileChooserGetChoice ,
#if defined(ENABLE_OVERLOADING)
FileChooserGetCreateFoldersMethodInfo ,
#endif
fileChooserGetCreateFolders ,
#if defined(ENABLE_OVERLOADING)
FileChooserGetCurrentFolderMethodInfo ,
#endif
fileChooserGetCurrentFolder ,
#if defined(ENABLE_OVERLOADING)
FileChooserGetCurrentNameMethodInfo ,
#endif
fileChooserGetCurrentName ,
#if defined(ENABLE_OVERLOADING)
FileChooserGetFileMethodInfo ,
#endif
fileChooserGetFile ,
#if defined(ENABLE_OVERLOADING)
FileChooserGetFilesMethodInfo ,
#endif
fileChooserGetFiles ,
#if defined(ENABLE_OVERLOADING)
FileChooserGetFilterMethodInfo ,
#endif
fileChooserGetFilter ,
#if defined(ENABLE_OVERLOADING)
FileChooserGetFiltersMethodInfo ,
#endif
fileChooserGetFilters ,
#if defined(ENABLE_OVERLOADING)
FileChooserGetSelectMultipleMethodInfo ,
#endif
fileChooserGetSelectMultiple ,
#if defined(ENABLE_OVERLOADING)
FileChooserGetShortcutFoldersMethodInfo ,
#endif
fileChooserGetShortcutFolders ,
#if defined(ENABLE_OVERLOADING)
FileChooserRemoveChoiceMethodInfo ,
#endif
fileChooserRemoveChoice ,
#if defined(ENABLE_OVERLOADING)
FileChooserRemoveFilterMethodInfo ,
#endif
fileChooserRemoveFilter ,
#if defined(ENABLE_OVERLOADING)
FileChooserRemoveShortcutFolderMethodInfo,
#endif
fileChooserRemoveShortcutFolder ,
#if defined(ENABLE_OVERLOADING)
FileChooserSetActionMethodInfo ,
#endif
fileChooserSetAction ,
#if defined(ENABLE_OVERLOADING)
FileChooserSetChoiceMethodInfo ,
#endif
fileChooserSetChoice ,
#if defined(ENABLE_OVERLOADING)
FileChooserSetCreateFoldersMethodInfo ,
#endif
fileChooserSetCreateFolders ,
#if defined(ENABLE_OVERLOADING)
FileChooserSetCurrentFolderMethodInfo ,
#endif
fileChooserSetCurrentFolder ,
#if defined(ENABLE_OVERLOADING)
FileChooserSetCurrentNameMethodInfo ,
#endif
fileChooserSetCurrentName ,
#if defined(ENABLE_OVERLOADING)
FileChooserSetFileMethodInfo ,
#endif
fileChooserSetFile ,
#if defined(ENABLE_OVERLOADING)
FileChooserSetFilterMethodInfo ,
#endif
fileChooserSetFilter ,
#if defined(ENABLE_OVERLOADING)
FileChooserSetSelectMultipleMethodInfo ,
#endif
fileChooserSetSelectMultiple ,
#if defined(ENABLE_OVERLOADING)
FileChooserActionPropertyInfo ,
#endif
constructFileChooserAction ,
#if defined(ENABLE_OVERLOADING)
fileChooserAction ,
#endif
getFileChooserAction ,
setFileChooserAction ,
#if defined(ENABLE_OVERLOADING)
FileChooserCreateFoldersPropertyInfo ,
#endif
constructFileChooserCreateFolders ,
#if defined(ENABLE_OVERLOADING)
fileChooserCreateFolders ,
#endif
getFileChooserCreateFolders ,
setFileChooserCreateFolders ,
#if defined(ENABLE_OVERLOADING)
FileChooserFilterPropertyInfo ,
#endif
constructFileChooserFilter ,
#if defined(ENABLE_OVERLOADING)
fileChooserFilter ,
#endif
getFileChooserFilter ,
setFileChooserFilter ,
#if defined(ENABLE_OVERLOADING)
FileChooserFiltersPropertyInfo ,
#endif
#if defined(ENABLE_OVERLOADING)
fileChooserFilters ,
#endif
getFileChooserFilters ,
#if defined(ENABLE_OVERLOADING)
FileChooserSelectMultiplePropertyInfo ,
#endif
constructFileChooserSelectMultiple ,
#if defined(ENABLE_OVERLOADING)
fileChooserSelectMultiple ,
#endif
getFileChooserSelectMultiple ,
setFileChooserSelectMultiple ,
#if defined(ENABLE_OVERLOADING)
FileChooserShortcutFoldersPropertyInfo ,
#endif
#if defined(ENABLE_OVERLOADING)
fileChooserShortcutFolders ,
#endif
getFileChooserShortcutFolders ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GHashTable as B.GHT
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Coerce as Coerce
import qualified Data.Text as T
import qualified Data.Kind as DK
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GHC.Records as R
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gio.Interfaces.File as Gio.File
import qualified GI.Gio.Interfaces.ListModel as Gio.ListModel
import {-# SOURCE #-} qualified GI.Gtk.Enums as Gtk.Enums
import {-# SOURCE #-} qualified GI.Gtk.Objects.FileFilter as Gtk.FileFilter
{-# DEPRECATED FileChooser ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
newtype FileChooser = FileChooser (SP.ManagedPtr FileChooser)
deriving (FileChooser -> FileChooser -> Bool
(FileChooser -> FileChooser -> Bool)
-> (FileChooser -> FileChooser -> Bool) -> Eq FileChooser
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: FileChooser -> FileChooser -> Bool
== :: FileChooser -> FileChooser -> Bool
$c/= :: FileChooser -> FileChooser -> Bool
/= :: FileChooser -> FileChooser -> Bool
Eq)
instance SP.ManagedPtrNewtype FileChooser where
toManagedPtr :: FileChooser -> ManagedPtr FileChooser
toManagedPtr (FileChooser ManagedPtr FileChooser
p) = ManagedPtr FileChooser
p
foreign import ccall "gtk_file_chooser_get_type"
c_gtk_file_chooser_get_type :: IO B.Types.GType
instance B.Types.TypedObject FileChooser where
glibType :: IO GType
glibType = IO GType
c_gtk_file_chooser_get_type
instance B.Types.GObject FileChooser
class (SP.GObject o, O.IsDescendantOf FileChooser o) => IsFileChooser o
instance (SP.GObject o, O.IsDescendantOf FileChooser o) => IsFileChooser o
instance O.HasParentTypes FileChooser
type instance O.ParentTypes FileChooser = '[GObject.Object.Object]
toFileChooser :: (MIO.MonadIO m, IsFileChooser o) => o -> m FileChooser
toFileChooser :: forall (m :: * -> *) o.
(MonadIO m, IsFileChooser o) =>
o -> m FileChooser
toFileChooser = IO FileChooser -> m FileChooser
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO FileChooser -> m FileChooser)
-> (o -> IO FileChooser) -> o -> m FileChooser
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr FileChooser -> FileChooser) -> o -> IO FileChooser
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr FileChooser -> FileChooser
FileChooser
instance B.GValue.IsGValue (Maybe FileChooser) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_gtk_file_chooser_get_type
gvalueSet_ :: Ptr GValue -> Maybe FileChooser -> IO ()
gvalueSet_ Ptr GValue
gv Maybe FileChooser
P.Nothing = Ptr GValue -> Ptr FileChooser -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr FileChooser
forall a. Ptr a
FP.nullPtr :: FP.Ptr FileChooser)
gvalueSet_ Ptr GValue
gv (P.Just FileChooser
obj) = FileChooser -> (Ptr FileChooser -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr FileChooser
obj (Ptr GValue -> Ptr FileChooser -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe FileChooser)
gvalueGet_ Ptr GValue
gv = do
Ptr FileChooser
ptr <- Ptr GValue -> IO (Ptr FileChooser)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr FileChooser)
if Ptr FileChooser
ptr Ptr FileChooser -> Ptr FileChooser -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr FileChooser
forall a. Ptr a
FP.nullPtr
then FileChooser -> Maybe FileChooser
forall a. a -> Maybe a
P.Just (FileChooser -> Maybe FileChooser)
-> IO FileChooser -> IO (Maybe FileChooser)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr FileChooser -> FileChooser)
-> Ptr FileChooser -> IO FileChooser
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr FileChooser -> FileChooser
FileChooser Ptr FileChooser
ptr
else Maybe FileChooser -> IO (Maybe FileChooser)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe FileChooser
forall a. Maybe a
P.Nothing
getFileChooserAction :: (MonadIO m, IsFileChooser o) => o -> m Gtk.Enums.FileChooserAction
getFileChooserAction :: forall (m :: * -> *) o.
(MonadIO m, IsFileChooser o) =>
o -> m FileChooserAction
getFileChooserAction o
obj = IO FileChooserAction -> m FileChooserAction
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO FileChooserAction -> m FileChooserAction)
-> IO FileChooserAction -> m FileChooserAction
forall a b. (a -> b) -> a -> b
$ o -> String -> IO FileChooserAction
forall a b. (GObject a, Enum b, BoxedEnum b) => a -> String -> IO b
B.Properties.getObjectPropertyEnum o
obj String
"action"
setFileChooserAction :: (MonadIO m, IsFileChooser o) => o -> Gtk.Enums.FileChooserAction -> m ()
setFileChooserAction :: forall (m :: * -> *) o.
(MonadIO m, IsFileChooser o) =>
o -> FileChooserAction -> m ()
setFileChooserAction o
obj FileChooserAction
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
o -> String -> FileChooserAction -> IO ()
forall a b.
(GObject a, Enum b, BoxedEnum b) =>
a -> String -> b -> IO ()
B.Properties.setObjectPropertyEnum o
obj String
"action" FileChooserAction
val
constructFileChooserAction :: (IsFileChooser o, MIO.MonadIO m) => Gtk.Enums.FileChooserAction -> m (GValueConstruct o)
constructFileChooserAction :: forall o (m :: * -> *).
(IsFileChooser o, MonadIO m) =>
FileChooserAction -> m (GValueConstruct o)
constructFileChooserAction FileChooserAction
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> FileChooserAction -> IO (GValueConstruct o)
forall a o.
(Enum a, BoxedEnum a) =>
String -> a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyEnum String
"action" FileChooserAction
val
#if defined(ENABLE_OVERLOADING)
data FileChooserActionPropertyInfo
instance AttrInfo FileChooserActionPropertyInfo where
type AttrAllowedOps FileChooserActionPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint FileChooserActionPropertyInfo = IsFileChooser
type AttrSetTypeConstraint FileChooserActionPropertyInfo = (~) Gtk.Enums.FileChooserAction
type AttrTransferTypeConstraint FileChooserActionPropertyInfo = (~) Gtk.Enums.FileChooserAction
type AttrTransferType FileChooserActionPropertyInfo = Gtk.Enums.FileChooserAction
type AttrGetType FileChooserActionPropertyInfo = Gtk.Enums.FileChooserAction
type AttrLabel FileChooserActionPropertyInfo = "action"
type AttrOrigin FileChooserActionPropertyInfo = FileChooser
attrGet = getFileChooserAction
attrSet = setFileChooserAction
attrTransfer _ v = do
return v
attrConstruct = constructFileChooserAction
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.action"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#g:attr:action"
})
#endif
getFileChooserCreateFolders :: (MonadIO m, IsFileChooser o) => o -> m Bool
getFileChooserCreateFolders :: forall (m :: * -> *) o. (MonadIO m, IsFileChooser o) => o -> m Bool
getFileChooserCreateFolders o
obj = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"create-folders"
setFileChooserCreateFolders :: (MonadIO m, IsFileChooser o) => o -> Bool -> m ()
setFileChooserCreateFolders :: forall (m :: * -> *) o.
(MonadIO m, IsFileChooser o) =>
o -> Bool -> m ()
setFileChooserCreateFolders o
obj Bool
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"create-folders" Bool
val
constructFileChooserCreateFolders :: (IsFileChooser o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructFileChooserCreateFolders :: forall o (m :: * -> *).
(IsFileChooser o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructFileChooserCreateFolders Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"create-folders" Bool
val
#if defined(ENABLE_OVERLOADING)
data FileChooserCreateFoldersPropertyInfo
instance AttrInfo FileChooserCreateFoldersPropertyInfo where
type AttrAllowedOps FileChooserCreateFoldersPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint FileChooserCreateFoldersPropertyInfo = IsFileChooser
type AttrSetTypeConstraint FileChooserCreateFoldersPropertyInfo = (~) Bool
type AttrTransferTypeConstraint FileChooserCreateFoldersPropertyInfo = (~) Bool
type AttrTransferType FileChooserCreateFoldersPropertyInfo = Bool
type AttrGetType FileChooserCreateFoldersPropertyInfo = Bool
type AttrLabel FileChooserCreateFoldersPropertyInfo = "create-folders"
type AttrOrigin FileChooserCreateFoldersPropertyInfo = FileChooser
attrGet = getFileChooserCreateFolders
attrSet = setFileChooserCreateFolders
attrTransfer _ v = do
return v
attrConstruct = constructFileChooserCreateFolders
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.createFolders"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#g:attr:createFolders"
})
#endif
getFileChooserFilter :: (MonadIO m, IsFileChooser o) => o -> m (Maybe Gtk.FileFilter.FileFilter)
getFileChooserFilter :: forall (m :: * -> *) o.
(MonadIO m, IsFileChooser o) =>
o -> m (Maybe FileFilter)
getFileChooserFilter o
obj = IO (Maybe FileFilter) -> m (Maybe FileFilter)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (Maybe FileFilter) -> m (Maybe FileFilter))
-> IO (Maybe FileFilter) -> m (Maybe FileFilter)
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr FileFilter -> FileFilter)
-> IO (Maybe FileFilter)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"filter" ManagedPtr FileFilter -> FileFilter
Gtk.FileFilter.FileFilter
setFileChooserFilter :: (MonadIO m, IsFileChooser o, Gtk.FileFilter.IsFileFilter a) => o -> a -> m ()
setFileChooserFilter :: forall (m :: * -> *) o a.
(MonadIO m, IsFileChooser o, IsFileFilter a) =>
o -> a -> m ()
setFileChooserFilter o
obj a
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
o -> String -> Maybe a -> IO ()
forall a b.
(GObject a, GObject b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyObject o
obj String
"filter" (a -> Maybe a
forall a. a -> Maybe a
Just a
val)
constructFileChooserFilter :: (IsFileChooser o, MIO.MonadIO m, Gtk.FileFilter.IsFileFilter a) => a -> m (GValueConstruct o)
constructFileChooserFilter :: forall o (m :: * -> *) a.
(IsFileChooser o, MonadIO m, IsFileFilter a) =>
a -> m (GValueConstruct o)
constructFileChooserFilter a
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe a -> IO (GValueConstruct o)
forall a o.
GObject a =>
String -> Maybe a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyObject String
"filter" (a -> Maybe a
forall a. a -> Maybe a
P.Just a
val)
#if defined(ENABLE_OVERLOADING)
data FileChooserFilterPropertyInfo
instance AttrInfo FileChooserFilterPropertyInfo where
type AttrAllowedOps FileChooserFilterPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint FileChooserFilterPropertyInfo = IsFileChooser
type AttrSetTypeConstraint FileChooserFilterPropertyInfo = Gtk.FileFilter.IsFileFilter
type AttrTransferTypeConstraint FileChooserFilterPropertyInfo = Gtk.FileFilter.IsFileFilter
type AttrTransferType FileChooserFilterPropertyInfo = Gtk.FileFilter.FileFilter
type AttrGetType FileChooserFilterPropertyInfo = (Maybe Gtk.FileFilter.FileFilter)
type AttrLabel FileChooserFilterPropertyInfo = "filter"
type AttrOrigin FileChooserFilterPropertyInfo = FileChooser
attrGet = getFileChooserFilter
attrSet = setFileChooserFilter
attrTransfer _ v = do
unsafeCastTo Gtk.FileFilter.FileFilter v
attrConstruct = constructFileChooserFilter
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.filter"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#g:attr:filter"
})
#endif
getFileChooserFilters :: (MonadIO m, IsFileChooser o) => o -> m (Maybe Gio.ListModel.ListModel)
getFileChooserFilters :: forall (m :: * -> *) o.
(MonadIO m, IsFileChooser o) =>
o -> m (Maybe ListModel)
getFileChooserFilters o
obj = IO (Maybe ListModel) -> m (Maybe ListModel)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (Maybe ListModel) -> m (Maybe ListModel))
-> IO (Maybe ListModel) -> m (Maybe ListModel)
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr ListModel -> ListModel)
-> IO (Maybe ListModel)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"filters" ManagedPtr ListModel -> ListModel
Gio.ListModel.ListModel
#if defined(ENABLE_OVERLOADING)
data FileChooserFiltersPropertyInfo
instance AttrInfo FileChooserFiltersPropertyInfo where
type AttrAllowedOps FileChooserFiltersPropertyInfo = '[ 'AttrGet, 'AttrClear]
type AttrBaseTypeConstraint FileChooserFiltersPropertyInfo = IsFileChooser
type AttrSetTypeConstraint FileChooserFiltersPropertyInfo = (~) ()
type AttrTransferTypeConstraint FileChooserFiltersPropertyInfo = (~) ()
type AttrTransferType FileChooserFiltersPropertyInfo = ()
type AttrGetType FileChooserFiltersPropertyInfo = (Maybe Gio.ListModel.ListModel)
type AttrLabel FileChooserFiltersPropertyInfo = "filters"
type AttrOrigin FileChooserFiltersPropertyInfo = FileChooser
attrGet = getFileChooserFilters
attrSet = undefined
attrTransfer _ = undefined
attrConstruct = undefined
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.filters"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#g:attr:filters"
})
#endif
getFileChooserSelectMultiple :: (MonadIO m, IsFileChooser o) => o -> m Bool
getFileChooserSelectMultiple :: forall (m :: * -> *) o. (MonadIO m, IsFileChooser o) => o -> m Bool
getFileChooserSelectMultiple o
obj = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"select-multiple"
setFileChooserSelectMultiple :: (MonadIO m, IsFileChooser o) => o -> Bool -> m ()
setFileChooserSelectMultiple :: forall (m :: * -> *) o.
(MonadIO m, IsFileChooser o) =>
o -> Bool -> m ()
setFileChooserSelectMultiple o
obj Bool
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"select-multiple" Bool
val
constructFileChooserSelectMultiple :: (IsFileChooser o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructFileChooserSelectMultiple :: forall o (m :: * -> *).
(IsFileChooser o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructFileChooserSelectMultiple Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"select-multiple" Bool
val
#if defined(ENABLE_OVERLOADING)
data FileChooserSelectMultiplePropertyInfo
instance AttrInfo FileChooserSelectMultiplePropertyInfo where
type AttrAllowedOps FileChooserSelectMultiplePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint FileChooserSelectMultiplePropertyInfo = IsFileChooser
type AttrSetTypeConstraint FileChooserSelectMultiplePropertyInfo = (~) Bool
type AttrTransferTypeConstraint FileChooserSelectMultiplePropertyInfo = (~) Bool
type AttrTransferType FileChooserSelectMultiplePropertyInfo = Bool
type AttrGetType FileChooserSelectMultiplePropertyInfo = Bool
type AttrLabel FileChooserSelectMultiplePropertyInfo = "select-multiple"
type AttrOrigin FileChooserSelectMultiplePropertyInfo = FileChooser
attrGet = getFileChooserSelectMultiple
attrSet = setFileChooserSelectMultiple
attrTransfer _ v = do
return v
attrConstruct = constructFileChooserSelectMultiple
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.selectMultiple"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#g:attr:selectMultiple"
})
#endif
getFileChooserShortcutFolders :: (MonadIO m, IsFileChooser o) => o -> m (Maybe Gio.ListModel.ListModel)
getFileChooserShortcutFolders :: forall (m :: * -> *) o.
(MonadIO m, IsFileChooser o) =>
o -> m (Maybe ListModel)
getFileChooserShortcutFolders o
obj = IO (Maybe ListModel) -> m (Maybe ListModel)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (Maybe ListModel) -> m (Maybe ListModel))
-> IO (Maybe ListModel) -> m (Maybe ListModel)
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr ListModel -> ListModel)
-> IO (Maybe ListModel)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"shortcut-folders" ManagedPtr ListModel -> ListModel
Gio.ListModel.ListModel
#if defined(ENABLE_OVERLOADING)
data FileChooserShortcutFoldersPropertyInfo
instance AttrInfo FileChooserShortcutFoldersPropertyInfo where
type AttrAllowedOps FileChooserShortcutFoldersPropertyInfo = '[ 'AttrGet, 'AttrClear]
type AttrBaseTypeConstraint FileChooserShortcutFoldersPropertyInfo = IsFileChooser
type AttrSetTypeConstraint FileChooserShortcutFoldersPropertyInfo = (~) ()
type AttrTransferTypeConstraint FileChooserShortcutFoldersPropertyInfo = (~) ()
type AttrTransferType FileChooserShortcutFoldersPropertyInfo = ()
type AttrGetType FileChooserShortcutFoldersPropertyInfo = (Maybe Gio.ListModel.ListModel)
type AttrLabel FileChooserShortcutFoldersPropertyInfo = "shortcut-folders"
type AttrOrigin FileChooserShortcutFoldersPropertyInfo = FileChooser
attrGet = getFileChooserShortcutFolders
attrSet = undefined
attrTransfer _ = undefined
attrConstruct = undefined
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.shortcutFolders"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#g:attr:shortcutFolders"
})
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList FileChooser
type instance O.AttributeList FileChooser = FileChooserAttributeList
type FileChooserAttributeList = ('[ '("action", FileChooserActionPropertyInfo), '("createFolders", FileChooserCreateFoldersPropertyInfo), '("filter", FileChooserFilterPropertyInfo), '("filters", FileChooserFiltersPropertyInfo), '("selectMultiple", FileChooserSelectMultiplePropertyInfo), '("shortcutFolders", FileChooserShortcutFoldersPropertyInfo)] :: [(Symbol, DK.Type)])
#endif
#if defined(ENABLE_OVERLOADING)
fileChooserAction :: AttrLabelProxy "action"
fileChooserAction = AttrLabelProxy
fileChooserCreateFolders :: AttrLabelProxy "createFolders"
fileChooserCreateFolders = AttrLabelProxy
fileChooserFilter :: AttrLabelProxy "filter"
fileChooserFilter = AttrLabelProxy
fileChooserFilters :: AttrLabelProxy "filters"
fileChooserFilters = AttrLabelProxy
fileChooserSelectMultiple :: AttrLabelProxy "selectMultiple"
fileChooserSelectMultiple = AttrLabelProxy
fileChooserShortcutFolders :: AttrLabelProxy "shortcutFolders"
fileChooserShortcutFolders = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolveFileChooserMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
ResolveFileChooserMethod "addChoice" o = FileChooserAddChoiceMethodInfo
ResolveFileChooserMethod "addFilter" o = FileChooserAddFilterMethodInfo
ResolveFileChooserMethod "addShortcutFolder" o = FileChooserAddShortcutFolderMethodInfo
ResolveFileChooserMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveFileChooserMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveFileChooserMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveFileChooserMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveFileChooserMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveFileChooserMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveFileChooserMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveFileChooserMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveFileChooserMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveFileChooserMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveFileChooserMethod "removeChoice" o = FileChooserRemoveChoiceMethodInfo
ResolveFileChooserMethod "removeFilter" o = FileChooserRemoveFilterMethodInfo
ResolveFileChooserMethod "removeShortcutFolder" o = FileChooserRemoveShortcutFolderMethodInfo
ResolveFileChooserMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveFileChooserMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveFileChooserMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveFileChooserMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveFileChooserMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveFileChooserMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveFileChooserMethod "getAction" o = FileChooserGetActionMethodInfo
ResolveFileChooserMethod "getChoice" o = FileChooserGetChoiceMethodInfo
ResolveFileChooserMethod "getCreateFolders" o = FileChooserGetCreateFoldersMethodInfo
ResolveFileChooserMethod "getCurrentFolder" o = FileChooserGetCurrentFolderMethodInfo
ResolveFileChooserMethod "getCurrentName" o = FileChooserGetCurrentNameMethodInfo
ResolveFileChooserMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveFileChooserMethod "getFile" o = FileChooserGetFileMethodInfo
ResolveFileChooserMethod "getFiles" o = FileChooserGetFilesMethodInfo
ResolveFileChooserMethod "getFilter" o = FileChooserGetFilterMethodInfo
ResolveFileChooserMethod "getFilters" o = FileChooserGetFiltersMethodInfo
ResolveFileChooserMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveFileChooserMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveFileChooserMethod "getSelectMultiple" o = FileChooserGetSelectMultipleMethodInfo
ResolveFileChooserMethod "getShortcutFolders" o = FileChooserGetShortcutFoldersMethodInfo
ResolveFileChooserMethod "setAction" o = FileChooserSetActionMethodInfo
ResolveFileChooserMethod "setChoice" o = FileChooserSetChoiceMethodInfo
ResolveFileChooserMethod "setCreateFolders" o = FileChooserSetCreateFoldersMethodInfo
ResolveFileChooserMethod "setCurrentFolder" o = FileChooserSetCurrentFolderMethodInfo
ResolveFileChooserMethod "setCurrentName" o = FileChooserSetCurrentNameMethodInfo
ResolveFileChooserMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveFileChooserMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveFileChooserMethod "setFile" o = FileChooserSetFileMethodInfo
ResolveFileChooserMethod "setFilter" o = FileChooserSetFilterMethodInfo
ResolveFileChooserMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveFileChooserMethod "setSelectMultiple" o = FileChooserSetSelectMultipleMethodInfo
ResolveFileChooserMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveFileChooserMethod t FileChooser, O.OverloadedMethod info FileChooser p) => OL.IsLabel t (FileChooser -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveFileChooserMethod t FileChooser, O.OverloadedMethod info FileChooser p, R.HasField t FileChooser p) => R.HasField t FileChooser p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveFileChooserMethod t FileChooser, O.OverloadedMethodInfo info FileChooser) => OL.IsLabel t (O.MethodProxy info FileChooser) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
foreign import ccall "gtk_file_chooser_add_choice" gtk_file_chooser_add_choice ::
Ptr FileChooser ->
CString ->
CString ->
Ptr CString ->
Ptr CString ->
IO ()
{-# DEPRECATED fileChooserAddChoice ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserAddChoice ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> T.Text
-> T.Text
-> Maybe ([T.Text])
-> Maybe ([T.Text])
-> m ()
fileChooserAddChoice :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> Text -> Text -> Maybe [Text] -> Maybe [Text] -> m ()
fileChooserAddChoice a
chooser Text
id Text
label Maybe [Text]
options Maybe [Text]
optionLabels = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
CString
id' <- Text -> IO CString
textToCString Text
id
CString
label' <- Text -> IO CString
textToCString Text
label
Ptr CString
maybeOptions <- case Maybe [Text]
options of
Maybe [Text]
Nothing -> Ptr CString -> IO (Ptr CString)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr CString
forall a. Ptr a
nullPtr
Just [Text]
jOptions -> do
Ptr CString
jOptions' <- [Text] -> IO (Ptr CString)
packZeroTerminatedUTF8CArray [Text]
jOptions
Ptr CString -> IO (Ptr CString)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr CString
jOptions'
Ptr CString
maybeOptionLabels <- case Maybe [Text]
optionLabels of
Maybe [Text]
Nothing -> Ptr CString -> IO (Ptr CString)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr CString
forall a. Ptr a
nullPtr
Just [Text]
jOptionLabels -> do
Ptr CString
jOptionLabels' <- [Text] -> IO (Ptr CString)
packZeroTerminatedUTF8CArray [Text]
jOptionLabels
Ptr CString -> IO (Ptr CString)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr CString
jOptionLabels'
Ptr FileChooser
-> CString -> CString -> Ptr CString -> Ptr CString -> IO ()
gtk_file_chooser_add_choice Ptr FileChooser
chooser' CString
id' CString
label' Ptr CString
maybeOptions Ptr CString
maybeOptionLabels
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
id'
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
label'
(CString -> IO ()) -> Ptr CString -> IO ()
forall a b. (Ptr a -> IO b) -> Ptr (Ptr a) -> IO ()
mapZeroTerminatedCArray CString -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr CString
maybeOptions
Ptr CString -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr CString
maybeOptions
(CString -> IO ()) -> Ptr CString -> IO ()
forall a b. (Ptr a -> IO b) -> Ptr (Ptr a) -> IO ()
mapZeroTerminatedCArray CString -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr CString
maybeOptionLabels
Ptr CString -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr CString
maybeOptionLabels
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data FileChooserAddChoiceMethodInfo
instance (signature ~ (T.Text -> T.Text -> Maybe ([T.Text]) -> Maybe ([T.Text]) -> m ()), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserAddChoiceMethodInfo a signature where
overloadedMethod = fileChooserAddChoice
instance O.OverloadedMethodInfo FileChooserAddChoiceMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserAddChoice",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserAddChoice"
})
#endif
foreign import ccall "gtk_file_chooser_add_filter" gtk_file_chooser_add_filter ::
Ptr FileChooser ->
Ptr Gtk.FileFilter.FileFilter ->
IO ()
{-# DEPRECATED fileChooserAddFilter ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserAddFilter ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a, Gtk.FileFilter.IsFileFilter b) =>
a
-> b
-> m ()
fileChooserAddFilter :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsFileChooser a, IsFileFilter b) =>
a -> b -> m ()
fileChooserAddFilter a
chooser b
filter = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr FileFilter
filter' <- b -> IO (Ptr FileFilter)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
filter
Ptr FileChooser -> Ptr FileFilter -> IO ()
gtk_file_chooser_add_filter Ptr FileChooser
chooser' Ptr FileFilter
filter'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
filter
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data FileChooserAddFilterMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsFileChooser a, Gtk.FileFilter.IsFileFilter b) => O.OverloadedMethod FileChooserAddFilterMethodInfo a signature where
overloadedMethod = fileChooserAddFilter
instance O.OverloadedMethodInfo FileChooserAddFilterMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserAddFilter",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserAddFilter"
})
#endif
foreign import ccall "gtk_file_chooser_add_shortcut_folder" gtk_file_chooser_add_shortcut_folder ::
Ptr FileChooser ->
Ptr Gio.File.File ->
Ptr (Ptr GError) ->
IO CInt
{-# DEPRECATED fileChooserAddShortcutFolder ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserAddShortcutFolder ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a, Gio.File.IsFile b) =>
a
-> b
-> m ()
fileChooserAddShortcutFolder :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsFileChooser a, IsFile b) =>
a -> b -> m ()
fileChooserAddShortcutFolder a
chooser b
folder = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr File
folder' <- b -> IO (Ptr File)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
folder
IO () -> IO () -> IO ()
forall a b. IO a -> IO b -> IO a
onException (do
CInt
_ <- (Ptr (Ptr GError) -> IO CInt) -> IO CInt
forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError ((Ptr (Ptr GError) -> IO CInt) -> IO CInt)
-> (Ptr (Ptr GError) -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ Ptr FileChooser -> Ptr File -> Ptr (Ptr GError) -> IO CInt
gtk_file_chooser_add_shortcut_folder Ptr FileChooser
chooser' Ptr File
folder'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
folder
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
) (do
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
data FileChooserAddShortcutFolderMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsFileChooser a, Gio.File.IsFile b) => O.OverloadedMethod FileChooserAddShortcutFolderMethodInfo a signature where
overloadedMethod = fileChooserAddShortcutFolder
instance O.OverloadedMethodInfo FileChooserAddShortcutFolderMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserAddShortcutFolder",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserAddShortcutFolder"
})
#endif
foreign import ccall "gtk_file_chooser_get_action" gtk_file_chooser_get_action ::
Ptr FileChooser ->
IO CUInt
{-# DEPRECATED fileChooserGetAction ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserGetAction ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> m Gtk.Enums.FileChooserAction
fileChooserGetAction :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> m FileChooserAction
fileChooserGetAction a
chooser = IO FileChooserAction -> m FileChooserAction
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO FileChooserAction -> m FileChooserAction)
-> IO FileChooserAction -> m FileChooserAction
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
CUInt
result <- Ptr FileChooser -> IO CUInt
gtk_file_chooser_get_action Ptr FileChooser
chooser'
let result' :: FileChooserAction
result' = (Int -> FileChooserAction
forall a. Enum a => Int -> a
toEnum (Int -> FileChooserAction)
-> (CUInt -> Int) -> CUInt -> FileChooserAction
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CUInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) CUInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
FileChooserAction -> IO FileChooserAction
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return FileChooserAction
result'
#if defined(ENABLE_OVERLOADING)
data FileChooserGetActionMethodInfo
instance (signature ~ (m Gtk.Enums.FileChooserAction), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserGetActionMethodInfo a signature where
overloadedMethod = fileChooserGetAction
instance O.OverloadedMethodInfo FileChooserGetActionMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserGetAction",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserGetAction"
})
#endif
foreign import ccall "gtk_file_chooser_get_choice" gtk_file_chooser_get_choice ::
Ptr FileChooser ->
CString ->
IO CString
{-# DEPRECATED fileChooserGetChoice ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserGetChoice ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> T.Text
-> m (Maybe T.Text)
fileChooserGetChoice :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> Text -> m (Maybe Text)
fileChooserGetChoice a
chooser Text
id = IO (Maybe Text) -> m (Maybe Text)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Text) -> m (Maybe Text))
-> IO (Maybe Text) -> m (Maybe Text)
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
CString
id' <- Text -> IO CString
textToCString Text
id
CString
result <- Ptr FileChooser -> CString -> IO CString
gtk_file_chooser_get_choice Ptr FileChooser
chooser' CString
id'
Maybe Text
maybeResult <- CString -> (CString -> IO Text) -> IO (Maybe Text)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull CString
result ((CString -> IO Text) -> IO (Maybe Text))
-> (CString -> IO Text) -> IO (Maybe Text)
forall a b. (a -> b) -> a -> b
$ \CString
result' -> do
Text
result'' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result'
Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result''
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
id'
Maybe Text -> IO (Maybe Text)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Text
maybeResult
#if defined(ENABLE_OVERLOADING)
data FileChooserGetChoiceMethodInfo
instance (signature ~ (T.Text -> m (Maybe T.Text)), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserGetChoiceMethodInfo a signature where
overloadedMethod = fileChooserGetChoice
instance O.OverloadedMethodInfo FileChooserGetChoiceMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserGetChoice",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserGetChoice"
})
#endif
foreign import ccall "gtk_file_chooser_get_create_folders" gtk_file_chooser_get_create_folders ::
Ptr FileChooser ->
IO CInt
{-# DEPRECATED fileChooserGetCreateFolders ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserGetCreateFolders ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> m Bool
fileChooserGetCreateFolders :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> m Bool
fileChooserGetCreateFolders a
chooser = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
CInt
result <- Ptr FileChooser -> IO CInt
gtk_file_chooser_get_create_folders Ptr FileChooser
chooser'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data FileChooserGetCreateFoldersMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserGetCreateFoldersMethodInfo a signature where
overloadedMethod = fileChooserGetCreateFolders
instance O.OverloadedMethodInfo FileChooserGetCreateFoldersMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserGetCreateFolders",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserGetCreateFolders"
})
#endif
foreign import ccall "gtk_file_chooser_get_current_folder" gtk_file_chooser_get_current_folder ::
Ptr FileChooser ->
IO (Ptr Gio.File.File)
{-# DEPRECATED fileChooserGetCurrentFolder ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserGetCurrentFolder ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> m (Maybe Gio.File.File)
fileChooserGetCurrentFolder :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> m (Maybe File)
fileChooserGetCurrentFolder a
chooser = IO (Maybe File) -> m (Maybe File)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe File) -> m (Maybe File))
-> IO (Maybe File) -> m (Maybe File)
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr File
result <- Ptr FileChooser -> IO (Ptr File)
gtk_file_chooser_get_current_folder Ptr FileChooser
chooser'
Maybe File
maybeResult <- Ptr File -> (Ptr File -> IO File) -> IO (Maybe File)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr File
result ((Ptr File -> IO File) -> IO (Maybe File))
-> (Ptr File -> IO File) -> IO (Maybe File)
forall a b. (a -> b) -> a -> b
$ \Ptr File
result' -> do
File
result'' <- ((ManagedPtr File -> File) -> Ptr File -> IO File
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr File -> File
Gio.File.File) Ptr File
result'
File -> IO File
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return File
result''
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
Maybe File -> IO (Maybe File)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe File
maybeResult
#if defined(ENABLE_OVERLOADING)
data FileChooserGetCurrentFolderMethodInfo
instance (signature ~ (m (Maybe Gio.File.File)), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserGetCurrentFolderMethodInfo a signature where
overloadedMethod = fileChooserGetCurrentFolder
instance O.OverloadedMethodInfo FileChooserGetCurrentFolderMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserGetCurrentFolder",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserGetCurrentFolder"
})
#endif
foreign import ccall "gtk_file_chooser_get_current_name" gtk_file_chooser_get_current_name ::
Ptr FileChooser ->
IO CString
{-# DEPRECATED fileChooserGetCurrentName ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserGetCurrentName ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> m (Maybe T.Text)
fileChooserGetCurrentName :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> m (Maybe Text)
fileChooserGetCurrentName a
chooser = IO (Maybe Text) -> m (Maybe Text)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Text) -> m (Maybe Text))
-> IO (Maybe Text) -> m (Maybe Text)
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
CString
result <- Ptr FileChooser -> IO CString
gtk_file_chooser_get_current_name Ptr FileChooser
chooser'
Maybe Text
maybeResult <- CString -> (CString -> IO Text) -> IO (Maybe Text)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull CString
result ((CString -> IO Text) -> IO (Maybe Text))
-> (CString -> IO Text) -> IO (Maybe Text)
forall a b. (a -> b) -> a -> b
$ \CString
result' -> do
Text
result'' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result'
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
result'
Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result''
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
Maybe Text -> IO (Maybe Text)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Text
maybeResult
#if defined(ENABLE_OVERLOADING)
data FileChooserGetCurrentNameMethodInfo
instance (signature ~ (m (Maybe T.Text)), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserGetCurrentNameMethodInfo a signature where
overloadedMethod = fileChooserGetCurrentName
instance O.OverloadedMethodInfo FileChooserGetCurrentNameMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserGetCurrentName",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserGetCurrentName"
})
#endif
foreign import ccall "gtk_file_chooser_get_file" gtk_file_chooser_get_file ::
Ptr FileChooser ->
IO (Ptr Gio.File.File)
{-# DEPRECATED fileChooserGetFile ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserGetFile ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> m (Maybe Gio.File.File)
fileChooserGetFile :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> m (Maybe File)
fileChooserGetFile a
chooser = IO (Maybe File) -> m (Maybe File)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe File) -> m (Maybe File))
-> IO (Maybe File) -> m (Maybe File)
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr File
result <- Ptr FileChooser -> IO (Ptr File)
gtk_file_chooser_get_file Ptr FileChooser
chooser'
Maybe File
maybeResult <- Ptr File -> (Ptr File -> IO File) -> IO (Maybe File)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr File
result ((Ptr File -> IO File) -> IO (Maybe File))
-> (Ptr File -> IO File) -> IO (Maybe File)
forall a b. (a -> b) -> a -> b
$ \Ptr File
result' -> do
File
result'' <- ((ManagedPtr File -> File) -> Ptr File -> IO File
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr File -> File
Gio.File.File) Ptr File
result'
File -> IO File
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return File
result''
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
Maybe File -> IO (Maybe File)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe File
maybeResult
#if defined(ENABLE_OVERLOADING)
data FileChooserGetFileMethodInfo
instance (signature ~ (m (Maybe Gio.File.File)), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserGetFileMethodInfo a signature where
overloadedMethod = fileChooserGetFile
instance O.OverloadedMethodInfo FileChooserGetFileMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserGetFile",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserGetFile"
})
#endif
foreign import ccall "gtk_file_chooser_get_files" gtk_file_chooser_get_files ::
Ptr FileChooser ->
IO (Ptr Gio.ListModel.ListModel)
{-# DEPRECATED fileChooserGetFiles ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserGetFiles ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> m Gio.ListModel.ListModel
fileChooserGetFiles :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> m ListModel
fileChooserGetFiles a
chooser = IO ListModel -> m ListModel
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO ListModel -> m ListModel) -> IO ListModel -> m ListModel
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr ListModel
result <- Ptr FileChooser -> IO (Ptr ListModel)
gtk_file_chooser_get_files Ptr FileChooser
chooser'
Text -> Ptr ListModel -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"fileChooserGetFiles" Ptr ListModel
result
ListModel
result' <- ((ManagedPtr ListModel -> ListModel)
-> Ptr ListModel -> IO ListModel
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr ListModel -> ListModel
Gio.ListModel.ListModel) Ptr ListModel
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
ListModel -> IO ListModel
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ListModel
result'
#if defined(ENABLE_OVERLOADING)
data FileChooserGetFilesMethodInfo
instance (signature ~ (m Gio.ListModel.ListModel), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserGetFilesMethodInfo a signature where
overloadedMethod = fileChooserGetFiles
instance O.OverloadedMethodInfo FileChooserGetFilesMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserGetFiles",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserGetFiles"
})
#endif
foreign import ccall "gtk_file_chooser_get_filter" gtk_file_chooser_get_filter ::
Ptr FileChooser ->
IO (Ptr Gtk.FileFilter.FileFilter)
{-# DEPRECATED fileChooserGetFilter ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserGetFilter ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> m (Maybe Gtk.FileFilter.FileFilter)
fileChooserGetFilter :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> m (Maybe FileFilter)
fileChooserGetFilter a
chooser = IO (Maybe FileFilter) -> m (Maybe FileFilter)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe FileFilter) -> m (Maybe FileFilter))
-> IO (Maybe FileFilter) -> m (Maybe FileFilter)
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr FileFilter
result <- Ptr FileChooser -> IO (Ptr FileFilter)
gtk_file_chooser_get_filter Ptr FileChooser
chooser'
Maybe FileFilter
maybeResult <- Ptr FileFilter
-> (Ptr FileFilter -> IO FileFilter) -> IO (Maybe FileFilter)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr FileFilter
result ((Ptr FileFilter -> IO FileFilter) -> IO (Maybe FileFilter))
-> (Ptr FileFilter -> IO FileFilter) -> IO (Maybe FileFilter)
forall a b. (a -> b) -> a -> b
$ \Ptr FileFilter
result' -> do
FileFilter
result'' <- ((ManagedPtr FileFilter -> FileFilter)
-> Ptr FileFilter -> IO FileFilter
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr FileFilter -> FileFilter
Gtk.FileFilter.FileFilter) Ptr FileFilter
result'
FileFilter -> IO FileFilter
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return FileFilter
result''
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
Maybe FileFilter -> IO (Maybe FileFilter)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe FileFilter
maybeResult
#if defined(ENABLE_OVERLOADING)
data FileChooserGetFilterMethodInfo
instance (signature ~ (m (Maybe Gtk.FileFilter.FileFilter)), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserGetFilterMethodInfo a signature where
overloadedMethod = fileChooserGetFilter
instance O.OverloadedMethodInfo FileChooserGetFilterMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserGetFilter",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserGetFilter"
})
#endif
foreign import ccall "gtk_file_chooser_get_filters" gtk_file_chooser_get_filters ::
Ptr FileChooser ->
IO (Ptr Gio.ListModel.ListModel)
{-# DEPRECATED fileChooserGetFilters ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserGetFilters ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> m Gio.ListModel.ListModel
fileChooserGetFilters :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> m ListModel
fileChooserGetFilters a
chooser = IO ListModel -> m ListModel
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO ListModel -> m ListModel) -> IO ListModel -> m ListModel
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr ListModel
result <- Ptr FileChooser -> IO (Ptr ListModel)
gtk_file_chooser_get_filters Ptr FileChooser
chooser'
Text -> Ptr ListModel -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"fileChooserGetFilters" Ptr ListModel
result
ListModel
result' <- ((ManagedPtr ListModel -> ListModel)
-> Ptr ListModel -> IO ListModel
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr ListModel -> ListModel
Gio.ListModel.ListModel) Ptr ListModel
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
ListModel -> IO ListModel
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ListModel
result'
#if defined(ENABLE_OVERLOADING)
data FileChooserGetFiltersMethodInfo
instance (signature ~ (m Gio.ListModel.ListModel), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserGetFiltersMethodInfo a signature where
overloadedMethod = fileChooserGetFilters
instance O.OverloadedMethodInfo FileChooserGetFiltersMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserGetFilters",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserGetFilters"
})
#endif
foreign import ccall "gtk_file_chooser_get_select_multiple" gtk_file_chooser_get_select_multiple ::
Ptr FileChooser ->
IO CInt
{-# DEPRECATED fileChooserGetSelectMultiple ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserGetSelectMultiple ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> m Bool
fileChooserGetSelectMultiple :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> m Bool
fileChooserGetSelectMultiple a
chooser = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
CInt
result <- Ptr FileChooser -> IO CInt
gtk_file_chooser_get_select_multiple Ptr FileChooser
chooser'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data FileChooserGetSelectMultipleMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserGetSelectMultipleMethodInfo a signature where
overloadedMethod = fileChooserGetSelectMultiple
instance O.OverloadedMethodInfo FileChooserGetSelectMultipleMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserGetSelectMultiple",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserGetSelectMultiple"
})
#endif
foreign import ccall "gtk_file_chooser_get_shortcut_folders" gtk_file_chooser_get_shortcut_folders ::
Ptr FileChooser ->
IO (Ptr Gio.ListModel.ListModel)
{-# DEPRECATED fileChooserGetShortcutFolders ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserGetShortcutFolders ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> m Gio.ListModel.ListModel
fileChooserGetShortcutFolders :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> m ListModel
fileChooserGetShortcutFolders a
chooser = IO ListModel -> m ListModel
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO ListModel -> m ListModel) -> IO ListModel -> m ListModel
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr ListModel
result <- Ptr FileChooser -> IO (Ptr ListModel)
gtk_file_chooser_get_shortcut_folders Ptr FileChooser
chooser'
Text -> Ptr ListModel -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"fileChooserGetShortcutFolders" Ptr ListModel
result
ListModel
result' <- ((ManagedPtr ListModel -> ListModel)
-> Ptr ListModel -> IO ListModel
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr ListModel -> ListModel
Gio.ListModel.ListModel) Ptr ListModel
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
ListModel -> IO ListModel
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ListModel
result'
#if defined(ENABLE_OVERLOADING)
data FileChooserGetShortcutFoldersMethodInfo
instance (signature ~ (m Gio.ListModel.ListModel), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserGetShortcutFoldersMethodInfo a signature where
overloadedMethod = fileChooserGetShortcutFolders
instance O.OverloadedMethodInfo FileChooserGetShortcutFoldersMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserGetShortcutFolders",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserGetShortcutFolders"
})
#endif
foreign import ccall "gtk_file_chooser_remove_choice" gtk_file_chooser_remove_choice ::
Ptr FileChooser ->
CString ->
IO ()
{-# DEPRECATED fileChooserRemoveChoice ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserRemoveChoice ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> T.Text
-> m ()
fileChooserRemoveChoice :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> Text -> m ()
fileChooserRemoveChoice a
chooser Text
id = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
CString
id' <- Text -> IO CString
textToCString Text
id
Ptr FileChooser -> CString -> IO ()
gtk_file_chooser_remove_choice Ptr FileChooser
chooser' CString
id'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
id'
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data FileChooserRemoveChoiceMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserRemoveChoiceMethodInfo a signature where
overloadedMethod = fileChooserRemoveChoice
instance O.OverloadedMethodInfo FileChooserRemoveChoiceMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserRemoveChoice",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserRemoveChoice"
})
#endif
foreign import ccall "gtk_file_chooser_remove_filter" gtk_file_chooser_remove_filter ::
Ptr FileChooser ->
Ptr Gtk.FileFilter.FileFilter ->
IO ()
{-# DEPRECATED fileChooserRemoveFilter ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserRemoveFilter ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a, Gtk.FileFilter.IsFileFilter b) =>
a
-> b
-> m ()
fileChooserRemoveFilter :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsFileChooser a, IsFileFilter b) =>
a -> b -> m ()
fileChooserRemoveFilter a
chooser b
filter = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr FileFilter
filter' <- b -> IO (Ptr FileFilter)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
filter
Ptr FileChooser -> Ptr FileFilter -> IO ()
gtk_file_chooser_remove_filter Ptr FileChooser
chooser' Ptr FileFilter
filter'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
filter
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data FileChooserRemoveFilterMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsFileChooser a, Gtk.FileFilter.IsFileFilter b) => O.OverloadedMethod FileChooserRemoveFilterMethodInfo a signature where
overloadedMethod = fileChooserRemoveFilter
instance O.OverloadedMethodInfo FileChooserRemoveFilterMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserRemoveFilter",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserRemoveFilter"
})
#endif
foreign import ccall "gtk_file_chooser_remove_shortcut_folder" gtk_file_chooser_remove_shortcut_folder ::
Ptr FileChooser ->
Ptr Gio.File.File ->
Ptr (Ptr GError) ->
IO CInt
{-# DEPRECATED fileChooserRemoveShortcutFolder ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserRemoveShortcutFolder ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a, Gio.File.IsFile b) =>
a
-> b
-> m ()
fileChooserRemoveShortcutFolder :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsFileChooser a, IsFile b) =>
a -> b -> m ()
fileChooserRemoveShortcutFolder a
chooser b
folder = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr File
folder' <- b -> IO (Ptr File)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
folder
IO () -> IO () -> IO ()
forall a b. IO a -> IO b -> IO a
onException (do
CInt
_ <- (Ptr (Ptr GError) -> IO CInt) -> IO CInt
forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError ((Ptr (Ptr GError) -> IO CInt) -> IO CInt)
-> (Ptr (Ptr GError) -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ Ptr FileChooser -> Ptr File -> Ptr (Ptr GError) -> IO CInt
gtk_file_chooser_remove_shortcut_folder Ptr FileChooser
chooser' Ptr File
folder'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
folder
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
) (do
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
data FileChooserRemoveShortcutFolderMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsFileChooser a, Gio.File.IsFile b) => O.OverloadedMethod FileChooserRemoveShortcutFolderMethodInfo a signature where
overloadedMethod = fileChooserRemoveShortcutFolder
instance O.OverloadedMethodInfo FileChooserRemoveShortcutFolderMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserRemoveShortcutFolder",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserRemoveShortcutFolder"
})
#endif
foreign import ccall "gtk_file_chooser_set_action" gtk_file_chooser_set_action ::
Ptr FileChooser ->
CUInt ->
IO ()
{-# DEPRECATED fileChooserSetAction ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserSetAction ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> Gtk.Enums.FileChooserAction
-> m ()
fileChooserSetAction :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> FileChooserAction -> m ()
fileChooserSetAction a
chooser FileChooserAction
action = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
let action' :: CUInt
action' = (Int -> CUInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CUInt)
-> (FileChooserAction -> Int) -> FileChooserAction -> CUInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. FileChooserAction -> Int
forall a. Enum a => a -> Int
fromEnum) FileChooserAction
action
Ptr FileChooser -> CUInt -> IO ()
gtk_file_chooser_set_action Ptr FileChooser
chooser' CUInt
action'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data FileChooserSetActionMethodInfo
instance (signature ~ (Gtk.Enums.FileChooserAction -> m ()), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserSetActionMethodInfo a signature where
overloadedMethod = fileChooserSetAction
instance O.OverloadedMethodInfo FileChooserSetActionMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserSetAction",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserSetAction"
})
#endif
foreign import ccall "gtk_file_chooser_set_choice" gtk_file_chooser_set_choice ::
Ptr FileChooser ->
CString ->
CString ->
IO ()
{-# DEPRECATED fileChooserSetChoice ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserSetChoice ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> T.Text
-> T.Text
-> m ()
fileChooserSetChoice :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> Text -> Text -> m ()
fileChooserSetChoice a
chooser Text
id Text
option = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
CString
id' <- Text -> IO CString
textToCString Text
id
CString
option' <- Text -> IO CString
textToCString Text
option
Ptr FileChooser -> CString -> CString -> IO ()
gtk_file_chooser_set_choice Ptr FileChooser
chooser' CString
id' CString
option'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
id'
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
option'
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data FileChooserSetChoiceMethodInfo
instance (signature ~ (T.Text -> T.Text -> m ()), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserSetChoiceMethodInfo a signature where
overloadedMethod = fileChooserSetChoice
instance O.OverloadedMethodInfo FileChooserSetChoiceMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserSetChoice",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserSetChoice"
})
#endif
foreign import ccall "gtk_file_chooser_set_create_folders" gtk_file_chooser_set_create_folders ::
Ptr FileChooser ->
CInt ->
IO ()
{-# DEPRECATED fileChooserSetCreateFolders ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserSetCreateFolders ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> Bool
-> m ()
fileChooserSetCreateFolders :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> Bool -> m ()
fileChooserSetCreateFolders a
chooser Bool
createFolders = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
let createFolders' :: CInt
createFolders' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
P.fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
P.fromEnum) Bool
createFolders
Ptr FileChooser -> CInt -> IO ()
gtk_file_chooser_set_create_folders Ptr FileChooser
chooser' CInt
createFolders'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data FileChooserSetCreateFoldersMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserSetCreateFoldersMethodInfo a signature where
overloadedMethod = fileChooserSetCreateFolders
instance O.OverloadedMethodInfo FileChooserSetCreateFoldersMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserSetCreateFolders",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserSetCreateFolders"
})
#endif
foreign import ccall "gtk_file_chooser_set_current_folder" gtk_file_chooser_set_current_folder ::
Ptr FileChooser ->
Ptr Gio.File.File ->
Ptr (Ptr GError) ->
IO CInt
{-# DEPRECATED fileChooserSetCurrentFolder ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserSetCurrentFolder ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a, Gio.File.IsFile b) =>
a
-> Maybe (b)
-> m ()
fileChooserSetCurrentFolder :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsFileChooser a, IsFile b) =>
a -> Maybe b -> m ()
fileChooserSetCurrentFolder a
chooser Maybe b
file = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr File
maybeFile <- case Maybe b
file of
Maybe b
Nothing -> Ptr File -> IO (Ptr File)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr File
forall a. Ptr a
nullPtr
Just b
jFile -> do
Ptr File
jFile' <- b -> IO (Ptr File)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jFile
Ptr File -> IO (Ptr File)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr File
jFile'
IO () -> IO () -> IO ()
forall a b. IO a -> IO b -> IO a
onException (do
CInt
_ <- (Ptr (Ptr GError) -> IO CInt) -> IO CInt
forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError ((Ptr (Ptr GError) -> IO CInt) -> IO CInt)
-> (Ptr (Ptr GError) -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ Ptr FileChooser -> Ptr File -> Ptr (Ptr GError) -> IO CInt
gtk_file_chooser_set_current_folder Ptr FileChooser
chooser' Ptr File
maybeFile
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
Maybe b -> (b -> IO ()) -> IO ()
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
file b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
) (do
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
data FileChooserSetCurrentFolderMethodInfo
instance (signature ~ (Maybe (b) -> m ()), MonadIO m, IsFileChooser a, Gio.File.IsFile b) => O.OverloadedMethod FileChooserSetCurrentFolderMethodInfo a signature where
overloadedMethod = fileChooserSetCurrentFolder
instance O.OverloadedMethodInfo FileChooserSetCurrentFolderMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserSetCurrentFolder",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserSetCurrentFolder"
})
#endif
foreign import ccall "gtk_file_chooser_set_current_name" gtk_file_chooser_set_current_name ::
Ptr FileChooser ->
CString ->
IO ()
{-# DEPRECATED fileChooserSetCurrentName ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserSetCurrentName ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> T.Text
-> m ()
fileChooserSetCurrentName :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> Text -> m ()
fileChooserSetCurrentName a
chooser Text
name = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
CString
name' <- Text -> IO CString
textToCString Text
name
Ptr FileChooser -> CString -> IO ()
gtk_file_chooser_set_current_name Ptr FileChooser
chooser' CString
name'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
name'
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data FileChooserSetCurrentNameMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserSetCurrentNameMethodInfo a signature where
overloadedMethod = fileChooserSetCurrentName
instance O.OverloadedMethodInfo FileChooserSetCurrentNameMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserSetCurrentName",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserSetCurrentName"
})
#endif
foreign import ccall "gtk_file_chooser_set_file" gtk_file_chooser_set_file ::
Ptr FileChooser ->
Ptr Gio.File.File ->
Ptr (Ptr GError) ->
IO CInt
{-# DEPRECATED fileChooserSetFile ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserSetFile ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a, Gio.File.IsFile b) =>
a
-> b
-> m ()
fileChooserSetFile :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsFileChooser a, IsFile b) =>
a -> b -> m ()
fileChooserSetFile a
chooser b
file = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr File
file' <- b -> IO (Ptr File)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
file
IO () -> IO () -> IO ()
forall a b. IO a -> IO b -> IO a
onException (do
CInt
_ <- (Ptr (Ptr GError) -> IO CInt) -> IO CInt
forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError ((Ptr (Ptr GError) -> IO CInt) -> IO CInt)
-> (Ptr (Ptr GError) -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ Ptr FileChooser -> Ptr File -> Ptr (Ptr GError) -> IO CInt
gtk_file_chooser_set_file Ptr FileChooser
chooser' Ptr File
file'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
file
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
) (do
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
data FileChooserSetFileMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsFileChooser a, Gio.File.IsFile b) => O.OverloadedMethod FileChooserSetFileMethodInfo a signature where
overloadedMethod = fileChooserSetFile
instance O.OverloadedMethodInfo FileChooserSetFileMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserSetFile",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserSetFile"
})
#endif
foreign import ccall "gtk_file_chooser_set_filter" gtk_file_chooser_set_filter ::
Ptr FileChooser ->
Ptr Gtk.FileFilter.FileFilter ->
IO ()
{-# DEPRECATED fileChooserSetFilter ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserSetFilter ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a, Gtk.FileFilter.IsFileFilter b) =>
a
-> b
-> m ()
fileChooserSetFilter :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsFileChooser a, IsFileFilter b) =>
a -> b -> m ()
fileChooserSetFilter a
chooser b
filter = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr FileFilter
filter' <- b -> IO (Ptr FileFilter)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
filter
Ptr FileChooser -> Ptr FileFilter -> IO ()
gtk_file_chooser_set_filter Ptr FileChooser
chooser' Ptr FileFilter
filter'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
filter
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data FileChooserSetFilterMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsFileChooser a, Gtk.FileFilter.IsFileFilter b) => O.OverloadedMethod FileChooserSetFilterMethodInfo a signature where
overloadedMethod = fileChooserSetFilter
instance O.OverloadedMethodInfo FileChooserSetFilterMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserSetFilter",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserSetFilter"
})
#endif
foreign import ccall "gtk_file_chooser_set_select_multiple" gtk_file_chooser_set_select_multiple ::
Ptr FileChooser ->
CInt ->
IO ()
{-# DEPRECATED fileChooserSetSelectMultiple ["(Since version 4.10)","Use t'GI.Gtk.Objects.FileDialog.FileDialog' instead"] #-}
fileChooserSetSelectMultiple ::
(B.CallStack.HasCallStack, MonadIO m, IsFileChooser a) =>
a
-> Bool
-> m ()
fileChooserSetSelectMultiple :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsFileChooser a) =>
a -> Bool -> m ()
fileChooserSetSelectMultiple a
chooser Bool
selectMultiple = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FileChooser
chooser' <- a -> IO (Ptr FileChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
let selectMultiple' :: CInt
selectMultiple' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
P.fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
P.fromEnum) Bool
selectMultiple
Ptr FileChooser -> CInt -> IO ()
gtk_file_chooser_set_select_multiple Ptr FileChooser
chooser' CInt
selectMultiple'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data FileChooserSetSelectMultipleMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsFileChooser a) => O.OverloadedMethod FileChooserSetSelectMultipleMethodInfo a signature where
overloadedMethod = fileChooserSetSelectMultiple
instance O.OverloadedMethodInfo FileChooserSetSelectMultipleMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gtk.Interfaces.FileChooser.fileChooserSetSelectMultiple",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtk-4.0.8/docs/GI-Gtk-Interfaces-FileChooser.html#v:fileChooserSetSelectMultiple"
})
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList FileChooser = FileChooserSignalList
type FileChooserSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, DK.Type)])
#endif