Efreet_Trash: The XDG Trash Specification

Functions

EAPI int efreet_trash_delete_uri (Efreet_Uri *uri, int force_delete)
 This function try to move the given uri to the trash. Files on different filesystem can't be moved to trash. If force_delete is 0 than non-local files will be ignored and -1 is returned, if you set force_delete to 1 non-local files will be deleted without asking.
EAPI const char * efreet_trash_dir_get (const char *for_file)
 Retrieves the XDG Trash local directory.
EAPI int efreet_trash_empty_trash (void)
 Delete all the files inside the trash.
EAPI int efreet_trash_init (void)
 Initializes the efreet trash system.
EAPI int efreet_trash_is_empty (void)
 Check if the trash is currently empty.
EAPI Eina_List * efreet_trash_ls (void)
 List all the files and directory currently inside the trash.
EAPI int efreet_trash_shutdown (void)
 Cleans up the efreet trash system.

Detailed Description

Efreet_Trash.h provides all of the necessary headers and includes to work with Efreet_Trash.


Function Documentation

EAPI int efreet_trash_delete_uri ( Efreet_Uri uri,
int  force_delete 
)

This function try to move the given uri to the trash. Files on different filesystem can't be moved to trash. If force_delete is 0 than non-local files will be ignored and -1 is returned, if you set force_delete to 1 non-local files will be deleted without asking.

Parameters:
uri The local uri to move in the trash
force_delete If you set this to 1 than files on different filesystems will be deleted permanently
Returns:
Return 1 on success, 0 on failure or -1 in case the uri is not on the same filesystem and force_delete is not set.

References efreet_trash_dir_get(), efreet_uri_encode(), ERR, IF_RELEASE, and Efreet_Uri::path.

EAPI const char* efreet_trash_dir_get ( const char *  file  ) 

Retrieves the XDG Trash local directory.

Returns:
Returns the XDG Trash local directory or NULL on errors return value must be freed with eina_stringshare_del.

References efreet_data_home_get(), and IF_RELEASE.

Referenced by efreet_trash_delete_uri(), efreet_trash_empty_trash(), efreet_trash_is_empty(), and efreet_trash_ls().

EAPI int efreet_trash_empty_trash ( void   ) 

Delete all the files inside the trash.

Returns:
Return 1 on success or 0 on failure

References efreet_trash_dir_get().

EAPI int efreet_trash_init ( void   ) 

Initializes the efreet trash system.

Returns:
Returns 1 on success or 0 on failure

References ERROR.

EAPI int efreet_trash_is_empty ( void   ) 

Check if the trash is currently empty.

Returns:
Return 1 if the trash is empty or 0 if some file are in.

References efreet_trash_dir_get().

EAPI Eina_List* efreet_trash_ls ( void   ) 

List all the files and directory currently inside the trash.

Returns:
Return a list of strings with filename (remember to free the list when you don't need anymore)

References efreet_trash_dir_get().

EAPI int efreet_trash_shutdown ( void   ) 

Cleans up the efreet trash system.

Returns:
Returns no value

References IF_RELEASE.