1 #ifndef E_MOD_MAIN_H 2 #define E_MOD_MAIN_H 3 4 #include "e.h" 5 6 /* Increment for Major Changes */ 7 #define MOD_CONFIG_FILE_EPOCH 1 8 /* Increment for Minor Changes (ie: user doesn't need a new config) */ 9 #define MOD_CONFIG_FILE_GENERATION 0 10 #define MOD_CONFIG_FILE_VERSION ((MOD_CONFIG_FILE_EPOCH * 1000000) + MOD_CONFIG_FILE_GENERATION) 11 12 typedef struct _Config Config; 13 14 typedef struct Fileman_Path 15 { 16 const char *dev, *path; 17 unsigned int zone; 18 E_Fm2_View_Mode desktop_mode; 19 } Fileman_Path; 20 21 struct _Config 22 { 23 int config_version; 24 25 struct 26 { 27 E_Fm2_View_Mode mode; 28 unsigned char open_dirs_in_place; 29 unsigned char selector; 30 unsigned char single_click; 31 unsigned char no_subdir_jump; 32 unsigned char no_subdir_drop; 33 unsigned char always_order; 34 unsigned char link_drop; 35 unsigned char fit_custom_pos; 36 unsigned char show_full_path; 37 unsigned char show_toolbar; 38 unsigned char show_sidebar; 39 unsigned char desktop_navigation; 40 unsigned char menu_shows_files; 41 int spring_delay; 42 E_Gadcon_Orient toolbar_orient; 43 } view; 44 struct 45 { 46 double delay; 47 double size; 48 Eina_Bool enable; 49 Eina_Bool clamp_size; 50 } tooltip; 51 /* display of icons */ 52 struct 53 { 54 struct 55 { 56 int w, h; 57 } icon; 58 struct 59 { 60 int w, h; 61 } list; 62 struct 63 { 64 unsigned char w; 65 unsigned char h; 66 } fixed; 67 struct 68 { 69 unsigned char show; 70 } extension; 71 const char *key_hint; 72 unsigned int max_thumb_size; 73 } icon; 74 /* how to sort files */ 75 struct 76 { 77 struct 78 { 79 unsigned char no_case; 80 unsigned char extension; 81 unsigned char size; 82 unsigned char mtime; 83 struct 84 { 85 unsigned char first; 86 unsigned char last; 87 } dirs; 88 } sort; 89 } list; 90 /* control how you can select files */ 91 struct 92 { 93 unsigned char single; 94 unsigned char windows_modifiers; 95 } selection; 96 /* the background - if any, and how to handle it */ 97 /* FIXME: not implemented yet */ 98 struct 99 { 100 const char *background; 101 const char *frame; 102 const char *icons; 103 unsigned char fixed; 104 } theme; 105 Eina_List *paths; // Fileman_Path 106 }; 107 108 extern Config *fileman_config; 109 Fileman_Path *e_mod_fileman_path_find(E_Zone *zone); 110 111 E_Menu *e_mod_menu_add(E_Menu *m, const char *path); 112 113 E_Config_Dialog *e_int_config_fileman(Evas_Object *parent, const char *params EINA_UNUSED); 114 E_Config_Dialog *e_int_config_mime_edit(E_Config_Mime_Icon *data, void *data2); 115 E_Config_Dialog *e_int_config_mime(Evas_Object *parent, const char *params EINA_UNUSED); 116 void e_int_config_mime_edit_done(void *data); 117 118 void e_fileman_dbus_init(void); 119 void e_fileman_dbus_shutdown(void); 120 121 int e_fwin_init (void); 122 int e_fwin_shutdown (void); 123 void e_fwin_new (const char *dev, const char *path); 124 void e_fwin_zone_new (E_Zone *zone, void *path); 125 void e_fwin_zone_shutdown (E_Zone *zone); 126 void e_fwin_all_unsel (void *data); 127 void e_fwin_reload_all (void); 128 void *e_fwin_zone_find (E_Zone *zone); 129 Eina_Bool e_fwin_show (const char *dev, const char *path); 130 131 Eina_Bool e_fwin_nav_init(void); 132 Eina_Bool e_fwin_nav_shutdown(void); 133 134 /** 135 * @addtogroup Optional_Fileman 136 * @{ 137 * 138 * @defgroup Module_Fileman File Manager 139 * 140 * Basic file manager with list and grid view, shows thumbnails, can 141 * copy, cut, paste, delete and rename files. 142 * 143 * @see Module_Fileman_Opinfo 144 * @} 145 */ 146 147 #endif 148