2006-07-09 11:35:57 -07:00
|
|
|
/*
|
|
|
|
* vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
|
|
|
|
*/
|
|
|
|
#ifdef E_TYPEDEFS
|
|
|
|
|
|
|
|
/* IGNORE this code for now! */
|
|
|
|
|
|
|
|
typedef enum _E_Fm2_View_Mode
|
|
|
|
{
|
2006-07-15 14:39:15 -07:00
|
|
|
E_FM2_VIEW_MODE_ICONS, /* regular layout row by row like text */
|
|
|
|
E_FM2_VIEW_MODE_GRID_ICONS, /* regular grid layout */
|
|
|
|
E_FM2_VIEW_MODE_CUSTOM_ICONS, /* icons go anywhere u drop them (desktop) */
|
|
|
|
E_FM2_VIEW_MODE_CUSTOM_GRID_ICONS, /* icons go anywhere u drop them but align to a grid */
|
|
|
|
E_FM2_VIEW_MODE_CUSTOM_SMART_GRID_ICONS, /* icons go anywhere u drop them but try align to icons nearby */
|
|
|
|
E_FM2_VIEW_MODE_LIST /* vertical fileselector list */
|
2006-07-09 11:35:57 -07:00
|
|
|
} E_Fm2_View_Mode;
|
|
|
|
|
2006-07-22 14:48:24 -07:00
|
|
|
typedef struct _E_Fm2_Config E_Fm2_Config;
|
|
|
|
typedef struct _E_Fm2_Icon_Info E_Fm2_Icon_Info;
|
2006-07-17 03:31:50 -07:00
|
|
|
|
2006-07-09 11:35:57 -07:00
|
|
|
#else
|
|
|
|
#ifndef E_FM_H
|
|
|
|
#define E_FM_H
|
|
|
|
|
2006-07-17 03:31:50 -07:00
|
|
|
struct _E_Fm2_Config
|
|
|
|
{
|
|
|
|
/* general view mode */
|
|
|
|
struct {
|
|
|
|
E_Fm2_View_Mode mode;
|
|
|
|
unsigned char open_dirs_in_place;
|
|
|
|
unsigned char selector;
|
2006-07-19 12:38:29 -07:00
|
|
|
unsigned char single_click;
|
|
|
|
unsigned char no_subdir_jump;
|
2006-09-28 21:36:35 -07:00
|
|
|
unsigned char no_subdir_drop;
|
2006-08-31 05:51:54 -07:00
|
|
|
const char *extra_file_source;
|
2006-07-17 03:31:50 -07:00
|
|
|
} view;
|
|
|
|
/* display of icons */
|
|
|
|
struct {
|
|
|
|
struct {
|
|
|
|
int w, h;
|
|
|
|
} icon;
|
|
|
|
struct {
|
|
|
|
int w, h;
|
|
|
|
} list;
|
|
|
|
struct {
|
|
|
|
unsigned char w;
|
|
|
|
unsigned char h;
|
|
|
|
} fixed;
|
|
|
|
struct {
|
|
|
|
unsigned char show;
|
|
|
|
} extension;
|
2006-08-26 04:06:05 -07:00
|
|
|
const char *key_hint;
|
2006-07-17 03:31:50 -07:00
|
|
|
} icon;
|
|
|
|
/* how to sort files */
|
|
|
|
struct {
|
|
|
|
struct {
|
|
|
|
unsigned char no_case;
|
|
|
|
struct {
|
|
|
|
unsigned char first;
|
|
|
|
unsigned char last;
|
|
|
|
} dirs;
|
|
|
|
} sort;
|
|
|
|
} list;
|
|
|
|
/* control how you can select files */
|
|
|
|
struct {
|
|
|
|
unsigned char single;
|
|
|
|
unsigned char windows_modifiers;
|
|
|
|
} selection;
|
|
|
|
/* the background - if any, and how to handle it */
|
|
|
|
/* FIXME: not implemented yet */
|
|
|
|
struct {
|
2006-07-28 04:44:23 -07:00
|
|
|
const char *background;
|
|
|
|
const char *frame;
|
|
|
|
const char *icons;
|
2006-07-17 03:31:50 -07:00
|
|
|
unsigned char fixed;
|
|
|
|
} theme;
|
|
|
|
/* used internally only - used to save to disk only and laod from disk */
|
|
|
|
/* FIXME: not implemented yet */
|
|
|
|
struct {
|
|
|
|
int x, y, w, h;
|
|
|
|
struct {
|
|
|
|
int w, h;
|
|
|
|
} res;
|
|
|
|
int screen;
|
|
|
|
} geometry;
|
|
|
|
};
|
|
|
|
|
2006-07-22 14:48:24 -07:00
|
|
|
struct _E_Fm2_Icon_Info
|
|
|
|
{
|
|
|
|
const char *file;
|
|
|
|
const char *mime;
|
|
|
|
const char *label;
|
|
|
|
const char *comment;
|
|
|
|
const char *generic;
|
|
|
|
const char *icon;
|
|
|
|
const char *link;
|
2006-09-03 08:57:13 -07:00
|
|
|
const char *pseudo_dir;
|
2006-07-22 14:48:24 -07:00
|
|
|
struct stat statinfo;
|
|
|
|
unsigned char mount : 1;
|
2006-08-30 07:45:33 -07:00
|
|
|
unsigned char pseudo_link : 1;
|
2006-07-22 14:48:24 -07:00
|
|
|
};
|
|
|
|
|
2006-07-09 11:35:57 -07:00
|
|
|
EAPI int e_fm2_init(void);
|
|
|
|
EAPI int e_fm2_shutdown(void);
|
|
|
|
EAPI Evas_Object *e_fm2_add(Evas *evas);
|
2006-08-17 10:01:11 -07:00
|
|
|
EAPI void e_fm2_path_set(Evas_Object *obj, const char *dev, const char *path);
|
2006-07-17 03:31:50 -07:00
|
|
|
EAPI void e_fm2_path_get(Evas_Object *obj, const char **dev, const char **path);
|
2006-08-12 05:49:52 -07:00
|
|
|
EAPI void e_fm2_refresh(Evas_Object *obj);
|
2006-07-22 14:48:24 -07:00
|
|
|
EAPI const char *e_fm2_real_path_get(Evas_Object *obj);
|
2006-07-19 12:38:29 -07:00
|
|
|
EAPI int e_fm2_has_parent_get(Evas_Object *obj);
|
|
|
|
EAPI void e_fm2_parent_go(Evas_Object *obj);
|
2006-07-22 14:48:24 -07:00
|
|
|
EAPI void e_fm2_config_set(Evas_Object *obj, E_Fm2_Config *cfg);
|
|
|
|
EAPI E_Fm2_Config *e_fm2_config_get(Evas_Object *obj);
|
|
|
|
EAPI Evas_List *e_fm2_selected_list_get(Evas_Object *obj);
|
|
|
|
EAPI Evas_List *e_fm2_all_list_get(Evas_Object *obj);
|
2006-08-21 08:52:58 -07:00
|
|
|
EAPI void e_fm2_select_set(Evas_Object *obj, const char *file, int select);
|
2006-08-21 09:16:56 -07:00
|
|
|
EAPI void e_fm2_file_show(Evas_Object *obj, const char *file);
|
2006-08-30 16:20:03 -07:00
|
|
|
EAPI void e_fm2_icon_menu_start_extend_callback_set(Evas_Object *obj, void (*func) (void *data, Evas_Object *obj, E_Menu *m, E_Fm2_Icon_Info *info), void *data);
|
|
|
|
EAPI void e_fm2_icon_menu_end_extend_callback_set(Evas_Object *obj, void (*func) (void *data, Evas_Object *obj, E_Menu *m, E_Fm2_Icon_Info *info), void *data);
|
2006-09-17 20:49:45 -07:00
|
|
|
EAPI void e_fm2_window_object_set(Evas_Object *obj, E_Object *eobj);
|
|
|
|
|
2006-07-15 09:29:14 -07:00
|
|
|
EAPI void e_fm2_pan_set(Evas_Object *obj, Evas_Coord x, Evas_Coord y);
|
|
|
|
EAPI void e_fm2_pan_get(Evas_Object *obj, Evas_Coord *x, Evas_Coord *y);
|
|
|
|
EAPI void e_fm2_pan_max_get(Evas_Object *obj, Evas_Coord *x, Evas_Coord *y);
|
|
|
|
EAPI void e_fm2_pan_child_size_get(Evas_Object *obj, Evas_Coord *w, Evas_Coord *h);
|
|
|
|
|
2006-07-09 11:35:57 -07:00
|
|
|
#endif
|
|
|
|
#endif
|