Enlightenment CVS committal

Author  : chaos
Project : e17
Module  : proto

Dir     : e17/proto/entropy/src/plugins


Modified Files:
        etk_list_viewer.c filesystem.c 


Log Message:
* Work on context menu multi-file action
* strndup-- (non-posix)

===================================================================
RCS file: /cvs/e/e17/proto/entropy/src/plugins/etk_list_viewer.c,v
retrieving revision 1.66
retrieving revision 1.67
diff -u -3 -r1.66 -r1.67
--- etk_list_viewer.c   3 Jun 2006 11:04:02 -0000       1.66
+++ etk_list_viewer.c   17 Jul 2006 17:19:28 -0000      1.67
@@ -219,6 +219,8 @@
 
    }
 
+   evas_list_free(row_list);
+
 }
 
 
@@ -404,8 +406,6 @@
    instance = file->instance;
    viewer = instance->data;
        
-
-         
    if (event->flags & EVAS_BUTTON_DOUBLE_CLICK && event->button == 1) {
           printf("Row clicked, file is: %s\n", file->file->filename); 
 
@@ -424,11 +424,22 @@
          gui_event->data = file->file;
          entropy_core_layout_notify_event (file->instance, gui_event, 
ENTROPY_EVENT_GLOBAL);
    } else if (event->button == 3) {
-       etk_tree_row_select(row);
+       Evas_List* rows;
+
+       rows = etk_tree_selected_rows_get(ETK_TREE(viewer->tree));
+       if (evas_list_count(rows) <= 1) {
+               etk_tree_row_select(row);
+               file = ecore_hash_get(etk_list_viewer_row_hash, row);
+               entropy_etk_context_menu_popup(instance, file->file);
+       } else {
+               /*Multi select popup*/
+               Ecore_List* files = ecore_list_new();
+
 
-       file = ecore_hash_get(etk_list_viewer_row_hash, row);
 
-       entropy_etk_context_menu_popup(instance, file->file);
+               ecore_list_destroy(files);
+       }
+       evas_list_free(rows);
    }
 }
 
===================================================================
RCS file: /cvs/e/e17/proto/entropy/src/plugins/filesystem.c,v
retrieving revision 1.70
retrieving revision 1.71
diff -u -3 -r1.70 -r1.71
--- filesystem.c        17 Jul 2006 14:45:21 -0000      1.70
+++ filesystem.c        17 Jul 2006 17:19:28 -0000      1.71
@@ -259,8 +259,10 @@
                        pos = rindex (ref->path, '/');
                        if (pos - ref->path == 0 && ref->path[0] == '/') 
                                folder = strdup("/");
-                       else
-                               folder = strndup(ref->path, pos - ref->path);
+                       else {
+                               folder = calloc(pos - ref->path +1, 1 );
+                               strncpy(folder, ref->path, pos - ref->path);
+                       }
 
                        filename = strdup (pos + 1);
 




-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to