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

Reply via email to