![]() | ![]() | ![]() | GnomeVFS - Filesystem Abstraction library | ![]() |
---|
File Types — functions for getting information about files based on their MIME type
#define GNOME_VFS_MIME_TYPE_UNKNOWN const char* gnome_vfs_get_mime_type_for_data (gconstpointer data, int data_size); char* gnome_vfs_get_mime_type (const char *text_uri); enum GnomeVFSMimeActionType; enum GnomeVFSMimeApplicationArgumentType; struct GnomeVFSMimeApplication; struct GnomeVFSMimeAction; GnomeVFSMimeApplication* gnome_vfs_mime_application_copy (GnomeVFSMimeApplication *application); GnomeVFSMimeActionType gnome_vfs_mime_get_default_action_type (const char *mime_type); GnomeVFSMimeAction* gnome_vfs_mime_get_default_action (const char *mime_type); GnomeVFSMimeApplication* gnome_vfs_mime_get_default_application (const char *mime_type); Bonobo_ServerInfo* gnome_vfs_mime_get_default_component (const char *mime_type); GList* gnome_vfs_mime_get_short_list_applications (const char *mime_type); GList* gnome_vfs_mime_get_short_list_components (const char *mime_type); GList* gnome_vfs_mime_get_all_applications (const char *mime_type); GList* gnome_vfs_mime_get_all_components (const char *mime_type); GnomeVFSResult gnome_vfs_mime_set_default_action_type (const char *mime_type, GnomeVFSMimeActionType action_type); GnomeVFSResult gnome_vfs_mime_set_default_application (const char *mime_type, const char *application_id); GnomeVFSResult gnome_vfs_mime_set_default_component (const char *mime_type, const char *component_iid); const char* gnome_vfs_mime_get_icon (const char *mime_type); GnomeVFSResult gnome_vfs_mime_set_icon (const char *mime_type, const char *filename); const char* gnome_vfs_mime_get_description (const char *mime_type); GnomeVFSResult gnome_vfs_mime_set_description (const char *mime_type, const char *description); gboolean gnome_vfs_mime_can_be_executable (const char *mime_type); GnomeVFSResult gnome_vfs_mime_set_can_be_executable (const char *mime_type, gboolean new_value); GnomeVFSResult gnome_vfs_mime_set_short_list_applications (const char *mime_type, GList *application_ids); GnomeVFSResult gnome_vfs_mime_set_short_list_components (const char *mime_type, GList *component_iids); GnomeVFSResult gnome_vfs_mime_add_application_to_short_list (const char *mime_type, const char *application_id); GnomeVFSResult gnome_vfs_mime_remove_application_from_short_list (const char *mime_type, const char *application_id); GnomeVFSResult gnome_vfs_mime_add_component_to_short_list (const char *mime_type, const char *iid); GnomeVFSResult gnome_vfs_mime_remove_component_from_short_list (const char *mime_type, const char *iid); GnomeVFSResult gnome_vfs_mime_add_extension (const char *mime_type, const char *extension); GnomeVFSResult gnome_vfs_mime_remove_extension (const char *mime_type, const char *extension); GnomeVFSResult gnome_vfs_mime_extend_all_applications (const char *mime_type, GList *application_ids); GnomeVFSResult gnome_vfs_mime_remove_from_all_applications (const char *mime_type, GList *application_ids); GnomeVFSMimeApplication* gnome_vfs_mime_application_new_from_id (const char *id); void gnome_vfs_mime_application_free (GnomeVFSMimeApplication *application); void gnome_vfs_mime_action_free (GnomeVFSMimeAction *action); void gnome_vfs_mime_application_list_free (GList *list); void gnome_vfs_mime_component_list_free (GList *list); gboolean gnome_vfs_mime_id_in_application_list (const char *id, GList *applications); gboolean gnome_vfs_mime_id_in_component_list (const char *iid, GList *components); GList* gnome_vfs_mime_remove_application_from_list (GList *applications, const char *application_id, gboolean *did_remove); GList* gnome_vfs_mime_remove_component_from_list (GList *components, const char *iid, gboolean *did_remove); GList* gnome_vfs_mime_id_list_from_component_list (GList *components); GList* gnome_vfs_mime_id_list_from_application_list (GList *applications); void gnome_vfs_mime_freeze (void); void gnome_vfs_mime_thaw (void); void gnome_vfs_mime_info_reload (void); gboolean gnome_vfs_mime_type_is_known (const char *mime_type); const char* gnome_vfs_mime_get_value (const char *mime_type, const char *key); GnomeVFSResult gnome_vfs_mime_set_value (const char *mime_type, const char *key, const char *value); GList* gnome_vfs_mime_get_key_list (const char *mime_type); void gnome_vfs_mime_keys_list_free (GList *mime_type_list); GList* gnome_vfs_mime_get_extensions_list (const char *mime_type); void gnome_vfs_mime_extensions_list_free (GList *list); char* gnome_vfs_mime_get_extensions_string (const char *mime_type); char* gnome_vfs_mime_get_extensions_pretty_string (const char *mime_type); GList* gnome_vfs_get_registered_mime_types (void); void gnome_vfs_mime_registered_mime_type_list_free (GList *list); GnomeVFSResult gnome_vfs_mime_set_registered_type_key (const char *mime_type, const char *key, const char *data); GnomeVFSResult gnome_vfs_mime_set_extensions_list (const char *mime_type, const char *extensions_list); void gnome_vfs_mime_registered_mime_type_delete (const char *mime_type); void gnome_vfs_mime_reset (void);
#define GNOME_VFS_MIME_TYPE_UNKNOWN "application/octet-stream"
The value returned for the MIME type when a file did not match any entries in the MIME database. May be treated as a file of an unknown type.
const char* gnome_vfs_get_mime_type_for_data (gconstpointer data, int data_size);
Tries to guess the mime type of the data in data using the magic patterns.
data : | A pointer to data in memory. |
data_size : | Size of the data. |
Returns : | the mime-type for this filename. |
char* gnome_vfs_get_mime_type (const char *text_uri);
Determine the mime type of text_uri. The mime type is determined in the same way as by gnome_vfs_get_file_info(). This is meant as a convenience function for times when you only want the mime type.
text_uri : | URI of the file for which to get the mime type |
Returns : | The mime type, or NULL if there is an error reading the file. |
typedef enum { GNOME_VFS_MIME_ACTION_TYPE_NONE, GNOME_VFS_MIME_ACTION_TYPE_APPLICATION, GNOME_VFS_MIME_ACTION_TYPE_COMPONENT } GnomeVFSMimeActionType;
typedef enum { GNOME_VFS_MIME_APPLICATION_ARGUMENT_TYPE_URIS, GNOME_VFS_MIME_APPLICATION_ARGUMENT_TYPE_PATHS, GNOME_VFS_MIME_APPLICATION_ARGUMENT_TYPE_URIS_FOR_NON_FILES } GnomeVFSMimeApplicationArgumentType;
struct GnomeVFSMimeApplication { char *id; char *name; char *command; gboolean can_open_multiple_files; GnomeVFSMimeApplicationArgumentType expects_uris; GList *supported_uri_schemes; gboolean requires_terminal; /* Padded to avoid future breaks in ABI compatibility */ void *reserved1; void *reserved2; };
struct GnomeVFSMimeAction { GnomeVFSMimeActionType action_type; union { Bonobo_ServerInfo *component; void *dummy_component; GnomeVFSMimeApplication *application; } action;
This data structure describes an action that can be done on a file.
GnomeVFSMimeApplication* gnome_vfs_mime_application_copy (GnomeVFSMimeApplication *application);
Creates a newly referenced copy of a GnomeVFSMimeApplication object.
application : | The GnomeVFSMimeApplication to be duplicated. |
Returns : | A copy of application |
GnomeVFSMimeActionType gnome_vfs_mime_get_default_action_type (const char *mime_type);
Query the MIME database for the type of action to be performed on a particular MIME type by default.
mime_type : | A const char * containing a mime type, e.g. "application/x-php" |
Returns : | The type of action to be performed on a file of MIME type, mime_type by default. |
GnomeVFSMimeAction* gnome_vfs_mime_get_default_action (const char *mime_type);
Query the MIME database for default action associated with a particular MIME type mime_type.
mime_type : | A const char * containing a mime type, e.g. "application/x-php" |
Returns : | A GnomeVFSMimeAction representing the default action to perform upon file of type mime_type. |
GnomeVFSMimeApplication* gnome_vfs_mime_get_default_application (const char *mime_type);
Query the MIME database for the application to be executed on files of MIME type mime_type by default.
mime_type : | A const char * containing a mime type, e.g. "image/png" |
Returns : | A GnomeVFSMimeApplication representing the default handler of mime_type |
Bonobo_ServerInfo* gnome_vfs_mime_get_default_component (const char *mime_type);
Query the MIME database for the default Bonobo component to be activated to view files of MIME type mime_type.
mime_type : | A const char * containing a mime type, e.g. "image/png" |
Returns : | An Bonobo_ServerInfo * representing the OAF server to be activated to get a reference to the proper component. |
GList* gnome_vfs_mime_get_short_list_applications (const char *mime_type);
Return an alphabetically sorted list of GnomeVFSMimeApplication data structures for the requested mime type. GnomeVFS no longer supports the concept of a "short list" of applications that the user might be interested in.
mime_type : | A const char * containing a mime type, e.g. "image/png" |
Returns : | A GList * where the elements are GnomeVFSMimeApplication * representing various applications to display in the short list for mime_type. Deprecated: Use gnome_vfs_mime_get_all_applications() instead. |
GList* gnome_vfs_mime_get_short_list_components (const char *mime_type);
Return an unsorted sorted list of Bonobo_ServerInfo * data structures for the requested mime type. GnomeVFS no longer supports the concept of a "short list" of applications that the user might be interested in.
mime_type : | A const char * containing a mime type, e.g. "image/png" |
Returns : | A GList * where the elements are Bonobo_ServerInfo * representing various components to display in the short list for mime_type. Deprecated: Use gnome_vfs_mime_get_all_components() instead. |
GList* gnome_vfs_mime_get_all_applications (const char *mime_type);
Return an alphabetically sorted list of GnomeVFSMimeApplication data structures representing all applications in the MIME database registered to handle files of MIME type mime_type (and supertypes).
mime_type : | A const char * containing a mime type, e.g. "image/png" |
Returns : | A GList * where the elements are GnomeVFSMimeApplication * representing applications that handle MIME type mime_type. |
GList* gnome_vfs_mime_get_all_components (const char *mime_type);
Return an alphabetically sorted list of Bonobo_ServerInfo data structures representing all Bonobo components registered to handle files of MIME type mime_type (and supertypes).
mime_type : | A const char * containing a mime type, e.g. "image/png" |
Returns : | A GList * where the elements are Bonobo_ServerInfo * representing components that can handle MIME type mime_type. |
GnomeVFSResult gnome_vfs_mime_set_default_action_type (const char *mime_type, GnomeVFSMimeActionType action_type);
Sets the default action type to be performed on files of MIME type mime_type.
mime_type : | A const char * containing a mime type, e.g. "image/png" |
action_type : | A GnomeVFSMimeActionType containing the action to perform by default |
Returns : | A GnomeVFSResult indicating the success of the operation or reporting any errors encountered. |
GnomeVFSResult gnome_vfs_mime_set_default_application (const char *mime_type, const char *application_id);
Sets the default application to be run on files of MIME type mime_type.
mime_type : | A const char * containing a mime type, e.g. "application/x-php" |
application_id : | A key representing an application in the MIME database (GnomeVFSMimeApplication->id, for example) |
Returns : | A GnomeVFSResult indicating the success of the operation or reporting any errors encountered. |
GnomeVFSResult gnome_vfs_mime_set_default_component (const char *mime_type, const char *component_iid);
Sets the default component to be activated for files of MIME type mime_type.
mime_type : | A const char * containing a mime type, e.g. "application/x-php" |
component_iid : | The OAFIID of a component |
Returns : | A GnomeVFSResult indicating the success of the operation or reporting any errors encountered. |
const char* gnome_vfs_mime_get_icon (const char *mime_type);
Query the MIME database for an icon representing the specified MIME type.
mime_type : | A const char * containing a MIME type |
Returns : | The filename of the icon as listed in the MIME database. This is usually a filename without path information, e.g. "i-chardev.png", and sometimes does not have an extension, e.g. "i-regular" if the icon is supposed to be image type agnostic between icon themes. Icons are generic, and not theme specific. These will not necessarily match with the icons a user sees in Nautilus, you have been warned. |
GnomeVFSResult gnome_vfs_mime_set_icon (const char *mime_type, const char *filename);
Set the icon entry for a particular MIME type in the MIME database. Note that icon entries need not necessarily contain the full path, and do not necessarily need to specify an extension. So "i-regular", "my-special-icon.png", and "some-icon" are all valid icon filenames.
mime_type : | A const char * containing a MIME type |
filename : | a const char * containing an image filename |
Returns : | A GnomeVFSResult indicating the success of the operation or any errors that may have occurred. |
const char* gnome_vfs_mime_get_description (const char *mime_type);
Query the MIME database for a description of the specified MIME type.
mime_type : | the mime type |
Returns : | A description of MIME type mime_type |
GnomeVFSResult gnome_vfs_mime_set_description (const char *mime_type, const char *description);
Set the description of this MIME type in the MIME database. The description should be something like "Gnumeric spreadsheet".
mime_type : | A const char * containing a mime type |
description : | A description of this MIME type |
Returns : | GnomeVFSResult indicating the success of the operation or any errors that may have occurred. |
gboolean gnome_vfs_mime_can_be_executable (const char *mime_type);
Check whether files of this MIME type might conceivably be executable. Default for known types if FALSE. Default for unknown types is TRUE.
mime_type : | A const char * containing a mime type |
Returns : | gboolean containing TRUE if some files of this MIME type are registered as being executable, and false otherwise. |
GnomeVFSResult gnome_vfs_mime_set_can_be_executable (const char *mime_type, gboolean new_value);
Set whether files of this MIME type might conceivably be executable.
mime_type : | A const char * containing a mime type |
new_value : | A boolean value indicating whether mime_type could be executable. |
Returns : | GnomeVFSResult indicating the success of the operation or any errors that may have occurred. |
GnomeVFSResult gnome_vfs_mime_set_short_list_applications (const char *mime_type, GList *application_ids);
Set the short list of applications for the specified MIME type. The short list contains applications recommended for possible selection by the user.
mime_type : | A const char * containing a mime type, e.g. "application/x-php" |
application_ids : | GList of const char * application ids |
Returns : | A GnomeVFSResult indicating the success of the operation or reporting any errors encountered. |
GnomeVFSResult gnome_vfs_mime_set_short_list_components (const char *mime_type, GList *component_iids);
Set the short list of components for the specified MIME type. The short list contains companents recommended for possible selection by the user. *
mime_type : | A const char * containing a mime type, e.g. "application/x-php" |
component_iids : | GList of const char * OAF IIDs |
Returns : | A GnomeVFSResult indicating the success of the operation or reporting any errors encountered. |
GnomeVFSResult gnome_vfs_mime_add_application_to_short_list (const char *mime_type, const char *application_id);
Add an application to the short list for MIME type mime_type. The short list contains applications recommended for display as choices to the user for a particular MIME type.
mime_type : | A const char * containing a mime type, e.g. "application/x-php" |
application_id : | const char * containing the application's id in the MIME database |
Returns : | A GnomeVFSResult indicating the success of the operation or reporting any errors encountered. |
GnomeVFSResult gnome_vfs_mime_remove_application_from_short_list (const char *mime_type, const char *application_id);
Remove an application from the short list for MIME type mime_type. The short list contains applications recommended for display as choices to the user for a particular MIME type.
mime_type : | A const char * containing a mime type, e.g. "application/x-php" |
application_id : | const char * containing the application's id in the MIME database |
Returns : | A GnomeVFSResult indicating the success of the operation or reporting any errors encountered. |
GnomeVFSResult gnome_vfs_mime_add_component_to_short_list (const char *mime_type, const char *iid);
Add a component to the short list for MIME type mime_type. The short list contains components recommended for display as choices to the user for a particular MIME type.
mime_type : | A const char * containing a mime type, e.g. "application/x-php" |
iid : | const char * containing the component's OAF IID |
Returns : | A GnomeVFSResult indicating the success of the operation or reporting any errors encountered. |
GnomeVFSResult gnome_vfs_mime_remove_component_from_short_list (const char *mime_type, const char *iid);
Remove a component from the short list for MIME type mime_type. The short list contains components recommended for display as choices to the user for a particular MIME type.
mime_type : | A const char * containing a mime type, e.g. "application/x-php" |
iid : | const char * containing the component's OAF IID |
Returns : | A GnomeVFSResult indicating the success of the operation or reporting any errors encountered. |
GnomeVFSResult gnome_vfs_mime_add_extension (const char *mime_type, const char *extension);
Add a file extension to the specificed MIME type in the MIME database.
mime_type : | The mime type to add the mapping to. |
extension : | The extension to add (e.g. "txt") |
Returns : | GnomeVFSResult indicating the success of the operation or any errors that may have occurred. |
GnomeVFSResult gnome_vfs_mime_remove_extension (const char *mime_type, const char *extension);
Removes a file extension from the specificed MIME type in the MIME database.
mime_type : | The mime type to remove the extension from |
extension : | The extension to remove |
Returns : | GnomeVFSResult indicating the success of the operation or any errors that may have occurred. |
GnomeVFSResult gnome_vfs_mime_extend_all_applications (const char *mime_type, GList *application_ids);
Register mime_type as being handled by all applications list in application_ids.
mime_type : | A const char * containing a mime type, e.g. "application/x-php" |
application_ids : | a GList of const char * containing application ids |
Returns : | A GnomeVFSResult indicating the success of the operation or reporting any errors encountered. |
GnomeVFSResult gnome_vfs_mime_remove_from_all_applications (const char *mime_type, GList *application_ids);
Remove mime_type as a handled type from every application in application_ids
mime_type : | A const char * containing a mime type, e.g. "application/x-php" |
application_ids : | a GList of const char * containing application ids |
Returns : | A GnomeVFSResult indicating the success of the operation or reporting any errors encountered. |
GnomeVFSMimeApplication* gnome_vfs_mime_application_new_from_id (const char *id);
Fetches the GnomeVFSMimeApplication associated with the specified application ID from the MIME database.
id : | A const char * containing an application id |
Returns : | GnomeVFSMimeApplication * corresponding to id |
void gnome_vfs_mime_application_free (GnomeVFSMimeApplication *application);
Frees a GnomeVFSMimeApplication *.
application : | The GnomeVFSMimeApplication to be freed |
void gnome_vfs_mime_action_free (GnomeVFSMimeAction *action);
Frees a GnomeVFSMimeAction *.
action : | The GnomeVFSMimeAction to be freed |
void gnome_vfs_mime_application_list_free (GList *list);
Frees lists of GnomeVFSApplications, as returned from functions such as gnome_vfs_get_all_applications().
list : | a GList of GnomeVFSApplication * to be freed |
void gnome_vfs_mime_component_list_free (GList *list);
Frees lists of Bonobo_ServerInfo * (as returned from functions such as gnome_vfs_get_all_components)
list : | a GList of Bonobo_ServerInfo * to be freed |
gboolean gnome_vfs_mime_id_in_application_list (const char *id, GList *applications);
Check whether an application id is in a list of GnomeVFSMimeApplications.
id : | An application id. |
applications : | A GList * whose nodes are GnomeVFSMimeApplications, such as the result of gnome_vfs_mime_get_short_list_applications(). |
Returns : | TRUE if an application whose id matches id is in applications. |
gboolean gnome_vfs_mime_id_in_component_list (const char *iid, GList *components);
Check whether a component iid is in a list of Bonobo_ServerInfos.
iid : | A component iid. |
components : | A GList * whose nodes are Bonobo_ServerInfos, such as the result of gnome_vfs_mime_get_short_list_components(). |
Returns : | TRUE if a component whose iid matches iid is in components. |
GList* gnome_vfs_mime_remove_application_from_list (GList *applications, const char *application_id, gboolean *did_remove);
Remove an application specified by id from a list of GnomeVFSMimeApplications.
applications : | A GList * whose nodes are GnomeVFSMimeApplications, such as the result of gnome_vfs_mime_get_short_list_applications(). |
application_id : | The id of an application to remove from applications. |
did_remove : | If non-NULL, this is filled in with TRUE if the application was found in the list, FALSE otherwise. |
Returns : | The modified list. If the application is not found, the list will be unchanged. |
GList* gnome_vfs_mime_remove_component_from_list (GList *components, const char *iid, gboolean *did_remove);
Remove a component specified by iid from a list of Bonobo_ServerInfos.
components : | A GList * whose nodes are Bonobo_ServerInfos, such as the result of gnome_vfs_mime_get_short_list_components(). |
iid : | The iid of a component to remove from components. |
did_remove : | If non-NULL, this is filled in with TRUE if the component was found in the list, FALSE otherwise. |
Returns : | The modified list. If the component is not found, the list will be unchanged. |
GList* gnome_vfs_mime_id_list_from_component_list (GList *components);
Create a list of component iids from a list of Bonobo_ServerInfos.
components : | A GList * whose nodes are Bonobo_ServerInfos, such as the result of gnome_vfs_mime_get_short_list_components(). |
Returns : | A new list where each Bonobo_ServerInfo in the original list is replaced by a char * with the component's iid. The original list is not modified. |
GList* gnome_vfs_mime_id_list_from_application_list (GList *applications);
Create a list of application ids from a list of GnomeVFSMimeApplications.
applications : | A GList * whose nodes are GnomeVFSMimeApplications, such as the result of gnome_vfs_mime_get_short_list_applications(). |
Returns : | A new list where each GnomeVFSMimeApplication in the original list is replaced by a char * with the application's id. The original list is not modified. |
void gnome_vfs_mime_freeze (void);
Freezes the mime data so that you can do multiple updates to the dat in one batch without needing to back the files to disk or readind them
void gnome_vfs_mime_thaw (void);
UnFreezes the mime data so that you can do multiple updates to the dat in one batch without needing to back the files to disk or readind them
void gnome_vfs_mime_info_reload (void);
Reload the MIME database from disk and notify any listeners holding active GnomeVFSMIMEMonitor objects.
gboolean gnome_vfs_mime_type_is_known (const char *mime_type);
This function returns TRUE if mime_type is in the MIME database at all.
mime_type : | a mime type. |
Returns : | TRUE if anything is known about mime_type, otherwise FALSE |
const char* gnome_vfs_mime_get_value (const char *mime_type, const char *key);
This function retrieves the value associated with key in the given GnomeMimeContext. The string is private, you should not free the result.
mime_type : | a mime type. |
key : | A key to lookup for the given mime-type |
Returns : | GNOME_VFS_OK if the operation succeeded, otherwise an error code |
GnomeVFSResult gnome_vfs_mime_set_value (const char *mime_type, const char *key, const char *value);
This function is going to set the value associated to the key and it will save it to the user' file if necessary. You should not free the key/values passed to this function. They are used internally.
mime_type : | a mime type. |
key : | a key to store the value in. |
value : | the value to store in the key. |
Returns : | GNOME_VFS_OK if the operation succeeded, otherwise an error code |
GList* gnome_vfs_mime_get_key_list (const char *mime_type);
mime_type : | |
Returns : |
void gnome_vfs_mime_keys_list_free (GList *mime_type_list);
mime_type_list : |
GList* gnome_vfs_mime_get_extensions_list (const char *mime_type);
Get the file extensions associated with mime type mime_type.
mime_type : | type to get the extensions of |
Returns : | a GList of char *s |
void gnome_vfs_mime_extensions_list_free (GList *list);
Call this function on the list returned by gnome_vfs_mime_extensions to free the list and all of its elements.
list : | the extensions list |
char* gnome_vfs_mime_get_extensions_string (const char *mime_type);
mime_type : | |
Returns : |
char* gnome_vfs_mime_get_extensions_pretty_string (const char *mime_type);
mime_type : | |
Returns : |
void gnome_vfs_mime_registered_mime_type_list_free (GList *list);
list : |
GnomeVFSResult gnome_vfs_mime_set_registered_type_key (const char *mime_type, const char *key, const char *data);
mime_type : | |
key : | |
data : | |
Returns : |
GnomeVFSResult gnome_vfs_mime_set_extensions_list (const char *mime_type, const char *extensions_list);
mime_type : | |
extensions_list : | |
Returns : |
void gnome_vfs_mime_registered_mime_type_delete (const char *mime_type);
mime_type : |
<< Application Registry | MIME Database Monitor >> |