2008-12-06 10:51:04 -08:00
|
|
|
#ifndef E_MOD_PLACES_H
|
|
|
|
#define E_MOD_PLACES_H
|
|
|
|
|
2011-08-27 20:22:49 -07:00
|
|
|
typedef enum
|
|
|
|
{
|
|
|
|
MOUNT_OP_NONE,
|
|
|
|
MOUNT_OP_MOUNT,
|
|
|
|
MOUNT_OP_UMOUNT,
|
|
|
|
MOUNT_OP_EJECT
|
|
|
|
} Mount_Op;
|
2008-12-06 10:51:04 -08:00
|
|
|
|
2012-01-21 16:06:46 -08:00
|
|
|
typedef struct _Volume Volume;
|
|
|
|
struct _Volume
|
2008-12-06 10:51:04 -08:00
|
|
|
{
|
2012-01-21 16:06:46 -08:00
|
|
|
const char *id;
|
|
|
|
|
2008-12-06 10:51:04 -08:00
|
|
|
const char *label;
|
2012-01-21 16:06:46 -08:00
|
|
|
const char *icon;
|
2012-01-17 13:46:33 -08:00
|
|
|
const char *device;
|
2008-12-06 10:51:04 -08:00
|
|
|
const char *mount_point;
|
|
|
|
const char *fstype;
|
2010-01-11 02:23:02 -08:00
|
|
|
unsigned long long size;
|
2012-01-21 16:06:46 -08:00
|
|
|
unsigned long long free_space;
|
|
|
|
Eina_Bool mounted;
|
2010-12-05 01:39:05 -08:00
|
|
|
|
2008-12-06 10:51:04 -08:00
|
|
|
const char *bus;
|
|
|
|
const char *drive_type;
|
|
|
|
const char *model;
|
|
|
|
const char *vendor;
|
|
|
|
const char *serial;
|
|
|
|
unsigned char removable;
|
|
|
|
unsigned char requires_eject;
|
2011-08-27 20:22:49 -07:00
|
|
|
Eina_Bool unlocked;
|
|
|
|
Eina_Bool encrypted;
|
2010-12-05 01:39:05 -08:00
|
|
|
|
2012-01-26 13:20:55 -08:00
|
|
|
Eina_Bool valid;
|
|
|
|
Eina_Bool to_mount;
|
|
|
|
Eina_Bool force_open;
|
2012-01-21 16:06:46 -08:00
|
|
|
Eina_List *objs;
|
2010-12-05 01:39:05 -08:00
|
|
|
|
2012-01-21 16:06:46 -08:00
|
|
|
void (*mount_func)(Volume *vol, Eina_List *opts);
|
|
|
|
void (*unmount_func)(Volume *vol, Eina_List *opts);
|
|
|
|
void (*eject_func)(Volume *vol, Eina_List *opts);
|
2013-04-18 14:26:06 -07:00
|
|
|
void (*free_func)(Volume *vol);
|
|
|
|
void *backend_data;
|
2012-01-21 16:06:46 -08:00
|
|
|
};
|
2008-12-06 10:51:04 -08:00
|
|
|
|
|
|
|
void places_init(void);
|
|
|
|
void places_shutdown(void);
|
2012-01-21 16:06:46 -08:00
|
|
|
|
2012-07-26 14:08:02 -07:00
|
|
|
Volume *places_volume_add(const char *id, Eina_Bool first_time);
|
2012-01-21 16:06:46 -08:00
|
|
|
void places_volume_del(Volume *v);
|
|
|
|
void places_volume_update(Volume *vol);
|
|
|
|
Volume *places_volume_by_id_get(const char *id);
|
|
|
|
Eina_List *places_volume_list_get(void);
|
|
|
|
void places_volume_mount(Volume *vol);
|
|
|
|
void places_volume_unmount(Volume *vol);
|
|
|
|
void places_volume_eject(Volume *vol);
|
|
|
|
|
2008-12-06 10:51:04 -08:00
|
|
|
void places_update_all_gadgets(void);
|
|
|
|
void places_fill_box(Evas_Object *box);
|
|
|
|
void places_empty_box(Evas_Object *box);
|
2012-01-21 16:06:46 -08:00
|
|
|
void places_print_volume(Volume *v);
|
2008-12-06 10:51:04 -08:00
|
|
|
|
|
|
|
void places_generate_menu(void *data, E_Menu *em);
|
|
|
|
void places_augmentation(void *data, E_Menu *em);
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|
2010-12-05 01:39:05 -08:00
|
|
|
|