glibmm  2.32.1
Public Member Functions | Related Functions
Gio::FileInfo Class Reference

FileInfo implements methods for getting information that all files should contain, and allows for manipulation of extended attributes. More...

#include <giomm/fileinfo.h>

Inheritance diagram for Gio::FileInfo:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~FileInfo ()
GFileInfo* gobj ()
 Provides access to the underlying C GObject.
const GFileInfo* gobj () const
 Provides access to the underlying C GObject.
GFileInfo* gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
 FileInfo ()
Glib::RefPtr< FileInfodup () const
 Duplicates a file info structure.
void copy_into (Glib::RefPtr< FileInfo >& dest) const
 Copies all of the GFileAttributes from src_info to dest_info.
bool has_attribute (const std::string& attribute) const
 Checks if a file info structure has an attribute named attribute.
Glib::StringArrayHandle list_attributes (const std::string& name_space) const
 Lists the file info structure's attributes.
FileAttributeType get_attribute_type (const std::string& attribute) const
 Gets the attribute type for an attribute key.
void remove_attribute (const std::string& attribute)
 Removes all cases of attribute from info if it exists.
std::string get_attribute_string (const std::string& attribute) const
 Gets the value of a string attribute.
Glib::ustring get_attribute_as_string (const std::string& attribute) const
 Gets the value of a attribute, formated as a string.
std::string get_attribute_byte_string (const std::string& attribute) const
 Gets the value of a byte string attribute.
bool get_attribute_boolean (const std::string& attribute) const
 Gets the value of a boolean attribute.
guint32 get_attribute_uint32 (const std::string& attribute) const
 Gets an unsigned 32-bit integer contained within the attribute.
gint32 get_attribute_int32 (const std::string& attribute) const
 Gets a signed 32-bit integer contained within the attribute.
guint64 get_attribute_uint64 (const std::string& attribute) const
 Gets a unsigned 64-bit integer contained within the attribute.
gint64 get_attribute_int64 (const std::string& attribute) const
 Gets a signed 64-bit integer contained within the attribute.
Glib::RefPtr< Glib::Objectget_attribute_object (const std::string& attribute) const
 Gets the value of a Object attribute.
void set_attribute_string (const std::string& attribute, const std::string&value)
 Sets the attribute to contain the given attr_value, if possible.
void set_attribute_byte_string (const std::string& attribute, const std::string&value)
 Sets the attribute to contain the given attr_value, if possible.
void set_attribute_boolean (const std::string& attribute, bool value)
 Sets the attribute to contain the given attr_value, if possible.
void set_attribute_uint32 (const std::string& attribute, guint32 value)
 Sets the attribute to contain the given attr_value, if possible.
void set_attribute_int32 (const std::string& attribute, gint32 value)
 Sets the attribute to contain the given attr_value, if possible.
void set_attribute_uint64 (const std::string& attribute, guint64 value)
 Sets the attribute to contain the given attr_value, if possible.
void set_attribute_int64 (const std::string& attribute, gint64 value)
 Sets the attribute to contain the given attr_value, if possible.
void set_attribute_object (const std::string& attribute, const Glib::RefPtr< Glib::Object >& object)
 Sets the attribute to contain the given attr_value, if possible.
void clear_status ()
 Clears the status information from info.
FileType get_file_type () const
 Gets a file's type (whether it is a regular file, symlink, etc).
bool is_hidden () const
 Checks if a file is hidden.
bool is_backup () const
 Checks if a file is a backup file.
bool is_symlink () const
 Checks if a file is a symlink.
std::string get_name () const
 Gets the name for a file.
std::string get_display_name () const
 Gets a display name for a file.
std::string get_edit_name () const
 Gets the edit name for a file.
Glib::RefPtr< Iconget_icon ()
 Gets the icon for a file.
Glib::RefPtr< const Iconget_icon () const
 Gets the icon for a file.
std::string get_content_type () const
 Gets the file's content type.
goffset get_size () const
 Gets the file's size.
Glib::TimeVal modification_time () const
std::string get_symlink_target () const
 Gets the symlink target for a given FileInfo.
std::string get_etag () const
 Gets the entity tag for a given FileInfo.
gint32 get_sort_order () const
 Gets the value of the sort_order attribute from the FileInfo.
void set_attribute_mask (const Glib::RefPtr< FileAttributeMatcher >& mask)
 Sets mask on info to match specific attribute types.
void unset_attribute_mask ()
 Unsets a mask set by g_file_info_set_attribute_mask(), if one is set.
void set_file_type (FileType type)
 Sets the file type in a FileInfo to type.
void set_is_hidden (bool is_hidden=true)
 Sets the "is_hidden" attribute in a FileInfo according to is_symlink.
void set_is_symlink (bool is_symlink=true)
 Sets the "is_symlink" attribute in a FileInfo according to is_symlink.
void set_name (const std::string& name)
 Sets the name attribute for the current FileInfo.
void set_display_name (const std::string& display_name)
 Sets the display name for the current FileInfo.
void set_edit_name (const std::string& edit_name)
 Sets the edit name for the current file.
void set_icon (const Glib::RefPtr< Icon >& icon)
 Sets the icon for a given FileInfo.
void set_content_type (const std::string& content_type)
 Sets the content type attribute for a given FileInfo.
void set_size (goffset size)
 Sets the FILE_ATTRIBUTE_STANDARD_SIZE attribute in the file info to the given size.
void set_modification_time (const Glib::TimeVal& mtime)
 Sets the FILE_ATTRIBUTE_TIME_MODIFIED attribute in the file info to the given time value.
void set_symlink_target (const std::string& symlink_target)
 Sets the FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET attribute in the file info to the given symlink target.
void set_sort_order (gint32 sort_order)
 Sets the sort order attribute in the file info structure.
- Public Member Functions inherited from Glib::Object
void* get_data (const QueryQuark& key)
void set_data (const Quark& key, void* data)
void set_data (const Quark& key, void* data, DestroyNotify notify)
void remove_data (const QueryQuark& quark)
void* steal_data (const QueryQuark& quark)
- Public Member Functions inherited from Glib::ObjectBase
void set_property_value (const Glib::ustring& property_name, const Glib::ValueBase&value)
 You probably want to use a specific property_*() accessor method instead.
void get_property_value (const Glib::ustring& property_name, Glib::ValueBase&value) const
 You probably want to use a specific property_*() accessor method instead.
template<class PropertyType >
void set_property (const Glib::ustring& property_name, const PropertyType&value)
 You probably want to use a specific property_*() accessor method instead.
template<class PropertyType >
void get_property (const Glib::ustring& property_name, PropertyType&value) const
 You probably want to use a specific property_*() accessor method instead.
void connect_property_changed (const Glib::ustring& property_name, const sigc::slot< void >& slot)
 You can use the signal_changed() signal of the property proxy instead, but this is necessary when using the reduced API.
sigc::connection connect_property_changed_with_return (const Glib::ustring& property_name, const sigc::slot< void >& slot)
 You can use the signal_changed() signal of the property proxy instead, but this is necessary when using the reduced API.
void freeze_notify ()
 Increases the freeze count on object.
void thaw_notify ()
 Reverts the effect of a previous call to freeze_notify().
virtual void reference () const
 Increment the reference count for this object.
virtual void unreference () const
 Decrement the reference count for this object.
GObject* gobj_copy () const
 Give a ref-ed copy to someone. Use for direct struct access.
- Public Member Functions inherited from sigc::trackable
 trackable (const trackable &src)
trackableoperator= (const trackable &src)
void add_destroy_notify_callback (void *data, func_destroy_notify func) const
void remove_destroy_notify_callback (void *data) const
void notify_callbacks ()

Related Functions

(Note that these are not member functions.)

Glib::RefPtr< Gio::FileInfowrap (GFileInfo* object, bool take_copy=false)
 A Glib::wrap() method for this object.

Additional Inherited Members

- Public Types inherited from Glib::Object
typedef void(* DestroyNotify )(gpointer data)
- Protected Member Functions inherited from Glib::Object
 Object ()
 Object (const Glib::ConstructParams& construct_params)
 Object (GObject* castitem)
virtual ~Object ()
- Protected Member Functions inherited from Glib::ObjectBase
 ObjectBase ()
 This default constructor is called implicitly from the constructor of user-derived classes, even if, for instance, Gtk::Button calls a different ObjectBase constructor.
 ObjectBase (const char* custom_type_name)
 A derived constructor always overrides this choice.
 ObjectBase (const std::type_info& custom_type_info)
 This constructor is a special feature to allow creation of derived types on the fly, without having to use g_object_new() manually.
virtual ~ObjectBase ()=0
void initialize (GObject* castitem)

Detailed Description

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 File::query_info() (or its async variant). To obtain a FileInfo for a file input or output stream, use FileInput::stream_query_info() or FileOutput::stream_query_info() (or their async variants).

FileAttributeMatcher allows for searching through a FileInfo for attributes.


Constructor & Destructor Documentation

virtual Gio::FileInfo::~FileInfo ( )
virtual
Gio::FileInfo::FileInfo ( )

Member Function Documentation

void Gio::FileInfo::clear_status ( )

Clears the status information from info.

void Gio::FileInfo::copy_into ( Glib::RefPtr< FileInfo >&  dest) const

Copies all of the GFileAttributes from src_info to dest_info.

Parameters:
dest_infoDestination to copy attributes to.
Glib::RefPtr<FileInfo> Gio::FileInfo::dup ( ) const

Duplicates a file info structure.

Returns:
A duplicate FileInfo of other.
Glib::ustring Gio::FileInfo::get_attribute_as_string ( const std::string attribute) const

Gets the value of a attribute, formated as a string.

This escapes things as needed to make the string valid utf8.

Parameters:
attributeA file attribute key.
Returns:
A UTF-8 string associated with the given attribute. When you're done with the string it must be freed with Glib::free().
bool Gio::FileInfo::get_attribute_boolean ( const std::string attribute) const

Gets the value of a boolean attribute.

If the attribute does not contain a boolean value, false will be returned.

Parameters:
attributeA file attribute key.
Returns:
The boolean value contained within the attribute.
std::string Gio::FileInfo::get_attribute_byte_string ( const std::string attribute) const

Gets the value of a byte string attribute.

If the attribute does not contain a byte string, 0 will be returned.

Parameters:
attributeA file attribute key.
Returns:
The contents of the attribute value as a byte string, or 0 otherwise.
gint32 Gio::FileInfo::get_attribute_int32 ( const std::string attribute) const

Gets a signed 32-bit integer contained within the attribute.

If the attribute does not contain a signed 32-bit integer, or is invalid, 0 will be returned.

Parameters:
attributeA file attribute key.
Returns:
A signed 32-bit integer from the attribute.
gint64 Gio::FileInfo::get_attribute_int64 ( const std::string attribute) const

Gets a signed 64-bit integer contained within the attribute.

If the attribute does not contain an signed 64-bit integer, or is invalid, 0 will be returned.

Parameters:
attributeA file attribute key.
Returns:
A signed 64-bit integer from the attribute.
Glib::RefPtr<Glib::Object> Gio::FileInfo::get_attribute_object ( const std::string attribute) const

Gets the value of a Object attribute.

If the attribute does not contain a Object, 0 will be returned.

Parameters:
attributeA file attribute key.
Returns:
A Object associated with the given attribute, or 0 otherwise.
std::string Gio::FileInfo::get_attribute_string ( const std::string attribute) const

Gets the value of a string attribute.

If the attribute does not contain a string, 0 will be returned.

Parameters:
attributeA file attribute key.
Returns:
The contents of the attribute value as a UTF-8 string, or 0 otherwise.
FileAttributeType Gio::FileInfo::get_attribute_type ( const std::string attribute) const

Gets the attribute type for an attribute key.

Parameters:
attributeA file attribute key.
Returns:
A FileAttributeType for the given attribute, or FILE_ATTRIBUTE_TYPE_INVALID if the key is not set.
guint32 Gio::FileInfo::get_attribute_uint32 ( const std::string attribute) const

Gets an unsigned 32-bit integer contained within the attribute.

If the attribute does not contain an unsigned 32-bit integer, or is invalid, 0 will be returned.

Parameters:
attributeA file attribute key.
Returns:
An unsigned 32-bit integer from the attribute.
guint64 Gio::FileInfo::get_attribute_uint64 ( const std::string attribute) const

Gets a unsigned 64-bit integer contained within the attribute.

If the attribute does not contain an unsigned 64-bit integer, or is invalid, 0 will be returned.

Parameters:
attributeA file attribute key.
Returns:
A unsigned 64-bit integer from the attribute.
std::string Gio::FileInfo::get_content_type ( ) const

Gets the file's content type.

Returns:
A string containing the file's content type.
std::string Gio::FileInfo::get_display_name ( ) const

Gets a display name for a file.

Returns:
A string containing the display name.
std::string Gio::FileInfo::get_edit_name ( ) const

Gets the edit name for a file.

Returns:
A string containing the edit name.
std::string Gio::FileInfo::get_etag ( ) const

Gets the entity tag for a given FileInfo.

See FILE_ATTRIBUTE_ETAG_VALUE.

Returns:
A string containing the value of the "etag:value" attribute.
FileType Gio::FileInfo::get_file_type ( ) const

Gets a file's type (whether it is a regular file, symlink, etc).

This is different from the file's content type, see g_file_info_get_content_type().

Returns:
A FileType for the given file.
Glib::RefPtr<Icon> Gio::FileInfo::get_icon ( )

Gets the icon for a file.

Returns:
Icon for the given info.
Glib::RefPtr<const Icon> Gio::FileInfo::get_icon ( ) const

Gets the icon for a file.

Returns:
Icon for the given info.
std::string Gio::FileInfo::get_name ( ) const

Gets the name for a file.

Returns:
A string containing the file name.
goffset Gio::FileInfo::get_size ( ) const

Gets the file's size.

Returns:
A #goffset containing the file's size.
gint32 Gio::FileInfo::get_sort_order ( ) const

Gets the value of the sort_order attribute from the FileInfo.

See FILE_ATTRIBUTE_STANDARD_SORT_ORDER.

Returns:
A #gint32 containing the value of the "standard::sort_order" attribute.
std::string Gio::FileInfo::get_symlink_target ( ) const

Gets the symlink target for a given FileInfo.

Returns:
A string containing the symlink target.
GFileInfo* Gio::FileInfo::gobj ( )
inline

Provides access to the underlying C GObject.

Reimplemented from Glib::ObjectBase.

const GFileInfo* Gio::FileInfo::gobj ( ) const
inline

Provides access to the underlying C GObject.

Reimplemented from Glib::ObjectBase.

GFileInfo* Gio::FileInfo::gobj_copy ( )

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

bool Gio::FileInfo::has_attribute ( const std::string attribute) const

Checks if a file info structure has an attribute named attribute.

Parameters:
attributeA file attribute key.
Returns:
true if Ginfo has an attribute named attribute, false otherwise.
bool Gio::FileInfo::is_backup ( ) const

Checks if a file is a backup file.

Returns:
true if file is a backup file, false otherwise.
bool Gio::FileInfo::is_hidden ( ) const

Checks if a file is hidden.

Returns:
true if the file is a hidden file, false otherwise.
bool Gio::FileInfo::is_symlink ( ) const

Checks if a file is a symlink.

Returns:
true if the given info is a symlink.
Glib::StringArrayHandle Gio::FileInfo::list_attributes ( const std::string name_space) const

Lists the file info structure's attributes.

Parameters:
name_spaceA file attribute key's namespace.
Returns:
A null-terminated array of strings of all of the possible attribute types for the given name_space, or 0 on error.
Glib::TimeVal Gio::FileInfo::modification_time ( ) const
void Gio::FileInfo::remove_attribute ( const std::string attribute)

Removes all cases of attribute from info if it exists.

Parameters:
attributeA file attribute key.
void Gio::FileInfo::set_attribute_boolean ( const std::string attribute,
bool  value 
)

Sets the attribute to contain the given attr_value, if possible.

Parameters:
attributeA file attribute key.
attr_valueA boolean value.
void Gio::FileInfo::set_attribute_byte_string ( const std::string attribute,
const std::string value 
)

Sets the attribute to contain the given attr_value, if possible.

Parameters:
attributeA file attribute key.
attr_valueA byte string.
void Gio::FileInfo::set_attribute_int32 ( const std::string attribute,
gint32  value 
)

Sets the attribute to contain the given attr_value, if possible.

Parameters:
attributeA file attribute key.
attr_valueA signed 32-bit integer.
void Gio::FileInfo::set_attribute_int64 ( const std::string attribute,
gint64  value 
)

Sets the attribute to contain the given attr_value, if possible.

Parameters:
attributeAttribute name to set.
attr_valueInt64 value to set attribute to.
void Gio::FileInfo::set_attribute_mask ( const Glib::RefPtr< FileAttributeMatcher >&  mask)

Sets mask on info to match specific attribute types.

Parameters:
maskA FileAttributeMatcher.
void Gio::FileInfo::set_attribute_object ( const std::string attribute,
const Glib::RefPtr< Glib::Object >&  object 
)

Sets the attribute to contain the given attr_value, if possible.

Parameters:
attributeA file attribute key.
attr_valueA Object.
void Gio::FileInfo::set_attribute_string ( const std::string attribute,
const std::string value 
)

Sets the attribute to contain the given attr_value, if possible.

Parameters:
attributeA file attribute key.
attr_valueA UTF-8 string.
void Gio::FileInfo::set_attribute_uint32 ( const std::string attribute,
guint32  value 
)

Sets the attribute to contain the given attr_value, if possible.

Parameters:
attributeA file attribute key.
attr_valueAn unsigned 32-bit integer.
void Gio::FileInfo::set_attribute_uint64 ( const std::string attribute,
guint64  value 
)

Sets the attribute to contain the given attr_value, if possible.

Parameters:
attributeA file attribute key.
attr_valueAn unsigned 64-bit integer.
void Gio::FileInfo::set_content_type ( const std::string content_type)

Sets the content type attribute for a given FileInfo.

See FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE.

Parameters:
content_typeA content type. See GContentType.
void Gio::FileInfo::set_display_name ( const std::string display_name)

Sets the display name for the current FileInfo.

See FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME.

Parameters:
display_nameA string containing a display name.
void Gio::FileInfo::set_edit_name ( const std::string edit_name)

Sets the edit name for the current file.

See FILE_ATTRIBUTE_STANDARD_EDIT_NAME.

Parameters:
edit_nameA string containing an edit name.
void Gio::FileInfo::set_file_type ( FileType  type)

Sets the file type in a FileInfo to type.

See FILE_ATTRIBUTE_STANDARD_TYPE.

Parameters:
typeA FileType.
void Gio::FileInfo::set_icon ( const Glib::RefPtr< Icon >&  icon)

Sets the icon for a given FileInfo.

See FILE_ATTRIBUTE_STANDARD_ICON.

Parameters:
iconA Icon.
void Gio::FileInfo::set_is_hidden ( bool  is_hidden = true)

Sets the "is_hidden" attribute in a FileInfo according to is_symlink.

See FILE_ATTRIBUTE_STANDARD_IS_HIDDEN.

Parameters:
is_hiddenA bool.
void Gio::FileInfo::set_is_symlink ( bool  is_symlink = true)

Sets the "is_symlink" attribute in a FileInfo according to is_symlink.

See FILE_ATTRIBUTE_STANDARD_IS_SYMLINK.

Parameters:
is_symlinkA bool.
void Gio::FileInfo::set_modification_time ( const Glib::TimeVal mtime)

Sets the FILE_ATTRIBUTE_TIME_MODIFIED attribute in the file info to the given time value.

Parameters:
mtimeA TimeVal.
void Gio::FileInfo::set_name ( const std::string name)

Sets the name attribute for the current FileInfo.

See FILE_ATTRIBUTE_STANDARD_NAME.

Parameters:
nameA string containing a name.
void Gio::FileInfo::set_size ( goffset  size)

Sets the FILE_ATTRIBUTE_STANDARD_SIZE attribute in the file info to the given size.

Parameters:
sizeA #goffset containing the file's size.
void Gio::FileInfo::set_sort_order ( gint32  sort_order)

Sets the sort order attribute in the file info structure.

See FILE_ATTRIBUTE_STANDARD_SORT_ORDER.

Parameters:
sort_orderA sort order integer.
void Gio::FileInfo::set_symlink_target ( const std::string symlink_target)

Sets the FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET attribute in the file info to the given symlink target.

Parameters:
symlink_targetA static string containing a path to a symlink target.
void Gio::FileInfo::unset_attribute_mask ( )

Unsets a mask set by g_file_info_set_attribute_mask(), if one is set.


Friends And Related Function Documentation

Glib::RefPtr< Gio::FileInfo > wrap ( GFileInfo *  object,
bool  take_copy = false 
)
related

A Glib::wrap() method for this object.

Parameters:
objectThe C instance.
take_copyFalse if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns:
A C++ instance that wraps this C instance.