Portability | portable (depends on GHC) |
---|---|
Stability | alpha |
Maintainer | gtk2hs-devel@lists.sourceforge.net |
System.GIO.File.FileInfo
Description
- newtype FileInfo = FileInfo (ForeignPtr FileInfo)
- class GObjectClass o => FileInfoClass o
- data FileAttributeStatus
- fileInfoNew :: IO FileInfo
- fileInfoDup :: FileInfoClass info => info -> IO FileInfo
- fileInfoCopyInto :: (FileInfoClass srcInfo, FileInfoClass destInfo) => srcInfo -> destInfo -> IO ()
- fileInfoHasAttribute :: FileInfoClass info => info -> String -> Bool
- fileInfoHasNamespace :: FileInfoClass info => info -> String -> Bool
- fileInfoListAttributes :: FileInfoClass info => info -> String -> IO [String]
- fileInfoGetAttributeType :: FileInfoClass info => info -> String -> IO FileAttributeType
- fileInfoRemoveAttribute :: FileInfoClass info => info -> String -> IO ()
- fileInfoGetAttributeAsString :: FileInfoClass info => info -> String -> IO String
- fileInfoGetAttributeStatus :: FileInfoClass info => info -> String -> IO FileAttributeStatus
- fileInfoGetAttributeString :: FileInfoClass info => info -> String -> IO String
- fileInfoGetAttributeStringList :: FileInfoClass info => info -> String -> IO [String]
- fileInfoGetAttributeByteString :: FileInfoClass info => info -> String -> IO ByteString
- fileInfoGetAttributeBool :: FileInfoClass info => info -> String -> IO Bool
- fileInfoGetAttributeWord32 :: FileInfoClass info => info -> String -> IO Word32
- fileInfoGetAttributeInt32 :: FileInfoClass info => info -> String -> IO Int32
- fileInfoGetAttributeWord64 :: FileInfoClass info => info -> String -> IO Word64
- fileInfoGetAttributeInt64 :: FileInfoClass info => info -> String -> IO Int64
- fileInfoGetAttributeObject :: FileInfoClass info => info -> String -> IO (Maybe GObject)
- fileInfoSetAttributeStatus :: FileInfoClass info => info -> String -> FileAttributeStatus -> IO Bool
- fileInfoSetAttributeString :: FileInfoClass info => info -> String -> String -> IO ()
- fileInfoSetAttributeStringList :: FileInfoClass info => info -> String -> [String] -> IO ()
- fileInfoSetAttributeByteString :: FileInfoClass info => info -> String -> ByteString -> IO ()
- fileInfoSetAttributeBool :: FileInfoClass info => info -> String -> Bool -> IO ()
- fileInfoSetAttributeWord32 :: FileInfoClass info => info -> String -> Word32 -> IO ()
- fileInfoSetAttributeInt32 :: FileInfoClass info => info -> String -> Int32 -> IO ()
- fileInfoSetAttributeWord64 :: FileInfoClass info => info -> String -> Word64 -> IO ()
- fileInfoSetAttributeInt64 :: FileInfoClass info => info -> String -> Int64 -> IO ()
- fileInfoSetAttributeObject :: FileInfoClass info => info -> String -> GObject -> IO ()
- fileInfoClearStatus :: FileInfoClass info => info -> IO ()
- fileInfoGetFileType :: FileInfoClass info => info -> FileType
- fileInfoGetIsHidden :: FileInfoClass info => info -> Bool
- fileInfoGetIsBackup :: FileInfoClass info => info -> Bool
- fileInfoGetIsSymlink :: FileInfoClass info => info -> Bool
- fileInfoGetName :: FileInfoClass info => info -> Maybe ByteString
- fileInfoGetDisplayName :: FileInfoClass info => info -> Maybe String
- fileInfoGetEditName :: FileInfoClass info => info -> Maybe String
- fileInfoGetIcon :: FileInfoClass info => info -> IO Icon
- fileInfoGetContentType :: FileInfoClass info => info -> Maybe String
- fileInfoGetModificationTime :: FileInfoClass info => info -> GTimeVal
- fileInfoGetSize :: FileInfoClass info => info -> Int64
- fileInfoGetSymlinkTarget :: FileInfoClass info => info -> Maybe String
- fileInfoGetEtag :: FileInfoClass info => info -> Maybe String
- fileInfoGetSortOrder :: FileInfoClass info => info -> Int
- fileInfoUnsetAttributeMask :: FileInfoClass info => info -> IO ()
- fileInfoSetFileType :: FileInfoClass info => info -> FileType -> IO ()
- fileInfoSetIsHidden :: FileInfoClass info => info -> Bool -> IO ()
- fileInfoSetIsSymlink :: FileInfoClass info => info -> Bool -> IO ()
- fileInfoSetName :: FileInfoClass info => info -> ByteString -> IO ()
- fileInfoSetDisplayName :: FileInfoClass info => info -> String -> IO ()
- fileInfoSetEditName :: FileInfoClass info => info -> String -> IO ()
- fileInfoSetIcon :: FileInfoClass info => info -> Icon -> IO ()
- fileInfoSetContentType :: FileInfoClass info => info -> String -> IO ()
- fileInfoSetModificationTime :: FileInfoClass info => info -> GTimeVal -> IO ()
- fileInfoSetSize :: FileInfoClass info => info -> Int64 -> IO ()
- fileInfoSetSortOrder :: FileInfoClass info => info -> Int -> IO ()
Details
Functionality for manipulating basic metadata for files. FileInfo
implements methods for getting
information that all files should contain, and allows for manipulation of extended attributes.
See FileAttribute
for more information on how GIO handles file attributes.
To obtain a FileInfo
for a File
, use fileQueryInfo
. To obtain a
FileInfo
for a file input or output stream, use fileInputStreamQueryInfo
or
fileOutputStreamQueryInfo
.
To change the actual attributes of a file, you should then set the attribute in the FileInfo
and
call fileSetAttributesFromInfo
on a File
.
However, not all attributes can be changed in the file. For instance, the actual size of a file
cannot be changed via fileInfoSetSize
and
fileQueryWritableNamespaces
to discover the settable attributes of a particular file at
runtime.
FileAttributeMatcher
allows for searching through a FileInfo
for attributes.
Types
Constructors
FileInfo (ForeignPtr FileInfo) |
Instances
class GObjectClass o => FileInfoClass o Source
Enums,
data FileAttributeStatus Source
Used by fileSetAttributesFromInfo
when setting file attributes.
Methods
fileInfoNew :: IO FileInfoSource
Creates a new file info structure.
fileInfoDup :: FileInfoClass info => info -> IO FileInfoSource
Duplicates a file info structure.
Arguments
:: (FileInfoClass srcInfo, FileInfoClass destInfo) | |
=> srcInfo |
|
-> destInfo |
|
-> IO () |
Copies all of the FileAttributes
from srcInfo
to destInfo
.
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> Bool | returns |
Checks if a file info structure has an attribute named attribute.
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> Bool | returns |
Checks if a file info structure has an attribute in the specified nameSpace
.
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO [String] | returns a array of strings of all of the possible attribute types for the given |
Lists the file info structure's attributes.
fileInfoGetAttributeTypeSource
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO FileAttributeType | returns a |
Gets the attribute type for an attribute key.
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO () |
Removes all cases of attribute from info if it exists.
fileInfoGetAttributeAsStringSource
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO String | returns a UTF-8 string associated with the given attribute. |
Gets the value of a attribute, formated as a string. This escapes things as needed to make the string valid utf8.
fileInfoGetAttributeStatusSource
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO FileAttributeStatus | returns a |
Gets the attribute status for an attribute key.
fileInfoGetAttributeStringSource
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO String | returns the contents of the attribute value as a string |
Gets the value of a string attribute.
fileInfoGetAttributeStringListSource
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO [String] | returns the contents of the attribute value as a string list |
Gets the value of a stringv attribute. If the attribute does not contain a stringv
fileInfoGetAttributeByteStringSource
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO ByteString | returns the contents of the attribute value as a ByteString |
Gets the value of a byte string attribute.
fileInfoGetAttributeBoolSource
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO Bool | returns the contents of the attribute value as a bool |
Gets the value of a boolean attribute.
fileInfoGetAttributeWord32Source
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO Word32 | returns the contents of the attribute value as a bool |
Gets an Word32 contained within the attribute.
fileInfoGetAttributeInt32Source
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO Int32 | returns the contents of the attribute value as a bool |
Gets an Int32 contained within the attribute.
fileInfoGetAttributeWord64Source
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO Word64 | returns the contents of the attribute value as a bool |
Gets an Word64 contained within the attribute.
fileInfoGetAttributeInt64Source
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO Int64 | returns the contents of the attribute value as a bool |
Gets an Int64 contained within the attribute.
fileInfoGetAttributeObjectSource
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO (Maybe GObject) | returns the contents of the attribute value as a object |
Gets the value of a GObject attribute.
fileInfoSetAttributeStatusSource
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> FileAttributeStatus |
|
-> IO Bool | returns |
Sets the attribute status for an attribute key. This is only needed by external code that implement
fileSetAttributesFromInfo
or similar functions.
The attribute must exist in info for this to work. Otherwise False
is returned and info is
unchanged.
fileInfoSetAttributeStringSource
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> String |
|
-> IO () |
Sets the attribute to contain the given attrValue
, if possible.
fileInfoSetAttributeStringListSource
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> [String] |
|
-> IO () |
Sets the attribute to contain the given attrValue
, if possible.
fileInfoSetAttributeByteStringSource
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> ByteString |
|
-> IO () |
Sets the attribute to contain the given attrValue
, if possible.
fileInfoSetAttributeBoolSource
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> Bool |
|
-> IO () |
Sets the attribute to contain the given attrValue
, if possible.
fileInfoSetAttributeWord32Source
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> Word32 |
|
-> IO () |
Sets the attribute to contain the given attrValue
, if possible.
fileInfoSetAttributeInt32Source
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> Int32 |
|
-> IO () |
Sets the attribute to contain the given attrValue
, if possible.
fileInfoSetAttributeWord64Source
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> Word64 |
|
-> IO () |
Sets the attribute to contain the given attrValue
, if possible.
fileInfoSetAttributeInt64Source
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> Int64 |
|
-> IO () |
Sets the attribute to contain the given attrValue
, if possible.
fileInfoSetAttributeObject :: FileInfoClass info => info -> String -> GObject -> IO ()Source
Sets the attribute to contain the given attrValue
, if possible.
fileInfoClearStatus :: FileInfoClass info => info -> IO ()Source
Clears the status information from info.
Arguments
:: FileInfoClass info | |
=> info | |
-> FileType | returns a |
Gets a file's type (whether it is a regular file, symlink, etc). This is different from the file's
content type, see fileInfoGetContentType
.
Arguments
:: FileInfoClass info | |
=> info | |
-> Bool |
Checks if a file is hidden.
Arguments
:: FileInfoClass info | |
=> info | |
-> Bool |
Checks if a file is a backup file.
Arguments
:: FileInfoClass info | |
=> info | |
-> Bool | returns |
Checks if a file is a symlink file.
Arguments
:: FileInfoClass info | |
=> info | |
-> Maybe ByteString | returns a string containing the file name. |
Gets the name for a file.
Arguments
:: FileInfoClass info | |
=> info | |
-> Maybe String | returns a string containing the display name. |
Gets the display name for a file.
Arguments
:: FileInfoClass info | |
=> info | |
-> Maybe String | returns a string containing the edit name. |
Gets the edit name for a file.
Arguments
:: FileInfoClass info | |
=> info | |
-> IO Icon | returns |
Gets the icon for a file.
Arguments
:: FileInfoClass info | |
=> info | |
-> Maybe String | returns a string containing the file's content type. |
Gets the file's content type.
fileInfoGetModificationTime :: FileInfoClass info => info -> GTimeValSource
Gets the modification time of the current info and sets it in result.
Arguments
:: FileInfoClass info | |
=> info | |
-> Int64 | returns a |
Gets the file's size.
fileInfoGetSymlinkTargetSource
Arguments
:: FileInfoClass info | |
=> info | |
-> Maybe String | returns a string containing the symlink target. |
Gets the symlink target for a given FileInfo
.
Arguments
:: FileInfoClass info | |
=> info | |
-> Maybe String | returns a string containing the value of the etag:value attribute. |
Gets the entity tag for a given FileInfo
. See FileAttributeEtagValue
.
Arguments
:: FileInfoClass info | |
=> info | |
-> Int | returns the value of the "standard::sort_order" attribute. |
Gets the value of the sortOrder
attribute from the FileInfo
. See
FileAttributeStandardSortOrder
.
fileInfoUnsetAttributeMask :: FileInfoClass info => info -> IO ()Source
Unsets a mask set by fileInfoSetAttributeMask
, if one is set.
fileInfoSetFileType :: FileInfoClass info => info -> FileType -> IO ()Source
Sets the file type in a FileInfo
to type. See FileAttributeStandardType
.
fileInfoSetIsHidden :: FileInfoClass info => info -> Bool -> IO ()Source
Sets the isHidden
attribute in a FileInfo
according to isSymlink
. See
FileAttributeStandardIsHidden
.
fileInfoSetIsSymlink :: FileInfoClass info => info -> Bool -> IO ()Source
Sets the isSymlink
attribute in a FileInfo
according to isSymlink
. See
FileAttributeStandardIsSymlink
.
fileInfoSetName :: FileInfoClass info => info -> ByteString -> IO ()Source
Sets the name attribute for the current FileInfo
. See FileAttributeStandardName
.
fileInfoSetDisplayName :: FileInfoClass info => info -> String -> IO ()Source
Sets the display name for the current FileInfo
. See FileAttributeStandardDisplayName
.
fileInfoSetEditName :: FileInfoClass info => info -> String -> IO ()Source
Sets the edit name for the current FileInfo
. See FileAttributeStandardEditName
.
fileInfoSetIcon :: FileInfoClass info => info -> Icon -> IO ()Source
Sets the icon for a given FileInfo
. See FileAttributeStandardIcon
.
Arguments
:: FileInfoClass info | |
=> info | |
-> String |
|
-> IO () |
Sets the content type attribute for a given FileInfo
. See FileAttributeStandardContentType
.
fileInfoSetModificationTime :: FileInfoClass info => info -> GTimeVal -> IO ()Source
Sets the FileAttributeTimeModified
attribute in the file info to the given time value.
Arguments
:: FileInfoClass info | |
=> info | |
-> Int64 |
|
-> IO () |
Sets the FileAttributeStandardSize
attribute in the file info to the given size.
Arguments
:: FileInfoClass info | |
=> info | |
-> Int |
|
-> IO () |
Sets the FileAttributeStandardSymlinkTarget
attribute in the file info to the given symlink
target.
fileInfoSetSymlinkTarget :: FileInfoClass info => info
-> String -- ^ symlinkTarget
a static string containing a path to a symlink target.
-> IO ()
fileInfoSetSymlinkTarget info symlinkTarget =
withUTFString symlinkTarget $ symlinkTargetPtr ->
{} (toFileInfo info) symlinkTargetPtr
Sets the sort order attribute in the file info structure. See FileAttributeStandardSortOrder
.