News

Documentation

Efreet_Desktop: The FDO Desktop Entry


Detailed Description

Specification functions and structures


Data Structures

struct  Efreet_Desktop
 a parsed representation of a .desktop file More...

Typedefs

typedef Efreet_Desktop Efreet_Desktop
typedef void(*) Efreet_Desktop_Command_Cb (void *data, Efreet_Desktop *desktop, char *command, int remaining)
typedef int(*) Efreet_Desktop_Progress_Cb (void *data, Efreet_Desktop *desktop, char *uri, long int total, long int current)
typedef enum Efreet_Desktop_Type Efreet_Desktop_Type
typedef void *(*) Efreet_Desktop_Type_Free_Cb (void *data)
typedef void *(*) Efreet_Desktop_Type_Parse_Cb (Efreet_Desktop *desktop, Efreet_Ini *ini)
typedef void(*) Efreet_Desktop_Type_Save_Cb (Efreet_Desktop *desktop, Efreet_Ini *ini)

Functions

void efreet_desktop_category_add (Efreet_Desktop *desktop, const char *category)
 add a category to a desktop
unsigned int efreet_desktop_category_count_get (Efreet_Desktop *desktop)
 Retrieves the number of categories the given desktop belongs too.
int efreet_desktop_category_del (Efreet_Desktop *desktop, const char *category)
 removes a category from a desktop
int efreet_desktop_command_get (Efreet_Desktop *desktop, Ecore_List *files, Efreet_Desktop_Command_Cb func, void *data)
 Get a command to use to execute a desktop entry.
int efreet_desktop_command_progress_get (Efreet_Desktop *desktop, Ecore_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.
Efreet_Desktopefreet_desktop_empty_new (const char *file)
 Creates a new empty Efreet_Desktop structure or NULL on failure.
void efreet_desktop_environment_set (const char *environment)
void efreet_desktop_exec (Efreet_Desktop *desktop, Ecore_List *files, void *data)
 Parses the desktop exec line and returns an Ecore_Exe.
void efreet_desktop_free (Efreet_Desktop *desktop)
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.
int efreet_desktop_save (Efreet_Desktop *desktop)
 Saves any changes made to desktop back to the file on the filesystem.
int efreet_desktop_save_as (Efreet_Desktop *desktop, const char *file)
 Saves desktop to file.
char * efreet_desktop_string_list_join (Ecore_List *list)
 Create a ';' separate list of strings according to the desktop spec.
Ecore_List * efreet_desktop_string_list_parse (const char *string)
 Parse ';' separate list of strings according to the desktop spec.
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.
void * efreet_desktop_type_data_get (Efreet_Desktop *desktop)
 get type specific data for custom desktop types

Variables

int EFREET_DESKTOP_TYPE_APPLICATION
int EFREET_DESKTOP_TYPE_DIRECTORY
int EFREET_DESKTOP_TYPE_LINK

Typedef Documentation

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

Efreet_Desktop_Type

typedef void*(*) Efreet_Desktop_Type_Free_Cb(void *data)

A callback used to free data for custom types

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


Function Documentation

void efreet_desktop_category_add ( Efreet_Desktop desktop,
const char *  category 
)

add a category to a desktop

Parameters:
desktop,: the desktop
category,: the category name

unsigned int efreet_desktop_category_count_get ( Efreet_Desktop desktop  ) 

Retrieves the number of categories the given desktop belongs too.

Parameters:
desktop,: The desktop to work with
Returns:
Returns the number of categories assigned to this desktop

int efreet_desktop_category_del ( Efreet_Desktop desktop,
const char *  category 
)

removes a category from a desktop

Parameters:
desktop,: the desktop
category,: the category name
Returns:
1 if the desktop had his category listed, 0 otherwise

int efreet_desktop_command_get ( Efreet_Desktop desktop,
Ecore_List *  files,
Efreet_Desktop_Command_Cb  func,
void *  data 
)

Get a command to use to execute a desktop entry.

Parameters:
desktop,: the desktop entry
files,: an ecore list of file names to execute, as either absolute paths, relative paths, or uris
func,: a callback to call for each prepared command line
data,: user data passed to the callback
Returns:
Returns 1 on success or 0 on failure

int efreet_desktop_command_progress_get ( Efreet_Desktop desktop,
Ecore_List *  files,
Efreet_Desktop_Command_Cb  cb_command,
Efreet_Desktop_Progress_Cb  cb_progress,
void *  data 
)

Get a command to use to execute a desktop entry, and receive progress updates for downloading of remote URI's passed in.

Parameters:
desktop,: the desktop entry
files,: an ecore list of file names to execute, as either absolute paths, relative paths, or uris
cb_command,: a callback to call for each prepared command line
cb_progress,: a callback to get progress for the downloads
data,: user data passed to the callback
Returns:
Returns 1 on success or 0 on failure

Efreet_Desktop* efreet_desktop_empty_new ( const char *  file  ) 

Creates a new empty Efreet_Desktop structure or NULL on failure.

Parameters:
file,: The file to create the Efreet_Desktop from
Returns:
Returns a new empty_Efreet_Desktop on success, NULL on failure

void efreet_desktop_environment_set ( const char *  environment  ) 

void efreet_desktop_exec ( Efreet_Desktop desktop,
Ecore_List *  files,
void *  data 
)

Parses the desktop exec line and returns an Ecore_Exe.

Parameters:
desktop,: The desktop file to work with
files,: The files to be substituted into the exec line data: The data pointer to pass
Returns:
Returns the Ecore_Exce for desktop

void efreet_desktop_free ( Efreet_Desktop desktop  ) 

Efreet_Desktop* efreet_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.

Parameters:
file,: The file to get the Efreet_Desktop from
Returns:
Returns a reference to a cached Efreet_Desktop on success, NULL on failure. This reference should not be freed.

int efreet_desktop_save ( Efreet_Desktop desktop  ) 

Saves any changes made to desktop back to the file on the filesystem.

Parameters:
desktop,: The desktop file to save
Returns:
Returns 1 on success or 0 on failure

int efreet_desktop_save_as ( Efreet_Desktop desktop,
const char *  file 
)

Saves desktop to file.

Parameters:
desktop,: The desktop file to save
file,: The filename to save as
Returns:
Returns 1 on success or 0 on failure

char* efreet_desktop_string_list_join ( Ecore_List *  list  ) 

Create a ';' separate list of strings according to the desktop spec.

Parameters:
list,: Ecore_List with strings
Returns:
a raw string list

Ecore_List* efreet_desktop_string_list_parse ( const char *  string  ) 

Parse ';' separate list of strings according to the desktop spec.

Parameters:
string,: the raw string list
Returns:
an Ecore_List of ecore string's

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.

Parameters:
type,: The type to add to the list of matching types
parse_func,: a function to parse out custom fields
save_func,: a function to save data returned from parse_func
free_func,: a function to free data returned from parse_func
Returns:
Returns the id of the new type

void* efreet_desktop_type_data_get ( Efreet_Desktop desktop  ) 

get type specific data for custom desktop types

Parameters:
desktop the desktop
Returns:
type specific data, or NULL if there is none


Variable Documentation


Copyright © Enlightenment.org

Efreet Documentation Generated: Sat Apr 7 17:55:55 2007