## nautilus-file-info nautilus-file-info |

## Synopsis

    #define             NAUTILUS_FILE_DEFINED
    typedef             NautilusFile;
    typedef             NautilusFileInfo;
    struct              NautilusFileInfoIface;
    NautilusFileInfo *  nautilus_file_info_create           (GFile *location);
    NautilusFileInfo *  nautilus_file_info_create_for_uri   (const char *uri);
    NautilusFileInfo *  (*nautilus_file_info_getter)        (GFile *location,
                                                             gboolean create);
    NautilusFileInfo *  nautilus_file_info_lookup           (GFile *location);
    NautilusFileInfo *  nautilus_file_info_lookup_for_uri   (const char *uri);
    GList *             nautilus_file_info_list_copy        (GList *files);
    void                nautilus_file_info_list_free        (GList *files);
    gboolean            nautilus_file_info_is_gone          (NautilusFileInfo *file);
    GFileType           nautilus_file_info_get_file_type    (NautilusFileInfo *file);
    GFile *             nautilus_file_info_get_location     (NautilusFileInfo *file);
    char *              nautilus_file_info_get_name         (NautilusFileInfo *file);
    char *              nautilus_file_info_get_uri          (NautilusFileInfo *file);
    char *              nautilus_file_info_get_activation_uri
                                                            (NautilusFileInfo *file);
    GFile *             nautilus_file_info_get_parent_location
                                                            (NautilusFileInfo *file);
    char *              nautilus_file_info_get_parent_uri   (NautilusFileInfo *file);
    GMount *            nautilus_file_info_get_mount        (NautilusFileInfo *file);
    char *              nautilus_file_info_get_uri_scheme   (NautilusFileInfo *file);
    NautilusFileInfo *  nautilus_file_info_get_parent_info  (NautilusFileInfo *file);
    char *              nautilus_file_info_get_mime_type    (NautilusFileInfo *file);
    gboolean            nautilus_file_info_is_mime_type     (NautilusFileInfo *file,
                                                             const char *mime_type);
    gboolean            nautilus_file_info_is_directory     (NautilusFileInfo *file);
    gboolean            nautilus_file_info_can_write        (NautilusFileInfo *file);
    void                nautilus_file_info_add_emblem       (NautilusFileInfo *file,
                                                             const char *emblem_name);
    char *              nautilus_file_info_get_string_attribute
                                                            (NautilusFileInfo *file,
                                                             const char *attribute_name);
    void                nautilus_file_info_add_string_attribute
                                                            (NautilusFileInfo *file,
                                                             const char *attribute_name,
                                                             const char *value);
    void                nautilus_file_info_invalidate_extension_info
                                                            (NautilusFileInfo *file);

## Object Hierarchy

      GInterface
       +----NautilusFileInfo

## Prerequisites

NautilusFileInfo requires GObject.

## Description

## Details

### NAUTILUS_FILE_DEFINED

    #define NAUTILUS_FILE_DEFINED

### NautilusFile

    typedef struct NautilusFile          NautilusFile;

### NautilusFileInfo

    typedef NautilusFile                  NautilusFileInfo;

### struct NautilusFileInfoIface

    struct NautilusFileInfoIface {
    	GTypeInterface g_iface;

    	gboolean          (*is_gone)              (NautilusFileInfo *file);

    	char *            (*get_name)             (NautilusFileInfo *file);
    	char *            (*get_uri)              (NautilusFileInfo *file);
    	char *            (*get_parent_uri)       (NautilusFileInfo *file);
    	char *            (*get_uri_scheme)       (NautilusFileInfo *file);

    	char *            (*get_mime_type)        (NautilusFileInfo *file);
    	gboolean          (*is_mime_type)         (NautilusFileInfo *file,
    						   const char       *mime_Type);
    	gboolean          (*is_directory)         (NautilusFileInfo *file);

    	void              (*add_emblem)           (NautilusFileInfo *file,
    						   const char       *emblem_name);
    	char *            (*get_string_attribute) (NautilusFileInfo *file,
    						   const char       *attribute_name);
    	void              (*add_string_attribute) (NautilusFileInfo *file,
    						   const char       *attribute_name,
    						   const char       *value);
    	void              (*invalidate_extension_info) (NautilusFileInfo *file);

    	char *            (*get_activation_uri)   (NautilusFileInfo *file);

    	GFileType         (*get_file_type)        (NautilusFileInfo *file);
    	GFile *           (*get_location)         (NautilusFileInfo *file);
    	GFile *           (*get_parent_location)  (NautilusFileInfo *file);
    	NautilusFileInfo* (*get_parent_info)      (NautilusFileInfo *file);
    	GMount *          (*get_mount)            (NautilusFileInfo *file);
    	gboolean          (*can_write)            (NautilusFileInfo *file);
    };

### nautilus_file_info_create ()

    NautilusFileInfo *  nautilus_file_info_create           (GFile *location);

`location` : | the location to create the file info for
Returns : | a NautilusFileInfo. [transfer full]

### nautilus_file_info_create_for_uri ()

    NautilusFileInfo *  nautilus_file_info_create_for_uri   (const char *uri);

`uri` : | the URI to lookup the file info for
Returns : | a NautilusFileInfo. [transfer full]

### nautilus_file_info_getter ()

    NautilusFileInfo *  (*nautilus_file_info_getter)        (GFile *location,
                                                             gboolean create);

### nautilus_file_info_lookup ()

    NautilusFileInfo *  nautilus_file_info_lookup           (GFile *location);

`location` : | the location to lookup the file info for
Returns : | a NautilusFileInfo. [transfer full]

### nautilus_file_info_lookup_for_uri ()

    NautilusFileInfo *  nautilus_file_info_lookup_for_uri   (const char *uri);

`uri` : | the URI to lookup the file info for
Returns : | a NautilusFileInfo. [transfer full]

### nautilus_file_info_list_copy ()

    GList *             nautilus_file_info_list_copy        (GList *files);

`files` : | the files to copy. [element-type NautilusFileInfo]
Returns : | a copy of `files`. Use nautilus_file_info_list_free to free the list and unref its contents. [element-type NautilusFileInfo][transfer full]

### nautilus_file_info_list_free ()

    void                nautilus_file_info_list_free        (GList *files);

`files` : | a list created with nautilus_file_info_list_copy. [element-type NautilusFileInfo]

### nautilus_file_info_is_gone ()

    gboolean            nautilus_file_info_is_gone          (NautilusFileInfo *file);

### nautilus_file_info_get_file_type ()

    GFileType           nautilus_file_info_get_file_type    (NautilusFileInfo *file);

### nautilus_file_info_get_location ()

    GFile *             nautilus_file_info_get_location     (NautilusFileInfo *file);

`file` : | a NautilusFileInfo
Returns : | a GFile for the location of `file`. [transfer full]

### nautilus_file_info_get_name ()

    char *              nautilus_file_info_get_name         (NautilusFileInfo *file);

### nautilus_file_info_get_uri ()

    char *              nautilus_file_info_get_uri          (NautilusFileInfo *file);

### nautilus_file_info_get_activation_uri ()

    char *              nautilus_file_info_get_activation_uri
                                                            (NautilusFileInfo *file);

### nautilus_file_info_get_parent_location ()

    GFile *             nautilus_file_info_get_parent_location
                                                            (NautilusFileInfo *file);

`file` : | a NautilusFileInfo
Returns : | a GFile for the parent location of `file`, or `NULL` if `file` has no parent. [allow-none][transfer full]

### nautilus_file_info_get_parent_uri ()

    char *              nautilus_file_info_get_parent_uri   (NautilusFileInfo *file);

### nautilus_file_info_get_mount ()

    GMount *            nautilus_file_info_get_mount        (NautilusFileInfo *file);

`file` : | a NautilusFileInfo
Returns : | a GMount for the mount of `file`, or `NULL` if `file` has no mount. [allow-none][transfer full]

### nautilus_file_info_get_uri_scheme ()

    char *              nautilus_file_info_get_uri_scheme   (NautilusFileInfo *file);

### nautilus_file_info_get_parent_info ()

    NautilusFileInfo *  nautilus_file_info_get_parent_info  (NautilusFileInfo *file);

`file` : | a NautilusFileInfo
Returns : | a NautilusFileInfo for the parent of `file`, or `NULL` if `file` has no parent. [allow-none][transfer full]

### nautilus_file_info_get_mime_type ()

    char *              nautilus_file_info_get_mime_type    (NautilusFileInfo *file);

### nautilus_file_info_is_mime_type ()

    gboolean            nautilus_file_info_is_mime_type     (NautilusFileInfo *file,
                                                             const char *mime_type);

### nautilus_file_info_is_directory ()

    gboolean            nautilus_file_info_is_directory     (NautilusFileInfo *file);

### nautilus_file_info_can_write ()

    gboolean            nautilus_file_info_can_write        (NautilusFileInfo *file);

### nautilus_file_info_add_emblem ()

    void                nautilus_file_info_add_emblem       (NautilusFileInfo *file,
                                                             const char *emblem_name);

### nautilus_file_info_get_string_attribute ()

    char *              nautilus_file_info_get_string_attribute
                                                            (NautilusFileInfo *file,
                                                             const char *attribute_name);

### nautilus_file_info_add_string_attribute ()

    void                nautilus_file_info_add_string_attribute
                                                            (NautilusFileInfo *file,
                                                             const char *attribute_name,
                                                             const char *value);

### nautilus_file_info_invalidate_extension_info ()

    void                nautilus_file_info_invalidate_extension_info
                                                            (NautilusFileInfo *file);