gi-webkit-0.2.4.13: GI/WebKit/Objects/FileChooserRequest.hs
{- |
Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License : LGPL-2.1
Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
-}
module GI.WebKit.Objects.FileChooserRequest
(
-- * Exported types
FileChooserRequest(..) ,
FileChooserRequestK ,
toFileChooserRequest ,
noFileChooserRequest ,
-- * Methods
-- ** fileChooserRequestGetMimeTypes
FileChooserRequestGetMimeTypesMethodInfo,
fileChooserRequestGetMimeTypes ,
-- ** fileChooserRequestGetMimeTypesFilter
FileChooserRequestGetMimeTypesFilterMethodInfo,
fileChooserRequestGetMimeTypesFilter ,
-- ** fileChooserRequestGetSelectMultiple
FileChooserRequestGetSelectMultipleMethodInfo,
fileChooserRequestGetSelectMultiple ,
-- ** fileChooserRequestGetSelectedFiles
FileChooserRequestGetSelectedFilesMethodInfo,
fileChooserRequestGetSelectedFiles ,
-- ** fileChooserRequestSelectFiles
FileChooserRequestSelectFilesMethodInfo ,
fileChooserRequestSelectFiles ,
-- * Properties
-- ** Filter
FileChooserRequestFilterPropertyInfo ,
getFileChooserRequestFilter ,
-- ** MimeTypes
FileChooserRequestMimeTypesPropertyInfo ,
getFileChooserRequestMimeTypes ,
-- ** SelectMultiple
FileChooserRequestSelectMultiplePropertyInfo,
getFileChooserRequestSelectMultiple ,
-- ** SelectedFiles
FileChooserRequestSelectedFilesPropertyInfo,
getFileChooserRequestSelectedFiles ,
) where
import Prelude ()
import Data.GI.Base.ShortPrelude
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import GI.WebKit.Types
import GI.WebKit.Callbacks
import qualified GI.GObject as GObject
import qualified GI.Gtk as Gtk
newtype FileChooserRequest = FileChooserRequest (ForeignPtr FileChooserRequest)
foreign import ccall "webkit_file_chooser_request_get_type"
c_webkit_file_chooser_request_get_type :: IO GType
type instance ParentTypes FileChooserRequest = FileChooserRequestParentTypes
type FileChooserRequestParentTypes = '[GObject.Object]
instance GObject FileChooserRequest where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_webkit_file_chooser_request_get_type
class GObject o => FileChooserRequestK o
instance (GObject o, IsDescendantOf FileChooserRequest o) => FileChooserRequestK o
toFileChooserRequest :: FileChooserRequestK o => o -> IO FileChooserRequest
toFileChooserRequest = unsafeCastTo FileChooserRequest
noFileChooserRequest :: Maybe FileChooserRequest
noFileChooserRequest = Nothing
type family ResolveFileChooserRequestMethod (t :: Symbol) (o :: *) :: * where
ResolveFileChooserRequestMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
ResolveFileChooserRequestMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
ResolveFileChooserRequestMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
ResolveFileChooserRequestMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
ResolveFileChooserRequestMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
ResolveFileChooserRequestMethod "notify" o = GObject.ObjectNotifyMethodInfo
ResolveFileChooserRequestMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
ResolveFileChooserRequestMethod "ref" o = GObject.ObjectRefMethodInfo
ResolveFileChooserRequestMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
ResolveFileChooserRequestMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
ResolveFileChooserRequestMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
ResolveFileChooserRequestMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
ResolveFileChooserRequestMethod "selectFiles" o = FileChooserRequestSelectFilesMethodInfo
ResolveFileChooserRequestMethod "stealData" o = GObject.ObjectStealDataMethodInfo
ResolveFileChooserRequestMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
ResolveFileChooserRequestMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
ResolveFileChooserRequestMethod "unref" o = GObject.ObjectUnrefMethodInfo
ResolveFileChooserRequestMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
ResolveFileChooserRequestMethod "getData" o = GObject.ObjectGetDataMethodInfo
ResolveFileChooserRequestMethod "getMimeTypes" o = FileChooserRequestGetMimeTypesMethodInfo
ResolveFileChooserRequestMethod "getMimeTypesFilter" o = FileChooserRequestGetMimeTypesFilterMethodInfo
ResolveFileChooserRequestMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
ResolveFileChooserRequestMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
ResolveFileChooserRequestMethod "getSelectMultiple" o = FileChooserRequestGetSelectMultipleMethodInfo
ResolveFileChooserRequestMethod "getSelectedFiles" o = FileChooserRequestGetSelectedFilesMethodInfo
ResolveFileChooserRequestMethod "setData" o = GObject.ObjectSetDataMethodInfo
ResolveFileChooserRequestMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
ResolveFileChooserRequestMethod l o = MethodResolutionFailed l o
instance (info ~ ResolveFileChooserRequestMethod t FileChooserRequest, MethodInfo info FileChooserRequest p) => IsLabelProxy t (FileChooserRequest -> p) where
fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveFileChooserRequestMethod t FileChooserRequest, MethodInfo info FileChooserRequest p) => IsLabel t (FileChooserRequest -> p) where
fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
#endif
-- VVV Prop "filter"
-- Type: TInterface "Gtk" "FileFilter"
-- Flags: [PropertyReadable]
getFileChooserRequestFilter :: (MonadIO m, FileChooserRequestK o) => o -> m Gtk.FileFilter
getFileChooserRequestFilter obj = liftIO $ getObjectPropertyObject obj "filter" Gtk.FileFilter
data FileChooserRequestFilterPropertyInfo
instance AttrInfo FileChooserRequestFilterPropertyInfo where
type AttrAllowedOps FileChooserRequestFilterPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint FileChooserRequestFilterPropertyInfo = (~) ()
type AttrBaseTypeConstraint FileChooserRequestFilterPropertyInfo = FileChooserRequestK
type AttrGetType FileChooserRequestFilterPropertyInfo = Gtk.FileFilter
type AttrLabel FileChooserRequestFilterPropertyInfo = "filter"
attrGet _ = getFileChooserRequestFilter
attrSet _ = undefined
attrConstruct _ = undefined
-- VVV Prop "mime-types"
-- Type: TCArray True (-1) (-1) (TBasicType TUTF8)
-- Flags: [PropertyReadable]
getFileChooserRequestMimeTypes :: (MonadIO m, FileChooserRequestK o) => o -> m [T.Text]
getFileChooserRequestMimeTypes obj = liftIO $ getObjectPropertyStringArray obj "mime-types"
data FileChooserRequestMimeTypesPropertyInfo
instance AttrInfo FileChooserRequestMimeTypesPropertyInfo where
type AttrAllowedOps FileChooserRequestMimeTypesPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint FileChooserRequestMimeTypesPropertyInfo = (~) ()
type AttrBaseTypeConstraint FileChooserRequestMimeTypesPropertyInfo = FileChooserRequestK
type AttrGetType FileChooserRequestMimeTypesPropertyInfo = [T.Text]
type AttrLabel FileChooserRequestMimeTypesPropertyInfo = "mime-types"
attrGet _ = getFileChooserRequestMimeTypes
attrSet _ = undefined
attrConstruct _ = undefined
-- VVV Prop "select-multiple"
-- Type: TBasicType TBoolean
-- Flags: [PropertyReadable]
getFileChooserRequestSelectMultiple :: (MonadIO m, FileChooserRequestK o) => o -> m Bool
getFileChooserRequestSelectMultiple obj = liftIO $ getObjectPropertyBool obj "select-multiple"
data FileChooserRequestSelectMultiplePropertyInfo
instance AttrInfo FileChooserRequestSelectMultiplePropertyInfo where
type AttrAllowedOps FileChooserRequestSelectMultiplePropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint FileChooserRequestSelectMultiplePropertyInfo = (~) ()
type AttrBaseTypeConstraint FileChooserRequestSelectMultiplePropertyInfo = FileChooserRequestK
type AttrGetType FileChooserRequestSelectMultiplePropertyInfo = Bool
type AttrLabel FileChooserRequestSelectMultiplePropertyInfo = "select-multiple"
attrGet _ = getFileChooserRequestSelectMultiple
attrSet _ = undefined
attrConstruct _ = undefined
-- VVV Prop "selected-files"
-- Type: TCArray True (-1) (-1) (TBasicType TUTF8)
-- Flags: [PropertyReadable]
getFileChooserRequestSelectedFiles :: (MonadIO m, FileChooserRequestK o) => o -> m [T.Text]
getFileChooserRequestSelectedFiles obj = liftIO $ getObjectPropertyStringArray obj "selected-files"
data FileChooserRequestSelectedFilesPropertyInfo
instance AttrInfo FileChooserRequestSelectedFilesPropertyInfo where
type AttrAllowedOps FileChooserRequestSelectedFilesPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint FileChooserRequestSelectedFilesPropertyInfo = (~) ()
type AttrBaseTypeConstraint FileChooserRequestSelectedFilesPropertyInfo = FileChooserRequestK
type AttrGetType FileChooserRequestSelectedFilesPropertyInfo = [T.Text]
type AttrLabel FileChooserRequestSelectedFilesPropertyInfo = "selected-files"
attrGet _ = getFileChooserRequestSelectedFiles
attrSet _ = undefined
attrConstruct _ = undefined
type instance AttributeList FileChooserRequest = FileChooserRequestAttributeList
type FileChooserRequestAttributeList = ('[ '("filter", FileChooserRequestFilterPropertyInfo), '("mimeTypes", FileChooserRequestMimeTypesPropertyInfo), '("selectMultiple", FileChooserRequestSelectMultiplePropertyInfo), '("selectedFiles", FileChooserRequestSelectedFilesPropertyInfo)] :: [(Symbol, *)])
type instance SignalList FileChooserRequest = FileChooserRequestSignalList
type FileChooserRequestSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
-- method FileChooserRequest::get_mime_types
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "WebKit" "FileChooserRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TCArray True (-1) (-1) (TBasicType TUTF8)
-- throws : False
-- Skip return : False
foreign import ccall "webkit_file_chooser_request_get_mime_types" webkit_file_chooser_request_get_mime_types ::
Ptr FileChooserRequest -> -- _obj : TInterface "WebKit" "FileChooserRequest"
IO (Ptr CString)
fileChooserRequestGetMimeTypes ::
(MonadIO m, FileChooserRequestK a) =>
a -- _obj
-> m [T.Text] -- result
fileChooserRequestGetMimeTypes _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- webkit_file_chooser_request_get_mime_types _obj'
checkUnexpectedReturnNULL "webkit_file_chooser_request_get_mime_types" result
result' <- unpackZeroTerminatedUTF8CArray result
touchManagedPtr _obj
return result'
data FileChooserRequestGetMimeTypesMethodInfo
instance (signature ~ (m [T.Text]), MonadIO m, FileChooserRequestK a) => MethodInfo FileChooserRequestGetMimeTypesMethodInfo a signature where
overloadedMethod _ = fileChooserRequestGetMimeTypes
-- method FileChooserRequest::get_mime_types_filter
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "WebKit" "FileChooserRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TInterface "Gtk" "FileFilter"
-- throws : False
-- Skip return : False
foreign import ccall "webkit_file_chooser_request_get_mime_types_filter" webkit_file_chooser_request_get_mime_types_filter ::
Ptr FileChooserRequest -> -- _obj : TInterface "WebKit" "FileChooserRequest"
IO (Ptr Gtk.FileFilter)
fileChooserRequestGetMimeTypesFilter ::
(MonadIO m, FileChooserRequestK a) =>
a -- _obj
-> m Gtk.FileFilter -- result
fileChooserRequestGetMimeTypesFilter _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- webkit_file_chooser_request_get_mime_types_filter _obj'
checkUnexpectedReturnNULL "webkit_file_chooser_request_get_mime_types_filter" result
result' <- (newObject Gtk.FileFilter) result
touchManagedPtr _obj
return result'
data FileChooserRequestGetMimeTypesFilterMethodInfo
instance (signature ~ (m Gtk.FileFilter), MonadIO m, FileChooserRequestK a) => MethodInfo FileChooserRequestGetMimeTypesFilterMethodInfo a signature where
overloadedMethod _ = fileChooserRequestGetMimeTypesFilter
-- method FileChooserRequest::get_select_multiple
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "WebKit" "FileChooserRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "webkit_file_chooser_request_get_select_multiple" webkit_file_chooser_request_get_select_multiple ::
Ptr FileChooserRequest -> -- _obj : TInterface "WebKit" "FileChooserRequest"
IO CInt
fileChooserRequestGetSelectMultiple ::
(MonadIO m, FileChooserRequestK a) =>
a -- _obj
-> m Bool -- result
fileChooserRequestGetSelectMultiple _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- webkit_file_chooser_request_get_select_multiple _obj'
let result' = (/= 0) result
touchManagedPtr _obj
return result'
data FileChooserRequestGetSelectMultipleMethodInfo
instance (signature ~ (m Bool), MonadIO m, FileChooserRequestK a) => MethodInfo FileChooserRequestGetSelectMultipleMethodInfo a signature where
overloadedMethod _ = fileChooserRequestGetSelectMultiple
-- method FileChooserRequest::get_selected_files
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "WebKit" "FileChooserRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TCArray True (-1) (-1) (TBasicType TUTF8)
-- throws : False
-- Skip return : False
foreign import ccall "webkit_file_chooser_request_get_selected_files" webkit_file_chooser_request_get_selected_files ::
Ptr FileChooserRequest -> -- _obj : TInterface "WebKit" "FileChooserRequest"
IO (Ptr CString)
fileChooserRequestGetSelectedFiles ::
(MonadIO m, FileChooserRequestK a) =>
a -- _obj
-> m [T.Text] -- result
fileChooserRequestGetSelectedFiles _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- webkit_file_chooser_request_get_selected_files _obj'
checkUnexpectedReturnNULL "webkit_file_chooser_request_get_selected_files" result
result' <- unpackZeroTerminatedUTF8CArray result
touchManagedPtr _obj
return result'
data FileChooserRequestGetSelectedFilesMethodInfo
instance (signature ~ (m [T.Text]), MonadIO m, FileChooserRequestK a) => MethodInfo FileChooserRequestGetSelectedFilesMethodInfo a signature where
overloadedMethod _ = fileChooserRequestGetSelectedFiles
-- method FileChooserRequest::select_files
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "WebKit" "FileChooserRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "files", argType = TCArray True (-1) (-1) (TBasicType TUTF8), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "webkit_file_chooser_request_select_files" webkit_file_chooser_request_select_files ::
Ptr FileChooserRequest -> -- _obj : TInterface "WebKit" "FileChooserRequest"
Ptr CString -> -- files : TCArray True (-1) (-1) (TBasicType TUTF8)
IO ()
fileChooserRequestSelectFiles ::
(MonadIO m, FileChooserRequestK a) =>
a -- _obj
-> [T.Text] -- files
-> m () -- result
fileChooserRequestSelectFiles _obj files = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
files' <- packZeroTerminatedUTF8CArray files
webkit_file_chooser_request_select_files _obj' files'
touchManagedPtr _obj
mapZeroTerminatedCArray freeMem files'
freeMem files'
return ()
data FileChooserRequestSelectFilesMethodInfo
instance (signature ~ ([T.Text] -> m ()), MonadIO m, FileChooserRequestK a) => MethodInfo FileChooserRequestSelectFilesMethodInfo a signature where
overloadedMethod _ = fileChooserRequestSelectFiles