Enlightenment CVS committal Author : lordchaos Project : e17 Module : proto
Dir : e17/proto/entropy/src/plugins Modified Files: Makefile.am etk_list_viewer.c filesystem.c Log Message: * ETK directory add dialog =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/entropy/src/plugins/Makefile.am,v retrieving revision 1.24 retrieving revision 1.25 diff -u -3 -r1.24 -r1.25 --- Makefile.am 6 Mar 2006 08:26:13 -0000 1.24 +++ Makefile.am 11 Mar 2006 07:11:34 -0000 1.25 @@ -92,7 +92,8 @@ $(top_srcdir)/src/dialogs/etk_progress_dialog.c \ $(top_srcdir)/src/entropy_gui.c \ $(top_srcdir)/src/entropy_debug.c \ - $(top_srcdir)/src/dialogs/etk_interaction_dialog.c + $(top_srcdir)/src/dialogs/etk_interaction_dialog.c \ + $(top_srcdir)/src/dialogs/etk_directory_add_dialog.c etk_list_la_CFLAGS = @ETK_CFLAGS@ etk_list_la_LDFLAGS = -module -avoid-version etk_list_la_LIBADD = @ETK_LIBS@ =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/entropy/src/plugins/etk_list_viewer.c,v retrieving revision 1.40 retrieving revision 1.41 diff -u -3 -r1.40 -r1.41 --- etk_list_viewer.c 6 Mar 2006 10:41:40 -0000 1.40 +++ etk_list_viewer.c 11 Mar 2006 07:11:34 -0000 1.41 @@ -6,6 +6,7 @@ #include <Etk.h> #include "etk_progress_dialog.h" #include "etk_user_interaction_dialog.h" +#include "etk_directory_add_dialog.h" #define EN_DND_COL_NUM 5 @@ -209,6 +210,16 @@ } +void _entropy_etk_list_viewer_directory_add_cb(Etk_Object *object, void *data) +{ + entropy_gui_component_instance* instance = data; + entropy_etk_file_list_viewer* viewer = instance->data; + + if (viewer->current_folder) { + etk_directory_add_dialog_create(viewer->current_folder) ; + } +} + /* Called when the user presses a key */ static void _etk_entropy_list_viewer_key_down_cb(Etk_Object *object, void *event, void *data) { @@ -268,9 +279,10 @@ tree = ETK_TREE(object); rows = etk_tree_selected_rows_get(tree); + drag = (ETK_WIDGET(tree))->drag; - table = etk_table_new(5,5,ETK_TRUE); + table = etk_table_new(5,5,ETK_FALSE); count = evas_list_count(rows); bzero(buffer,8192); for (; rows; rows = rows->next ) { @@ -754,6 +766,8 @@ entropy_etk_file_list_viewer *viewer; char **dnd_types; int dnd_types_num=0; + Etk_Widget* new_menu; + Etk_Widget* menu_item; instance = entropy_gui_component_instance_new (); @@ -865,6 +879,14 @@ _entropy_etk_menu_item_new(ETK_MENU_ITEM_NORMAL, _("Delete"), ETK_STOCK_EDIT_COPY, ETK_MENU_SHELL(viewer->popup),NULL); _entropy_etk_menu_item_new(ETK_MENU_ITEM_NORMAL, _("Properties"), ETK_STOCK_EDIT_COPY, ETK_MENU_SHELL(viewer->popup),NULL); + menu_item = _entropy_etk_menu_item_new(ETK_MENU_ITEM_NORMAL, _("New"), ETK_STOCK_EDIT_COPY, ETK_MENU_SHELL(viewer->popup),NULL); + new_menu = etk_menu_new(); + etk_menu_item_submenu_set(ETK_MENU_ITEM(menu_item), ETK_MENU(new_menu)); + + menu_item = _entropy_etk_menu_item_new(ETK_MENU_ITEM_NORMAL, _("Folder.."), ETK_STOCK_EDIT_COPY, ETK_MENU_SHELL(new_menu),NULL); + etk_signal_connect("activated", ETK_OBJECT(menu_item), ETK_CALLBACK(_entropy_etk_list_viewer_directory_add_cb), instance); + + if (!etk_callback_setup) { =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/entropy/src/plugins/filesystem.c,v retrieving revision 1.53 retrieving revision 1.54 diff -u -3 -r1.53 -r1.54 --- filesystem.c 5 Mar 2006 06:27:18 -0000 1.53 +++ filesystem.c 11 Mar 2006 07:11:34 -0000 1.54 @@ -47,12 +47,6 @@ char *pos = rindex (folder, '/'); *pos = '\0'; - //printf("DEMO: Received a file monitor notification\n"); - //printf("DEMO: For file: '%s'\n", (char*)data->file_monitor.filename); - //printf("DEMO: Directory '%s\n", folder); - //printf("DEMO: Plugin: '%s'\n", (char*)data->file_monitor.plugin); - // - printf("Got a monitor event for folder '%s'..\n", folder); @@ -856,6 +850,41 @@ /* + * Directory create function + */ +void +entropy_filesystem_directory_create (entropy_generic_file * parent, char* child_name) +{ + evfs_file_uri_path *uri_path_from; + entropy_generic_file* new_dir; + + + + new_dir = entropy_generic_file_clone(parent); + snprintf(new_dir->path, PATH_MAX, "%s/%s", parent->path, parent->filename); + snprintf(new_dir->filename, FILENAME_LENGTH, "%s", child_name); + if (new_dir->uri) + free(new_dir->uri); + + new_dir->uri = entropy_core_generic_file_uri_create (new_dir, 0); + + if (new_dir->md5) + free(new_dir->md5); + + new_dir->md5 = md5_entropy_path_file(new_dir->uri_base, new_dir->path, new_dir->filename); + + + uri_path_from = evfs_parse_uri (new_dir->uri); + printf("Making directory '%s'....\n", uri_path_from->files[0]->path); + + evfs_client_directory_create (con, uri_path_from->files[0]); + + + entropy_generic_file_destroy(new_dir); +} + + +/* * Rename file function */ void ------------------------------------------------------- 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