Data Structures | Macros | Typedefs | Functions | Variables
efreet_desktop.h File Reference

Contains the structures and methods used to support the FDO desktop entry specificiation. More...

Data Structures

struct  _Efreet_Desktop_Action
 Efreet_Desktop_Action. More...
 
struct  _Efreet_Desktop
 Efreet_Desktop. More...
 

Macros

#define efreet_desktop_unref(desktop)   efreet_desktop_free((desktop))
 Alias for efreet_desktop_free(desktop)
 

Typedefs

typedef struct _Efreet_Desktop_Action Efreet_Desktop_Action
 Efreet_Desktop_Action. More...
 
typedef struct _Efreet_Desktop Efreet_Desktop
 Efreet_Desktop.
 
typedef void *(* Efreet_Desktop_Command_Cb) (void *data, Efreet_Desktop *desktop, char *command, int remaining)
 A callback used with efreet_desktop_command_get()
 
typedef int(* Efreet_Desktop_Progress_Cb) (void *data, Efreet_Desktop *desktop, char *uri, long int total, long int current)
 A callback used to get download progress of remote uris.
 
typedef void *(* Efreet_Desktop_Type_Parse_Cb) (Efreet_Desktop *desktop, Efreet_Ini *ini)
 A callback used to parse data for custom types.
 
typedef void(* Efreet_Desktop_Type_Save_Cb) (Efreet_Desktop *desktop, Efreet_Ini *ini)
 A callback used to save data for custom types.
 
typedef void *(* Efreet_Desktop_Type_Free_Cb) (void *data)
 A callback used to free data for custom types.
 

Functions

Efreet_Desktopefreet_desktop_get (const char *file)
 Gets a reference to an Efreet_Desktop structure representing the contents of file or NULL if file is not a valid .desktop file. More...
 
int efreet_desktop_ref (Efreet_Desktop *desktop)
 Increases reference count on desktop. More...
 
Efreet_Desktopefreet_desktop_empty_new (const char *file)
 Creates a new empty Efreet_Desktop structure or NULL on failure. More...
 
Efreet_Desktopefreet_desktop_new (const char *file)
 Gets a reference to an Efreet_Desktop structure representing the contents of file or NULL if file is not a valid .desktop file. More...
 
Efreet_Desktopefreet_desktop_uncached_new (const char *file)
 Creates a new Efreet_Desktop structure initialized from the contents of file or NULL on failure. More...
 
void efreet_desktop_free (Efreet_Desktop *desktop)
 Frees the Efreet_Desktop structure and all of it's data. More...
 
int efreet_desktop_save (Efreet_Desktop *desktop)
 Saves any changes made to desktop back to the file on the filesystem. More...
 
int efreet_desktop_save_as (Efreet_Desktop *desktop, const char *file)
 Saves desktop to file. More...
 
void efreet_desktop_exec (Efreet_Desktop *desktop, Eina_List *files, void *data)
 Parses the desktop exec line and runs the command. More...
 
void efreet_desktop_environment_set (const char *environment)
 sets the global desktop environment name More...
 
const char * efreet_desktop_environment_get (void)
 gets the global desktop environment name (e.g. "Enlightenment" or "Gnome") More...
 
void * efreet_desktop_command_progress_get (Efreet_Desktop *desktop, Eina_List *files, Efreet_Desktop_Command_Cb cb_command, Efreet_Desktop_Progress_Cb cb_prog, void *data)
 Get a command to use to execute a desktop entry, and receive progress updates for downloading of remote URI's passed in. More...
 
void * efreet_desktop_command_get (Efreet_Desktop *desktop, Eina_List *files, Efreet_Desktop_Command_Cb func, void *data)
 Get a command to use to execute a desktop entry. More...
 
Eina_Listefreet_desktop_command_local_get (Efreet_Desktop *desktop, Eina_List *files)
 Get the command to use to execute a desktop entry. More...
 
unsigned int efreet_desktop_category_count_get (Efreet_Desktop *desktop)
 Retrieves the number of categories the given desktop belongs too. More...
 
void efreet_desktop_category_add (Efreet_Desktop *desktop, const char *category)
 add a category to a desktop More...
 
int efreet_desktop_category_del (Efreet_Desktop *desktop, const char *category)
 removes a category from a desktop More...
 
int efreet_desktop_type_add (const char *type, Efreet_Desktop_Type_Parse_Cb parse_func, Efreet_Desktop_Type_Save_Cb save_func, Efreet_Desktop_Type_Free_Cb free_func)
 Adds the given type to the list of types in the system. More...
 
int efreet_desktop_type_alias (int from_type, const char *alias)
 Add an alias for an existing desktop type. More...
 
void * efreet_desktop_type_data_get (Efreet_Desktop *desktop)
 get type specific data for custom desktop types More...
 
Eina_Listefreet_desktop_string_list_parse (const char *string)
 Parse ';' separate list of strings according to the desktop spec. More...
 
char * efreet_desktop_string_list_join (Eina_List *list)
 Create a ';' separate list of strings according to the desktop spec. More...
 
Eina_Bool efreet_desktop_x_field_set (Efreet_Desktop *desktop, const char *key, const char *data)
 Set the value for a X- field (Non spec) in the structure. More...
 
const char * efreet_desktop_x_field_get (Efreet_Desktop *desktop, const char *key)
 Get the value for a X- field (Non spec) in the structure. More...
 
Eina_Bool efreet_desktop_x_field_del (Efreet_Desktop *desktop, const char *key)
 Delete the key and value for a X- field (Non spec) in the structure. More...
 

Variables

int EFREET_DESKTOP_TYPE_APPLICATION
 
int EFREET_DESKTOP_TYPE_LINK
 
int EFREET_DESKTOP_TYPE_DIRECTORY
 
int EFREET_EVENT_DESKTOP_CACHE_UPDATE
 Event id for cache update. More...
 
int EFREET_EVENT_DESKTOP_CACHE_BUILD
 Event id for cache build complete. More...
 

Detailed Description

Contains the structures and methods used to support the FDO desktop entry specificiation.