Enlightenment CVS committal Author : lordchaos Project : e17 Module : proto
Dir : e17/proto/entropy/src/plugins Modified Files: etk_structure_viewer.c filesystem.c Log Message: * ETK structure viewer receives new folder notifications =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/entropy/src/plugins/etk_structure_viewer.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -3 -r1.15 -r1.16 --- etk_structure_viewer.c 2 Mar 2006 07:45:26 -0000 1.15 +++ etk_structure_viewer.c 4 Mar 2006 05:49:03 -0000 1.16 @@ -220,10 +220,45 @@ ecore_hash_set (viewer->loaded_dirs, row, (int*)1); } etk_tree_row_expand(row); - } + } } - } + } + break; + + case ENTROPY_NOTIFY_FILE_CREATE:{ + + entropy_generic_file* file = el; + char* md5; + char* tmp; + char* pos; + Etk_Tree_Row* row = NULL; + entropy_file_listener* listen; + + /*First get the md5sum of the file that will be this file's parent folder...*/ + tmp = strdup(file->path); + pos = strrchr(tmp, '/'); + *pos = '\0'; + + md5 = md5_entropy_path_file(file->uri_base, tmp, pos+1); + listen = entropy_core_file_cache_retrieve(md5); + + /*If we have a parent file..*/ + if (listen && (listen->file->filetype == FILE_FOLDER || + (entropy_core_descent_for_mime_get (comp->core, + listen->file->mime_type)))) { + + row = ecore_hash_get (viewer->row_folder_hash, listen->file); + if (row) { + entropy_core_file_cache_add_reference (file->md5); + structure_viewer_add_row (comp, file, row); + } + } + + free(tmp); + } + break; + } @@ -275,6 +310,10 @@ entropy_core_gui_event_get (ENTROPY_GUI_EVENT_FILE_REMOVE_DIRECTORY)); + entropy_core_component_event_register (instance, + entropy_core_gui_event_get + (ENTROPY_GUI_EVENT_FILE_CREATE)); + if (!etk_callback_setup) { printf("ETK stuff setup! *******\n"); =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/entropy/src/plugins/filesystem.c,v retrieving revision 1.49 retrieving revision 1.50 diff -u -3 -r1.49 -r1.50 --- filesystem.c 2 Mar 2006 06:10:55 -0000 1.49 +++ filesystem.c 4 Mar 2006 05:49:03 -0000 1.50 @@ -74,6 +74,11 @@ strncpy (file->uri_base, data->file_monitor.plugin, strlen (data->file_monitor.plugin)); file->md5 = strdup (md5); + + if (data->file_monitor.filetype == EVFS_FILE_DIRECTORY) { + strcpy(file->mime_type, "file/folder"); + file->filetype = FILE_FOLDER; + } /*Register a new listener for this file */ listener = entropy_malloc (sizeof (entropy_file_listener)); ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs