Enlightenment CVS committal

Author  : lok
Project : e17
Module  : apps/emphasis

Dir     : e17/apps/emphasis/src/bin


Modified Files:
        emphasis.c emphasis.h emphasis_callbacks.c 
        emphasis_callbacks.h emphasis_gui.c emphasis_media.c 
        emphasis_media.h emphasis_misc.c emphasis_misc.h 
        emphasis_mpc.c emphasis_player.c emphasis_search.c 


Log Message:
Moving to Etk_Tree2.

===================================================================
RCS file: /cvs/e/e17/apps/emphasis/src/bin/emphasis.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -3 -r1.9 -r1.10
--- emphasis.c  30 Dec 2006 13:46:38 -0000      1.9
+++ emphasis.c  16 Jan 2007 03:33:39 -0000      1.10
@@ -62,13 +62,13 @@
                     config->geometry.media_w,
                     config->geometry.media_h);
   /* Set the last width of the playlist's columns */
-  etk_tree_col_width_set(ETK_TREE_COL_GET(player->media.pls, 0),
+  etk_tree2_col_width_set(ETK_TREE2_COL_GET(player->media.pls, 0),
                          config->colwidth.title);
-  etk_tree_col_width_set(ETK_TREE_COL_GET(player->media.pls, 1),
+  etk_tree2_col_width_set(ETK_TREE2_COL_GET(player->media.pls, 1),
                          config->colwidth.time);
-  etk_tree_col_width_set(ETK_TREE_COL_GET(player->media.pls, 2),
+  etk_tree2_col_width_set(ETK_TREE2_COL_GET(player->media.pls, 2),
                          config->colwidth.artist);
-  etk_tree_col_width_set(ETK_TREE_COL_GET(player->media.pls, 3),
+  etk_tree2_col_width_set(ETK_TREE2_COL_GET(player->media.pls, 3),
                          config->colwidth.album);
 
   /* Set the medialib paned size */
@@ -124,8 +124,8 @@
       gui->timer = timer;
 
       emphasis_tree_mlib_init(gui->player, EMPHASIS_ARTIST);
-      etk_tree_row_select(etk_tree_first_row_get
-                          (ETK_TREE(gui->player->media.artist)));
+      etk_tree2_row_select(etk_tree2_first_row_get
+                          (ETK_TREE2(gui->player->media.artist)));
 
       return 0;
     }
===================================================================
RCS file: /cvs/e/e17/apps/emphasis/src/bin/emphasis.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- emphasis.h  30 Dec 2006 13:46:38 -0000      1.7
+++ emphasis.h  16 Jan 2007 03:33:39 -0000      1.8
@@ -28,7 +28,7 @@
 #include "emphasis_cover.h"
 #include "emphasis_cover_db.h"
 
-#define ETK_TREE_COL_GET(tree, num) etk_tree_nth_col_get(ETK_TREE(tree), num) 
+#define ETK_TREE2_COL_GET(tree, num) etk_tree2_nth_col_get(ETK_TREE2(tree), 
num) 
 #define UNUSED(var) (void)(var);
 #define UNUSED_CLICKED_PARAM (void)(object); (void)(data);
 
===================================================================
RCS file: /cvs/e/e17/apps/emphasis/src/bin/emphasis_callbacks.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -3 -r1.16 -r1.17
--- emphasis_callbacks.c        14 Jan 2007 19:27:43 -0000      1.16
+++ emphasis_callbacks.c        16 Jan 2007 03:33:39 -0000      1.17
@@ -29,13 +29,13 @@
                           &(config->geometry.media_h));
 
   config->colwidth.title  = 
-    etk_tree_col_width_get(ETK_TREE_COL_GET(player->media.pls, 0));
+    etk_tree2_col_width_get(ETK_TREE2_COL_GET(player->media.pls, 0));
   config->colwidth.time   =
-    etk_tree_col_width_get(ETK_TREE_COL_GET(player->media.pls, 1));
+    etk_tree2_col_width_get(ETK_TREE2_COL_GET(player->media.pls, 1));
   config->colwidth.artist =
-    etk_tree_col_width_get(ETK_TREE_COL_GET(player->media.pls, 2));
+    etk_tree2_col_width_get(ETK_TREE2_COL_GET(player->media.pls, 2));
   config->colwidth.album  =
-    etk_tree_col_width_get(ETK_TREE_COL_GET(player->media.pls, 3));
+    etk_tree2_col_width_get(ETK_TREE2_COL_GET(player->media.pls, 3));
   config->media_paned = etk_paned_position_get(ETK_PANED(player->media.paned));
 
   config->mode = player->state;
@@ -226,7 +226,7 @@
  *        And set the album tree with.
  */
 void
-cb_tree_artist_selected(Etk_Object *object, Etk_Tree_Row *row, void *data)
+cb_tree_artist_selected(Etk_Object *object, Etk_Tree2_Row *row, void *data)
 {
   UNUSED(object)
   UNUSED(row)
@@ -236,31 +236,31 @@
 
   player = data;
 
-  artist_sel = etk_tree_selected_rows_get(ETK_TREE(player->media.artist));
-  artist     = etk_tree_row_data_get(evas_list_data(artist_sel));
+  artist_sel = etk_tree2_selected_rows_get(ETK_TREE2(player->media.artist));
+  artist     = etk_tree2_row_data_get(evas_list_data(artist_sel));
 
   if (artist == NULL)
     {
-      emphasis_tree_mlib_set(ETK_TREE(player->media.album),
+      emphasis_tree_mlib_set(ETK_TREE2(player->media.album),
                              mpc_mlib_album_get(NULL),
                              MPD_DATA_TYPE_TAG, NULL);
-      etk_tree_row_select
-       (etk_tree_first_row_get(ETK_TREE(player->media.album)));
+      etk_tree2_row_select
+       (etk_tree2_first_row_get(ETK_TREE2(player->media.album)));
 
       return;
     }
-  emphasis_tree_mlib_set(ETK_TREE(player->media.album), NULL,
+  emphasis_tree_mlib_set(ETK_TREE2(player->media.album), NULL,
                          MPD_DATA_TYPE_TAG, NULL);
   while (artist_sel)
     {
-      artist = etk_tree_row_data_get(evas_list_data(artist_sel));
-      emphasis_tree_mlib_append(ETK_TREE(player->media.album),
+      artist = etk_tree2_row_data_get(evas_list_data(artist_sel));
+      emphasis_tree_mlib_append(ETK_TREE2(player->media.album),
                                 mpc_mlib_album_get(artist),
                                 MPD_DATA_TYPE_TAG, artist);
       artist_sel = evas_list_next(artist_sel);
     }
 
-  etk_tree_row_select(etk_tree_first_row_get(ETK_TREE(player->media.album)));
+  
etk_tree2_row_select(etk_tree2_first_row_get(ETK_TREE2(player->media.album)));
 }
 
 /**
@@ -268,7 +268,7 @@
  *        Then set the tree track with that stuff.
  */
 void
-cb_tree_album_selected(Etk_Object *object, Etk_Tree_Row *row, void *data)
+cb_tree_album_selected(Etk_Object *object, Etk_Tree2_Row *row, void *data)
 {
   UNUSED(object)
   UNUSED(row)
@@ -280,17 +280,17 @@
   player = data;
 
 
-  album_sel = etk_tree_selected_rows_get(ETK_TREE(player->media.album));
-  album_tag = etk_tree_row_data_get(evas_list_data(album_sel));
+  album_sel = etk_tree2_selected_rows_get(ETK_TREE2(player->media.album));
+  album_tag = etk_tree2_row_data_get(evas_list_data(album_sel));
 
   if (album_tag == NULL)
     {
-      etk_tree_clear(ETK_TREE(player->media.track));
-      artist_sel = etk_tree_selected_rows_get(ETK_TREE(player->media.artist));
+      etk_tree2_clear(ETK_TREE2(player->media.track));
+      artist_sel = 
etk_tree2_selected_rows_get(ETK_TREE2(player->media.artist));
       while (artist_sel)
         {
-          artist_tag = etk_tree_row_data_get(evas_list_data(artist_sel));
-          emphasis_tree_mlib_append(ETK_TREE(player->media.track),
+          artist_tag = etk_tree2_row_data_get(evas_list_data(artist_sel));
+          emphasis_tree_mlib_append(ETK_TREE2(player->media.track),
                                     mpc_mlib_track_get(artist_tag, NULL),
                                     MPD_DATA_TYPE_SONG, NULL);
           artist_sel = evas_list_next(artist_sel);
@@ -298,17 +298,19 @@
       return;
     }
 
-  etk_tree_clear(ETK_TREE(player->media.track));
+  etk_tree2_clear(ETK_TREE2(player->media.track));
   while (album_sel)
     {
-      album_tag = etk_tree_row_data_get(evas_list_data(album_sel));
-      emphasis_tree_mlib_append(ETK_TREE(player->media.track),
+      album_tag = etk_tree2_row_data_get(evas_list_data(album_sel));
+      emphasis_tree_mlib_append(ETK_TREE2(player->media.track),
                                 mpc_mlib_track_get(album_tag[1], album_tag[0]),
                                 MPD_DATA_TYPE_SONG, NULL);
       album_sel = evas_list_next(album_sel);
     }
 }
 
+/* FIXME wait for tree2 to support dnd */
+#if 0
 /**
  * @brief Set a drag widget from a list of artist selected
  * @param data A common drag widget
@@ -318,22 +320,22 @@
 {
   Etk_Widget *drag_menu, *menu_item;
   Etk_Drag *drag;
-  Etk_Tree *tree;
+  Etk_Tree2 *tree;
   Evas_List *rowlist, *next;
   char *artist;
   const char **types;
   unsigned int num_types;
   Evas_List *playlist = NULL, *tmplist;
 
-  tree = ETK_TREE(object);
+  tree = ETK_TREE2(object);
   drag = ETK_DRAG((ETK_WIDGET(tree))->drag);
-  rowlist = etk_tree_selected_rows_get(tree);
+  rowlist = etk_tree2_selected_rows_get(tree);
 
   drag_menu = etk_menu_new();
 
   while(rowlist)
     {
-      artist = etk_tree_row_data_get(evas_list_data(rowlist));
+      artist = etk_tree2_row_data_get(evas_list_data(rowlist));
       tmplist = mpc_mlib_track_get(artist, NULL);
       
       if(artist)
@@ -382,22 +384,22 @@
 {
   Etk_Widget *drag_menu, *menu_item;
   Etk_Drag *drag;
-  Etk_Tree *tree;
+  Etk_Tree2 *tree;
   Evas_List *rowlist;
   char **album;
   const char **types;
   unsigned int num_types;
   Evas_List *playlist = NULL, *tmplist;
 
-  tree = ETK_TREE(object);
+  tree = ETK_TREE2(object);
   drag = ETK_DRAG((ETK_WIDGET(object))->drag);
-  rowlist = etk_tree_selected_rows_get(tree);
+  rowlist = etk_tree2_selected_rows_get(tree);
 
   drag_menu = etk_menu_new();
 
   while (rowlist)
     {
-      album = etk_tree_row_data_get(evas_list_data(rowlist));
+      album = etk_tree2_row_data_get(evas_list_data(rowlist));
       if (album != NULL)
         {
           tmplist = mpc_mlib_track_get(album[1], album[0]);
@@ -425,10 +427,10 @@
         }
       else
         {
-          Etk_Tree_Row *row;
+          Etk_Tree2_Row *row;
 
-          row = etk_tree_first_row_get(tree);
-          row = etk_tree_next_row_get(row, ETK_FALSE, ETK_FALSE);
+          row = etk_tree2_first_row_get(tree);
+          row = etk_tree2_row_next_get(row);
           rowlist = evas_list_free(rowlist);
           rowlist = NULL;
           emphasis_list_free(playlist);
@@ -436,7 +438,7 @@
           while (row)
             {
               rowlist = evas_list_append(rowlist, row);
-              row = etk_tree_next_row_get(row, ETK_FALSE, ETK_FALSE);
+              row = etk_tree2_row_next_get(row);
             }
         }
     }
@@ -463,24 +465,24 @@
 {
   Etk_Widget *drag_menu, *menu_item;
   Etk_Drag *drag;
-  Etk_Tree *tree;
+  Etk_Tree2 *tree;
   Evas_List *rowlist;
   char *title;
   const char **types;
   unsigned int num_types;
   Evas_List *playlist;
 
-  tree = ETK_TREE(object);
+  tree = ETK_TREE2(object);
   drag = ETK_DRAG((ETK_WIDGET(object))->drag);
 
   drag_menu = etk_menu_new();
 
-  rowlist = etk_tree_selected_rows_get(tree);
+  rowlist = etk_tree2_selected_rows_get(tree);
   playlist = convert_rowlist_in_playlist_with_file(rowlist);
   while (rowlist)
     {
-      etk_tree_row_fields_get(evas_list_data(rowlist),
-                              etk_tree_nth_col_get(tree, 0), &title, NULL);
+      etk_tree2_row_fields_get(evas_list_data(rowlist),
+                              etk_tree2_nth_col_get(tree, 0), &title, NULL);
 
       menu_item = etk_menu_item_new_with_label(title);
       etk_menu_shell_append(ETK_MENU_SHELL(drag_menu),
@@ -496,13 +498,14 @@
   etk_drag_types_set(drag, types, num_types);
   etk_drag_data_set(drag, playlist, 1);
 
-  etk_tree_row_fields_get(evas_list_data(rowlist),
-                          etk_tree_nth_col_get(tree, 0), &title, NULL);
+  etk_tree2_row_fields_get(evas_list_data(rowlist),
+                          etk_tree2_nth_col_get(tree, 0), &title, NULL);
 
   etk_container_add(ETK_CONTAINER(drag), drag_menu);
 
   ((Emphasis_Player_Gui*)data)->media.drag = ETK_WIDGET(drag);
 }
+#endif
 
 /**
  * @brief Get the playlist draged. Add it to the current playlist.
@@ -513,11 +516,11 @@
 cb_drop_song(Etk_Object *object, void *event, void *data)
 {
   UNUSED(event)
-  Etk_Tree *tree;
+  Etk_Tree2 *tree;
   Etk_Drag *drag;
   Evas_List *list;
 
-  tree = ETK_TREE(object);
+  tree = ETK_TREE2(object);
 
   drag = ETK_DRAG(((Emphasis_Player_Gui*)data)->media.drag);
   if (drag == NULL ||
@@ -551,7 +554,7 @@
  * @brief Double-click on a row add the artist's song to the playlist
  */
 void
-cb_tree_mlib_clicked(Etk_Object *object, Etk_Tree_Row *row,
+cb_tree_mlib_clicked(Etk_Object *object, Etk_Tree2_Row *row,
                      Etk_Event_Mouse_Down *event, void *data)
 {
   Emphasis_Player_Gui *player;
@@ -562,15 +565,15 @@
   et = (Emphasis_Type) etk_object_data_get(object, "Emphasis_Type");
   if ((event->button == 1) && (event->flags == ETK_MOUSE_DOUBLE_CLICK))
     {
-      emphasis_playlist_append_selected(ETK_TREE(object), et);
+      emphasis_playlist_append_selected(ETK_TREE2(object), et);
       mpc_play_if_stopped();
     }
   if (event->button == 2)
     {
-      etk_tree_row_fields_get(row, etk_tree_nth_col_get(ETK_TREE(object), 0),
+      etk_tree2_row_fields_get(row, etk_tree2_nth_col_get(ETK_TREE2(object), 
0),
                               &str, NULL);
 
-      emphasis_playlist_search_and_delete(ETK_TREE(player->media.pls), str, 
et);
+      emphasis_playlist_search_and_delete(ETK_TREE2(player->media.pls), str, 
et);
     }
 }
 
@@ -578,21 +581,18 @@
  * @brief Play the song double-clicked
  */
 void
-cb_tree_pls_clicked(Etk_Object *object, Etk_Tree_Row *row,
+cb_tree_pls_clicked(Etk_Object *object, Etk_Tree2_Row *row,
                     Etk_Event_Mouse_Down *event, void *data)
 {
   UNUSED(data)
+  UNUSED(object)
   int id;
 
   if ((event->button == 1) && (event->flags == ETK_MOUSE_DOUBLE_CLICK))
     {
-      id = (int) etk_tree_row_data_get(row);
+      id = (int) etk_tree2_row_data_get(row);
       mpc_play_id(id);
     }
-  if (event->button == 1)
-    {
-      ETK_TREE(object)->last_selected = row;
-    }
 }
 
 void
@@ -640,28 +640,28 @@
 cb_mlib_bindings_key(Etk_Object *object, Etk_Event_Key_Down *event,
                      void *data)
 {
-  Etk_Tree *tree;
-  Etk_Tree_Row *row, *row_next;
-  Etk_Tree_Col *col;
+  Etk_Tree2 *tree;
+  Etk_Tree2_Row *row, *row_next;
+  Etk_Tree2_Col *col;
   Emphasis_Player_Gui *player;
   char *str;
 
   if (!event->string)
     return;
 
-  tree = ETK_TREE(object);
+  tree = ETK_TREE2(object);
   player = data;
 
   if (!strcmp(event->key, "a")
       && event->modifiers == ETK_MODIFIER_CTRL)
     {
-      etk_tree_select_all(tree);
+      etk_tree2_select_all(tree);
 
       if (object == ETK_OBJECT(player->media.track))
         return;
 
-      row = etk_tree_first_row_get(tree);
-      etk_tree_row_unselect(row);
+      row = etk_tree2_first_row_get(tree);
+      etk_tree2_row_unselect(row);
       if (object == ETK_OBJECT(player->media.artist))
         {
           cb_tree_artist_selected(object, row, data);
@@ -677,14 +677,15 @@
       && event->modifiers == ETK_MODIFIER_CTRL)
     {
       int i, r;
-      r = xrand(0, etk_tree_num_rows_get(tree));
-      row = etk_tree_first_row_get(tree);
+      /* We need an accessor here */
+      r = xrand(0, ETK_TREE2(tree)->total_rows);
+      row = etk_tree2_first_row_get(tree);
       for (i=0; i<r; i++)
         {
-          row = etk_tree_next_row_get(row, ETK_FALSE, ETK_FALSE);
+          row = etk_tree2_row_next_get(row);
         }
-      etk_tree_row_select(row);
-      etk_tree_row_scroll_to(row, ETK_TRUE);
+      etk_tree2_row_select(row);
+      etk_tree2_row_scroll_to(row, ETK_TRUE);
       return;
     }
 
@@ -692,7 +693,7 @@
       || event->modifiers == ETK_MODIFIER_CTRL)
     return;
 
-  col = etk_tree_nth_col_get(tree, 0);
+  col = etk_tree2_nth_col_get(tree, 0);
 
 /**/ 
   const char *cur_title, *base_title;
@@ -703,7 +704,7 @@
   /*get the base title of the tree */
   base_title = etk_object_data_get(ETK_OBJECT(tree), "title");    
   /*get the current title of tree */
-  cur_title = etk_tree_col_title_get(col);      
+  cur_title = etk_tree2_col_title_get(col);      
   type = (Emphasis_Type) etk_object_data_get(ETK_OBJECT(tree), 
"Emphasis_Type");
 
   /* FIXME & > < */
@@ -727,14 +728,14 @@
           emphasis_tree_mlib_init(player, type);
           if (strlen(title) == strlen(base_title) + 17)
             {
-              etk_tree_col_title_set(col, base_title);
+              etk_tree2_col_title_set(col, base_title);
               return;
             }
         }
       else if (!strcmp("Escape", event->keyname))
         {
           emphasis_tree_mlib_init(player, type);
-          etk_tree_col_title_set(col, base_title);
+          etk_tree2_col_title_set(col, base_title);
           return;
         }
       else if (!strcmp("Return", event->keyname))
@@ -745,34 +746,34 @@
           emphasis_playlist_append_selected(tree, et);
           mpc_play_if_stopped();
           emphasis_tree_mlib_init(player, type);
-          etk_tree_col_title_set(col, base_title);
+          etk_tree2_col_title_set(col, base_title);
           return;
         }
       else
         asprintf(&title, "%s%s", cur_title, event->string);
     }
 
-  etk_tree_col_title_set(etk_tree_nth_col_get(tree, 0), title);
+  etk_tree2_col_title_set(etk_tree2_nth_col_get(tree, 0), title);
   length = strlen(base_title) + 17;
   filter = strdup(&title[length]);
   length = strlen(filter);
 /**/ 
 
-  row = etk_tree_first_row_get(tree);
+  row = etk_tree2_first_row_get(tree);
   while (row)
     {
-      row_next = etk_tree_next_row_get(row, ETK_FALSE, ETK_FALSE);
-      etk_tree_row_fields_get(row, col, &str, NULL);
+      row_next = etk_tree2_row_next_get(row);
+      etk_tree2_row_fields_get(row, col, &str, NULL);
       if (!strncasecmp("The ", str, 4))
         {
           str = str + 4;
         }
       if (!strcmp("All", str) || (strncasecmp(filter, str, length) != 0))
-        etk_tree_row_del(row);
+        etk_tree2_row_delete(row);
       row = row_next;
     }
 
-  etk_tree_row_select(etk_tree_first_row_get(tree));
+  etk_tree2_row_select(etk_tree2_first_row_get(tree));
   free(title);
   free(filter);
 }
@@ -836,7 +837,7 @@
 
   if (!strcmp(event->key, "d") || !strcmp(event->key, "Delete"))
     {
-      rowlist = etk_tree_selected_rows_get(ETK_TREE(player->media.pls));
+      rowlist = etk_tree2_selected_rows_get(ETK_TREE2(player->media.pls));
       if (rowlist)
         {
           list = convert_rowlist_in_playlist_with_id(rowlist);
@@ -872,7 +873,7 @@
 
   player = data;
 
-  rowlist = etk_tree_selected_rows_get(ETK_TREE(player->media.pls));
+  rowlist = etk_tree2_selected_rows_get(ETK_TREE2(player->media.pls));
   list = convert_rowlist_in_playlist_with_id(rowlist);
 
   mpc_playlist_delete(list);
@@ -892,9 +893,9 @@
   emphasis_tree_mlib_init(player, EMPHASIS_ARTIST);
 
   /* Clear old search */
-  etk_tree_col_title_set(ETK_TREE_COL_GET(player->media.artist, 0), "Artist");
-  etk_tree_col_title_set(ETK_TREE_COL_GET(player->media.album , 0), "Album");
-  etk_tree_col_title_set(ETK_TREE_COL_GET(player->media.track , 0), "Track");
+  etk_tree2_col_title_set(ETK_TREE2_COL_GET(player->media.artist, 0), 
"Artist");
+  etk_tree2_col_title_set(ETK_TREE2_COL_GET(player->media.album , 0), "Album");
+  etk_tree2_col_title_set(ETK_TREE2_COL_GET(player->media.track , 0), "Track");
 
   /* TODO redraw */
 }
@@ -1068,12 +1069,12 @@
 }
 
 void
-cb_media_pls_list_row_clicked(Etk_Object *object, Etk_Tree_Row *row, 
+cb_media_pls_list_row_clicked(Etk_Object *object, Etk_Tree2_Row *row, 
                               Etk_Event_Mouse_Down *event, void *data)
 {
   Emphasis_Player_Gui *player;
-  Etk_Tree *tree;
-  Etk_Tree_Col *col;
+  Etk_Tree2 *tree;
+  Etk_Tree2_Col *col;
   char *playlist_name;
 
   player = data;
@@ -1081,12 +1082,12 @@
     {
       if (event->flags == ETK_MOUSE_NONE)
         {
-          tree = ETK_TREE(object);
-          col = etk_tree_nth_col_get(tree, 0);
+          tree = ETK_TREE2(object);
+          col = etk_tree2_nth_col_get(tree, 0);
 
-          etk_tree_clear(ETK_TREE(player->media.pls_content));
-          etk_tree_row_fields_get(row, col, &playlist_name, NULL);
-          emphasis_tree_mlib_append(ETK_TREE(player->media.pls_content), 
+          etk_tree2_clear(ETK_TREE2(player->media.pls_content));
+          etk_tree2_row_fields_get(row, col, &playlist_name, NULL);
+          emphasis_tree_mlib_append(ETK_TREE2(player->media.pls_content), 
                                     (mpc_get_playlist_content(playlist_name)),
                                     MPD_DATA_TYPE_SONG,
                                     NULL);
@@ -1134,21 +1135,21 @@
   UNUSED(object);
 #if defined(LIBMPD_0_12_4)
   Emphasis_Player_Gui *player;
-  Etk_Tree_Col *col;
-  Etk_Tree_Row *row;
+  Etk_Tree2_Col *col;
+  Etk_Tree2_Row *row;
   char *playlist_name;
 
   player = data;
-  col = etk_tree_nth_col_get(ETK_TREE(player->media.pls_list), 0);
-  row = etk_tree_selected_row_get(ETK_TREE(player->media.pls_list));
-  etk_tree_row_fields_get(row, col, &playlist_name, NULL);
+  col = etk_tree2_nth_col_get(ETK_TREE2(player->media.pls_list), 0);
+  row = etk_tree2_selected_row_get(ETK_TREE2(player->media.pls_list));
+  etk_tree2_row_fields_get(row, col, &playlist_name, NULL);
 
   mpc_playlist_clear();
-  etk_tree_multiple_select_set(ETK_TREE(player->media.pls_content), ETK_TRUE);
-  etk_tree_select_all(ETK_TREE(player->media.pls_content));
-  emphasis_playlist_append_selected(ETK_TREE(player->media.pls_content),
+  etk_tree2_multiple_select_set(ETK_TREE2(player->media.pls_content), 
ETK_TRUE);
+  etk_tree2_select_all(ETK_TREE2(player->media.pls_content));
+  emphasis_playlist_append_selected(ETK_TREE2(player->media.pls_content),
                                     EMPHASIS_TRACK);
-  etk_tree_unselect_all(ETK_TREE(player->media.pls_content));
+  etk_tree2_unselect_all(ETK_TREE2(player->media.pls_content));
   mpc_play_if_stopped();
 #else
   UNUSED(data);
@@ -1161,14 +1162,14 @@
   UNUSED(object);
 #if defined(LIBMPD_0_12_4)
   Emphasis_Player_Gui *player;
-  Etk_Tree_Col *col;
-  Etk_Tree_Row *row;
+  Etk_Tree2_Col *col;
+  Etk_Tree2_Row *row;
   char *playlist_name;
 
   player = data;
-  col = etk_tree_nth_col_get(ETK_TREE(player->media.pls_list), 0);
-  row = etk_tree_selected_row_get(ETK_TREE(player->media.pls_list));
-  etk_tree_row_fields_get(row, col, &playlist_name, NULL);
+  col = etk_tree2_nth_col_get(ETK_TREE2(player->media.pls_list), 0);
+  row = etk_tree2_selected_row_get(ETK_TREE2(player->media.pls_list));
+  etk_tree2_row_fields_get(row, col, &playlist_name, NULL);
 
   mpc_delete_playlist(playlist_name);
   emphasis_pls_list_init(player);
@@ -1195,19 +1196,19 @@
   UNUSED(object);
   Evas_List *row;
   Evas_List *list;
-  Etk_Tree_Col *col;
+  Etk_Tree2_Col *col;
   const char *file;
   player = data;
 
-  row = etk_tree_selected_rows_get(ETK_TREE(player->media.search_tree));
+  row = etk_tree2_selected_rows_get(ETK_TREE2(player->media.search_tree));
   if (!row)
-    row = etk_tree_unselected_rows_get(ETK_TREE(player->media.search_tree));
+    row = etk_tree2_unselected_rows_get(ETK_TREE2(player->media.search_tree));
   list = row;
 
-  col = etk_tree_nth_col_get(ETK_TREE(player->media.search_tree), 3);
+  col = etk_tree2_nth_col_get(ETK_TREE2(player->media.search_tree), 3);
   while (row)
     {
-      etk_tree_row_fields_get(evas_list_data(row), col, &file, NULL);
+      etk_tree2_row_fields_get(evas_list_data(row), col, &file, NULL);
       mpc_playlist_add_song(file, 0);
       row = evas_list_next(row);
     }
@@ -1284,15 +1285,14 @@
   Emphasis_Player_Gui *player;
   Evas_List *children;
   Evas_List *child;
-  Evas_List *sub_children;
   Evas_List *sub_child;
+  Evas_List *list;
   Evas_List *query = NULL;
   Etk_Widget *widget;
   int index;
 
   player   = data;
-  children =
-   etk_container_children_get(ETK_CONTAINER(player->media.search_root));
+  children = 
etk_container_children_get(ETK_CONTAINER(player->media.search_root));
 
   child = children;
   while (child)
@@ -1301,24 +1301,22 @@
 
       if (ETK_IS_BOX(widget))
         {
-          sub_children =
-           etk_container_children_get(ETK_CONTAINER(evas_list_data(child)));
-          sub_child = sub_children;
-
-          index =
-           etk_combobox_active_item_nth_get
-           (ETK_COMBOBOX(evas_list_data(sub_child)));
+          /* Get the search row content */
+          sub_child = 
etk_container_children_get(ETK_CONTAINER(evas_list_data(child)));
+          list = sub_child;
+
+          /* Get the id of the tag to search */
+          index = 
etk_combobox_active_item_nth_get(ETK_COMBOBOX(evas_list_data(sub_child)));
           query = evas_list_append(query, (void *)index);
 
+          /* Get the search pattern */
           sub_child = evas_list_next(sub_child);
-          query =
-           evas_list_append
-           (query, etk_entry_text_get(ETK_ENTRY(evas_list_data(sub_child))));
+          query = evas_list_append(query, 
etk_entry_text_get(ETK_ENTRY(evas_list_data(sub_child))));
 
-          evas_list_free(sub_children);
+          evas_list_free(list);
         }
 
-      if (ETK_IS_TREE(widget)) { break; }
+      if (ETK_IS_TREE2(widget)) { break; }
 
       child = evas_list_next(child);
     } 
===================================================================
RCS file: /cvs/e/e17/apps/emphasis/src/bin/emphasis_callbacks.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -3 -r1.8 -r1.9
--- emphasis_callbacks.h        14 Jan 2007 19:27:43 -0000      1.8
+++ emphasis_callbacks.h        16 Jan 2007 03:33:39 -0000      1.9
@@ -24,17 +24,17 @@
 void cb_vol_slider_value_changed(Etk_Object *object, double value,
                                  void *data);
 
-void cb_tree_artist_selected(Etk_Object *object, Etk_Tree_Row *row, void 
*data);
-void cb_tree_album_selected(Etk_Object *object, Etk_Tree_Row *row, void *data);
+void cb_tree_artist_selected(Etk_Object *object, Etk_Tree2_Row *row, void 
*data);
+void cb_tree_album_selected(Etk_Object *object, Etk_Tree2_Row *row, void 
*data);
 
 void cb_drag_artist(Etk_Object *object, void *data);
 void cb_drag_album(Etk_Object *object, void *data);
 void cb_drag_track(Etk_Object *object, void *data);
 void cb_drop_song(Etk_Object *object, void *event, void *data);
 
-void cb_tree_mlib_clicked(Etk_Object *object, Etk_Tree_Row *row,
+void cb_tree_mlib_clicked(Etk_Object *object, Etk_Tree2_Row *row,
                           Etk_Event_Mouse_Down *event, void *data);
-void cb_tree_pls_clicked(Etk_Object *object, Etk_Tree_Row *row,
+void cb_tree_pls_clicked(Etk_Object *object, Etk_Tree2_Row *row,
                          Etk_Event_Mouse_Down *event, void *data);
 
 void cb_emphasis_bindings_key(Etk_Object *object, Etk_Event_Key_Down *event, 
@@ -66,7 +66,7 @@
 void cb_config_ok(Etk_Object *object, void *data);
 Etk_Bool cb_config_hide(Etk_Object *object, void *data);
 
-void cb_media_pls_list_row_clicked(Etk_Object *object, Etk_Tree_Row *row, 
+void cb_media_pls_list_row_clicked(Etk_Object *object, Etk_Tree2_Row *row, 
                                    Etk_Event_Mouse_Down *event, void *data);
 void cb_media_pls_save_clicked(Etk_Object *object, void *data);
 void cb_media_pls_load_clicked(Etk_Object *object, void *data);
===================================================================
RCS file: /cvs/e/e17/apps/emphasis/src/bin/emphasis_gui.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -3 -r1.10 -r1.11
--- emphasis_gui.c      14 Jan 2007 19:27:43 -0000      1.10
+++ emphasis_gui.c      16 Jan 2007 03:33:39 -0000      1.11
@@ -34,10 +34,10 @@
   
   player = gui->player;
 
-  etk_tree_clear(ETK_TREE(player->media.artist));
-  etk_tree_clear(ETK_TREE(player->media.album));
-  etk_tree_clear(ETK_TREE(player->media.track));
-  etk_tree_clear(ETK_TREE(player->media.pls));
+  etk_tree2_clear(ETK_TREE2(player->media.artist));
+  etk_tree2_clear(ETK_TREE2(player->media.album));
+  etk_tree2_clear(ETK_TREE2(player->media.track));
+  etk_tree2_clear(ETK_TREE2(player->media.pls));
 }
 
 /* TODO : documentation */
===================================================================
RCS file: /cvs/e/e17/apps/emphasis/src/bin/emphasis_media.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- emphasis_media.c    14 Jan 2007 19:27:43 -0000      1.4
+++ emphasis_media.c    16 Jan 2007 03:33:39 -0000      1.5
@@ -6,22 +6,22 @@
 void
 emphasis_tree_mlib_init(Emphasis_Player_Gui *player, Emphasis_Type type)
 {
-  Etk_Tree_Row *row;
+  Etk_Tree2_Row *row;
   Evas_List *list;
 
   switch (type)
     {
       case EMPHASIS_ARTIST:
         list = mpc_mlib_artist_get();
-        emphasis_tree_mlib_set(ETK_TREE(player->media.artist), list,
+        emphasis_tree_mlib_set(ETK_TREE2(player->media.artist), list,
                                MPD_DATA_TYPE_TAG, NULL);
         break;
       case EMPHASIS_ALBUM:
-        row = etk_tree_selected_row_get(ETK_TREE(player->media.artist));
+        row = etk_tree2_selected_row_get(ETK_TREE2(player->media.artist));
        cb_tree_artist_selected(ETK_OBJECT(player->media.artist), row, player);
        break;
       case EMPHASIS_TRACK:
-       row = etk_tree_selected_row_get(ETK_TREE(player->media.album));
+       row = etk_tree2_selected_row_get(ETK_TREE2(player->media.album));
        cb_tree_album_selected(ETK_OBJECT(player->media.album), row, player);
        break;
     }
@@ -29,13 +29,13 @@
 
 /* TODO : documentation */
 void
-emphasis_tree_mlib_set(Etk_Tree *tree, Evas_List *list,
+emphasis_tree_mlib_set(Etk_Tree2 *tree, Evas_List *list,
                        MpdDataType mpd_type, char *tag)
 {
-  Etk_Tree_Row *row;
+  Etk_Tree2_Row *row;
   char **album_tag = NULL;
 
-  etk_tree_clear(tree);
+  etk_tree2_clear(tree);
   if (mpd_type == MPD_DATA_TYPE_TAG)
     {
       if (tag != NULL)
@@ -44,8 +44,8 @@
           album_tag[0] = NULL;
           album_tag[1] = tag;
         }
-      row = etk_tree_append(tree, etk_tree_nth_col_get(tree, 0), "All", NULL);
-      etk_tree_row_data_set(row, album_tag);
+      row = etk_tree2_row_append(tree, NULL, etk_tree2_nth_col_get(tree, 0), 
"All", NULL);
+      etk_tree2_row_data_set(row, album_tag);
     }
   if (list)
     {
@@ -60,22 +60,22 @@
  * @param mpd_type The type of the list
  */
 void
-emphasis_tree_mlib_append(Etk_Tree *tree, Evas_List *list,
+emphasis_tree_mlib_append(Etk_Tree2 *tree, Evas_List *list,
                           MpdDataType mpd_type, char *tag)
 {
-  Etk_Tree_Col *col;
-  Etk_Tree_Row *row;
+  Etk_Tree2_Col *col;
+  Etk_Tree2_Row *row;
   Emphasis_Data *data;
   Evas_List *first_list;
   char **album_tag;
   Emphasis_Type et;
 
-  etk_tree_freeze(tree);
-  col = etk_tree_nth_col_get(tree, 0);
+  etk_tree2_freeze(tree);
+  col = etk_tree2_nth_col_get(tree, 0);
 
   first_list = list;
 
-  etk_tree_freeze(tree);
+  etk_tree2_freeze(tree);
   if (mpd_type == MPD_DATA_TYPE_TAG)
     {
       et = (Emphasis_Type) etk_object_data_get(ETK_OBJECT(tree),
@@ -83,17 +83,17 @@
       while (list)
         {
           data = evas_list_data(list);
-          row = etk_tree_append(tree, col, data->tag, NULL);
+          row = etk_tree2_row_append(tree, NULL, col, data->tag, NULL);
           if (et == EMPHASIS_ALBUM)
             {
               album_tag = malloc(sizeof(char *) * 2);
               album_tag[0] = strdupnull(data->tag);
               album_tag[1] = strdupnull(tag);
-              etk_tree_row_data_set(row, album_tag);
+              etk_tree2_row_data_set(row, album_tag);
             }
           else
             {
-              etk_tree_row_data_set(row, strdup(data->tag));
+              etk_tree2_row_data_set(row, strdup(data->tag));
             }
           list = evas_list_next(list);
         }
@@ -106,11 +106,11 @@
             {
               data = evas_list_data(list);
               if (data->song->title)
-                row = etk_tree_append(tree, col, data->song->title, NULL);
+                row = etk_tree2_row_append(tree, NULL, col, data->song->title, 
NULL);
               else
-                row = etk_tree_append(tree, col, data->song->file, NULL);
+                row = etk_tree2_row_append(tree, NULL, col, data->song->file, 
NULL);
 
-              etk_tree_row_data_set(row, strdup(data->song->file));
+              etk_tree2_row_data_set(row, strdup(data->song->file));
               list = evas_list_next(list);
             }
         }
@@ -121,14 +121,14 @@
               while (list)
                 {
                   data = evas_list_data(list);
-                  etk_tree_append(tree, col, data->playlist, NULL);
+                  etk_tree2_row_append(tree, NULL, col, data->playlist, NULL);
                   list = evas_list_next(list);
                 }
             }
         }
     }
 
-  etk_tree_thaw(tree);
+  etk_tree2_thaw(tree);
   emphasis_list_free(first_list);
 }
 
@@ -138,33 +138,33 @@
  * @param playlist The full playlist used by mpd
  */
 void
-emphasis_tree_pls_set(Etk_Tree *tree, Evas_List *playlist)
+emphasis_tree_pls_set(Etk_Tree2 *tree, Evas_List *playlist)
 {
-  Etk_Tree_Col *col_title, *col_time, *col_artist, *col_album;
-  Etk_Tree_Row *row, *row_next;
+  Etk_Tree2_Col *col_title, *col_time, *col_artist, *col_album;
+  Etk_Tree2_Row *row, *row_next;
   int id;
   char *title, *song_time;
   Emphasis_Data *data;
   Evas_List *list;
 
   list = playlist;
-  col_title  = etk_tree_nth_col_get(tree, 0);
-  col_time   = etk_tree_nth_col_get(tree, 1);
-  col_artist = etk_tree_nth_col_get(tree, 2);
-  col_album  = etk_tree_nth_col_get(tree, 3);
+  col_title  = etk_tree2_nth_col_get(tree, 0);
+  col_time   = etk_tree2_nth_col_get(tree, 1);
+  col_artist = etk_tree2_nth_col_get(tree, 2);
+  col_album  = etk_tree2_nth_col_get(tree, 3);
 
-  etk_tree_freeze(tree);
-  row = etk_tree_first_row_get(tree);
+  etk_tree2_freeze(tree);
+  row = etk_tree2_first_row_get(tree);
 
   /* LEAK : playlist and on NULL */
   while (row && playlist)
     {
       data = evas_list_data(playlist);
-      row_next = etk_tree_next_row_get(row, ETK_FALSE, ETK_FALSE);
-      id = (int) etk_tree_row_data_get(row);
+      row_next = etk_tree2_row_next_get(row);
+      id = (int) etk_tree2_row_data_get(row);
       if (data->song->id != id)
         {
-          etk_tree_row_del(row);
+          etk_tree2_row_delete(row);
         }
       else
         {
@@ -175,8 +175,8 @@
 
   while (row)
     {
-      row_next = etk_tree_next_row_get(row, ETK_FALSE, ETK_FALSE);
-      etk_tree_row_del(row);
+      row_next = etk_tree2_row_next_get(row);
+      etk_tree2_row_delete(row);
       row = row_next;
     }
 
@@ -189,19 +189,19 @@
         title = data->song->title;
       asprintf(&song_time, "%d:%02d", (data->song->time) / 60,
                (data->song->time) % 60);
-      row =
-        etk_tree_append(tree, col_title, NULL, title, col_time, song_time,
-                        col_artist, data->song->artist, col_album,
-                        data->song->album, NULL);
+      row = etk_tree2_row_append(tree, NULL, 
+                                 col_title, NULL, NULL, title, 
+                                 col_time, song_time,
+                                 col_artist, data->song->artist, 
+                                 col_album, data->song->album, NULL);
 
-
-      etk_tree_row_data_set(row, (int *) data->song->id);
+      etk_tree2_row_data_set(row, (int *) data->song->id);
       free(song_time);
       playlist = evas_list_next(playlist);
     }
 
   emphasis_list_free(list);
-  etk_tree_thaw(tree);
+  etk_tree2_thaw(tree);
 }
 
 /**
@@ -209,41 +209,40 @@
  * @note can be improve by stoping the while loop when the to cond has been 
validated
  */
 void
-emphasis_pls_mark_current(Etk_Tree *tree, int id)
+emphasis_pls_mark_current(Etk_Tree2 *tree, int id)
 {
-  Etk_Tree_Col *col_current;
-  Etk_Tree_Row *row;
+  Etk_Tree2_Col *col_current;
+  Etk_Tree2_Row *row;
   int row_id;
   char *image, *title;
 
-  col_current = etk_tree_nth_col_get(tree, 0);
+  col_current = etk_tree2_nth_col_get(tree, 0);
 
-  etk_tree_freeze(tree);
-  row = etk_tree_first_row_get(tree);
+  etk_tree2_freeze(tree);
+  row = etk_tree2_first_row_get(tree);
 
   while (row)
     {
-      row_id = (int) etk_tree_row_data_get(row);
-      etk_tree_row_fields_get(row, col_current, &image, &title, NULL);
+      row_id = (int) etk_tree2_row_data_get(row);
+      etk_tree2_row_fields_get(row, col_current, &image, NULL, &title, NULL);
       title = strdup(title);
       if (image)
         {
-          etk_tree_row_fields_set(row, col_current, NULL, title, NULL);
+          etk_tree2_row_fields_set(row, ETK_FALSE, col_current, NULL, NULL, 
title, NULL);
         }
       if (row_id == id)
         {
-          etk_tree_row_fields_set(row, col_current,
-                                  PACKAGE_DATA_DIR "/images/note.png", title,
-                                  NULL);
-          etk_tree_row_scroll_to(row, ETK_FALSE);
-
+          etk_tree2_row_fields_set(row, ETK_FALSE, col_current,
+                                   PACKAGE_DATA_DIR "/images/note.png", NULL, 
title,
+                                   NULL);
+          etk_tree2_row_scroll_to(row, ETK_FALSE);
         }
       free(title);
       /* TODO Don't read the whole tree stop after one mark/unmark */
-      row = etk_tree_next_row_get(row, ETK_FALSE, ETK_FALSE);
+      row = etk_tree2_row_next_get(row);
     }
 
-  etk_tree_thaw(tree);
+  etk_tree2_thaw(tree);
 }
 
 
@@ -251,17 +250,17 @@
 void
 emphasis_pls_list_init(Emphasis_Player_Gui *player)
 {
-  Etk_Tree *pls_list;
+  Etk_Tree2 *pls_list;
 
-  pls_list = ETK_TREE(player->media.pls_list);
-  etk_tree_clear(pls_list);
+  pls_list = ETK_TREE2(player->media.pls_list);
+  etk_tree2_clear(pls_list);
 #if defined(LIBMPD_0_12_4)
   emphasis_tree_mlib_append(pls_list, 
                             (mpc_list_playlists()),
                             MPD_DATA_TYPE_PLAYLIST,
                             NULL);
 #else
-  etk_tree_append(pls_list, etk_tree_nth_col_get(pls_list, 0),
+  etk_tree2_append(pls_list, etk_tree2_nth_col_get(pls_list, 0),
                   "You need libmpd 0.12.4 in order to use mpd playlists", 
NULL);
 #endif
 }
===================================================================
RCS file: /cvs/e/e17/apps/emphasis/src/bin/emphasis_media.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- emphasis_media.h    20 Aug 2006 22:48:49 -0000      1.2
+++ emphasis_media.h    16 Jan 2007 03:33:39 -0000      1.3
@@ -3,15 +3,15 @@
 
 void emphasis_tree_mlib_init(Emphasis_Player_Gui *player, Emphasis_Type type);
 
-void emphasis_tree_mlib_set(Etk_Tree *tree, Evas_List *list,
+void emphasis_tree_mlib_set(Etk_Tree2 *tree, Evas_List *list,
                             MpdDataType mpd_type, char *tag);
 
-void emphasis_tree_mlib_append(Etk_Tree *tree, Evas_List *list,
+void emphasis_tree_mlib_append(Etk_Tree2 *tree, Evas_List *list,
                                MpdDataType mpd_type, char *tag);
 
-void emphasis_tree_pls_set(Etk_Tree *tree, Evas_List *playlist);
+void emphasis_tree_pls_set(Etk_Tree2 *tree, Evas_List *playlist);
 
-void emphasis_pls_mark_current(Etk_Tree *tree, int id);
+void emphasis_pls_mark_current(Etk_Tree2 *tree, int id);
 
 void emphasis_pls_list_init(Emphasis_Player_Gui *player);
 #endif /* EMPHASIS_MEDIA_H_ */
===================================================================
RCS file: /cvs/e/e17/apps/emphasis/src/bin/emphasis_misc.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- emphasis_misc.c     30 Dec 2006 13:46:38 -0000      1.5
+++ emphasis_misc.c     16 Jan 2007 03:33:39 -0000      1.6
@@ -32,7 +32,7 @@
 convert_rowlist_in_playlist_with_file(Evas_List *rowlist)
 {
   Evas_List *list = NULL, *first_rowlist;
-  Etk_Tree_Row *row;
+  Etk_Tree2_Row *row;
   Emphasis_Data *data = NULL;
 
   if (!rowlist)
@@ -47,7 +47,7 @@
       data = malloc(sizeof(Emphasis_Data));
       data->type = MPD_DATA_TYPE_SONG;
       data->song = malloc(sizeof(Emphasis_Song));
-      data->song->file = strdup(etk_tree_row_data_get(row));
+      data->song->file = strdup(etk_tree2_row_data_get(row));
 
       list = evas_list_append(list, data);
       rowlist = evas_list_next(rowlist);
@@ -67,7 +67,7 @@
 convert_rowlist_in_playlist_with_id(Evas_List *rowlist)
 {
   Evas_List *list = NULL, *first_rowlist;
-  Etk_Tree_Row *row;
+  Etk_Tree2_Row *row;
   int id;
   Emphasis_Data *data = NULL;
 
@@ -79,7 +79,7 @@
   while (rowlist)
     {
       row = evas_list_data(rowlist);
-      id = (int) etk_tree_row_data_get(row);
+      id = (int) etk_tree2_row_data_get(row);
 
       data = malloc(sizeof(Emphasis_Data));
       data->type = MPD_DATA_TYPE_SONG;
@@ -100,21 +100,21 @@
  * @param gui A Emphasis_Gui
  */
 void
-emphasis_playlist_append_selected(Etk_Tree *tree, Emphasis_Type type)
+emphasis_playlist_append_selected(Etk_Tree2 *tree, Emphasis_Type type)
 {
-  Etk_Tree_Row *row;
+  Etk_Tree2_Row *row;
   Evas_List *rowlist, *list;
   Evas_List *playlist = NULL, *tmplist;
   char *artist, **album;
 
-  rowlist = etk_tree_selected_rows_get(tree);
+  rowlist = etk_tree2_selected_rows_get(tree);
   list = rowlist;
 
   if (type == EMPHASIS_ARTIST)
     {
       while (rowlist)
         {
-          artist = etk_tree_row_data_get(evas_list_data(rowlist));
+          artist = etk_tree2_row_data_get(evas_list_data(rowlist));
           tmplist = mpc_mlib_track_get(artist, NULL);
           playlist = evas_list_concatenate(playlist, tmplist);
           rowlist = evas_list_next(rowlist);
@@ -124,19 +124,19 @@
     {
       while (rowlist)
         {
-          album = etk_tree_row_data_get(evas_list_data(rowlist));
+          album = etk_tree2_row_data_get(evas_list_data(rowlist));
           if (album == NULL)
             {
               /* the first row is the All */
-              row = etk_tree_first_row_get(tree);
-              row = etk_tree_next_row_get(row, ETK_FALSE, ETK_FALSE);
+              row = etk_tree2_first_row_get(tree);
+              row = etk_tree2_row_next_get(row);
 
               while (row)
                 {
-                  album = etk_tree_row_data_get(row);
+                  album = etk_tree2_row_data_get(row);
                   tmplist = mpc_mlib_track_get(album[1], album[0]);
                   playlist = evas_list_concatenate(playlist, tmplist);
-                  row = etk_tree_next_row_get(row, ETK_FALSE, ETK_FALSE);
+                  row = etk_tree2_row_next_get(row);
                 }
               break;
             }
@@ -158,11 +158,11 @@
 }
 
 void
-emphasis_playlist_search_and_delete(Etk_Tree *tree, char *str,
+emphasis_playlist_search_and_delete(Etk_Tree2 *tree, char *str,
                                     Emphasis_Type type)
 {
-  Etk_Tree_Col *col;
-  Etk_Tree_Row *row;
+  Etk_Tree2_Col *col;
+  Etk_Tree2_Row *row;
   int num = -1;
   char *row_str;
   Evas_List *rowlist = NULL;
@@ -181,24 +181,24 @@
       break;
     }
 
-  col = etk_tree_nth_col_get(tree, num);
-  row = etk_tree_first_row_get(tree);
+  col = etk_tree2_nth_col_get(tree, num);
+  row = etk_tree2_first_row_get(tree);
   while (row)
     {
       if (type == EMPHASIS_TRACK)
         {
-          etk_tree_row_fields_get(row, col, NULL, &row_str, NULL);
+          etk_tree2_row_fields_get(row, col, NULL, &row_str, NULL);
         }
       else
         {
-          etk_tree_row_fields_get(row, col, &row_str, NULL);
+          etk_tree2_row_fields_get(row, col, &row_str, NULL);
         }
 
       if (row_str && !(strcmp(row_str, str)))
         {
           rowlist = evas_list_append(rowlist, row);
         }
-      row = etk_tree_next_row_get(row, ETK_FALSE, ETK_FALSE);
+      row = etk_tree2_row_next_get(row);
     }
   list = convert_rowlist_in_playlist_with_id(rowlist);
   mpc_playlist_delete(list);
@@ -364,4 +364,50 @@
 
   escaped[j] = '\0';
   return escaped;
+}
+
+Evas_List *
+etk_tree2_selected_rows_get(Etk_Tree2 *tree)
+{
+  Evas_List *selected_rows = NULL;
+  Etk_Tree2_Row *row;
+
+  if (!tree)
+    return NULL;
+
+  if (!etk_tree2_multiple_select_get(tree))
+    {
+      selected_rows = evas_list_append(selected_rows, 
etk_tree2_selected_row_get(tree));
+    }
+  else
+    {
+      for (row = etk_tree2_first_row_get(tree); row; row = row->next)
+        {
+          if (etk_tree2_row_is_selected(row))
+            {
+              selected_rows = evas_list_append(selected_rows, row);
+            }
+        }
+    }
+  return selected_rows;
+}
+
+Evas_List *
+etk_tree2_unselected_rows_get(Etk_Tree2 *tree)
+{
+  Evas_List *unselected_rows = NULL;
+  Etk_Tree2_Row *row;
+
+  if (!tree)
+    return NULL;
+
+  for (row = etk_tree2_first_row_get(tree); row; row = row->next)
+    {
+      if (!etk_tree2_row_is_selected(row))
+        {
+          unselected_rows = evas_list_append(unselected_rows, row);
+        }
+    }
+  
+  return unselected_rows;
 }
===================================================================
RCS file: /cvs/e/e17/apps/emphasis/src/bin/emphasis_misc.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- emphasis_misc.h     30 Dec 2006 13:46:38 -0000      1.5
+++ emphasis_misc.h     16 Jan 2007 03:33:39 -0000      1.6
@@ -11,8 +11,8 @@
 Evas_List *convert_rowlist_in_playlist_with_file(Evas_List *rowlist);
 Evas_List *convert_rowlist_in_playlist_with_id(Evas_List *rowlist);
 /* void mpd_data_full_free(MpdData * list); */
-void emphasis_playlist_append_selected(Etk_Tree *tree, Emphasis_Type type);
-void emphasis_playlist_search_and_delete(Etk_Tree *tree, char *str,
+void emphasis_playlist_append_selected(Etk_Tree2 *tree, Emphasis_Type type);
+void emphasis_playlist_search_and_delete(Etk_Tree2 *tree, char *str,
                                          Emphasis_Type type);
 
 char *strdupnull(char *str);
@@ -24,5 +24,9 @@
 
 void etk_container_inspect(Etk_Container *container, int lvl, int *to_trace);
 char *etk_strescape(const char *str);
+
+Evas_List *etk_tree2_selected_rows_get(Etk_Tree2 *tree);
+Evas_List *etk_tree2_unselected_rows_get(Etk_Tree2 *tree);
+
 /** @} */
 #endif /* EMPHASIS_MISC_H_ */
===================================================================
RCS file: /cvs/e/e17/apps/emphasis/src/bin/emphasis_mpc.c,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -3 -r1.12 -r1.13
--- emphasis_mpc.c      14 Jan 2007 19:27:43 -0000      1.12
+++ emphasis_mpc.c      16 Jan 2007 03:33:39 -0000      1.13
@@ -173,11 +173,11 @@
   if (what & MPD_CST_DATABASE)
     {
       char *tree_title;
-      Etk_Tree *tree = ETK_TREE(player->media.artist);
+      Etk_Tree2 *tree = ETK_TREE2(player->media.artist);
 
       tree_title = etk_object_data_get(ETK_OBJECT(tree), "title");
       emphasis_tree_mlib_init(player, EMPHASIS_ARTIST);
-      etk_tree_col_title_set(etk_tree_nth_col_get(tree,0), tree_title);
+      etk_tree2_col_title_set(etk_tree2_nth_col_get(tree,0), tree_title);
 
       song = mpc_playlist_get_current_song();
       emphasis_player_info_set(player, song, NULL);
@@ -213,7 +213,7 @@
         case MPD_STATUS_STATE_STOP:
           emphasis_player_info_set(player, NULL, "Music Stoped");
           emphasis_player_toggle_play(player);
-          emphasis_pls_mark_current(ETK_TREE(player->media.pls), -1);
+          emphasis_pls_mark_current(ETK_TREE2(player->media.pls), -1);
           break;
         case MPD_STATUS_STATE_PAUSE:
           song = mpc_playlist_get_current_song();
@@ -225,7 +225,7 @@
           song = mpc_playlist_get_current_song();
           emphasis_player_toggle_play(player);
           emphasis_player_info_set(player, song, NULL);
-          emphasis_pls_mark_current(ETK_TREE(player->media.pls), song->id);
+          emphasis_pls_mark_current(ETK_TREE2(player->media.pls), song->id);
           emphasis_song_free(song);
           refresh_info = 1;
           break;
@@ -240,7 +240,7 @@
 
       playlist = mpd_playlist_get_changes(mo, -1);
       emphasis_playlist = convert_mpd_data(playlist);
-      emphasis_tree_pls_set(ETK_TREE(player->media.pls), emphasis_playlist);
+      emphasis_tree_pls_set(ETK_TREE2(player->media.pls), emphasis_playlist);
       
 //      emphasis_list_free(emphasis_playlist);
       mpd_data_free(playlist);
@@ -251,7 +251,7 @@
       if (song)
         {
           emphasis_player_info_set(player, song, NULL);
-          emphasis_pls_mark_current(ETK_TREE(player->media.pls), song->id);
+          emphasis_pls_mark_current(ETK_TREE2(player->media.pls), song->id);
           emphasis_cover_change((Emphasis_Gui *) data,
                                 song->artist,
                                 song->album);
===================================================================
RCS file: /cvs/e/e17/apps/emphasis/src/bin/emphasis_player.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- emphasis_player.c   14 Jan 2007 19:27:43 -0000      1.6
+++ emphasis_player.c   16 Jan 2007 03:33:39 -0000      1.7
@@ -88,69 +88,52 @@
   player->media.button_stats     = enhance_var_get(en, "media_button_stats");
 
   /* enhance completion : col def */
-  etk_tree_multiple_select_set(ETK_TREE(player->media.artist), ETK_TRUE);
-  etk_tree_multiple_select_set(ETK_TREE(player->media.album) , ETK_TRUE);
-  etk_tree_multiple_select_set(ETK_TREE(player->media.track) , ETK_TRUE);
-  etk_tree_multiple_select_set(ETK_TREE(player->media.pls)   , ETK_TRUE);
+  etk_tree2_multiple_select_set(ETK_TREE2(player->media.artist), ETK_TRUE);
+  etk_tree2_multiple_select_set(ETK_TREE2(player->media.album) , ETK_TRUE);
+  etk_tree2_multiple_select_set(ETK_TREE2(player->media.track) , ETK_TRUE);
+  etk_tree2_multiple_select_set(ETK_TREE2(player->media.pls)   , ETK_TRUE);
 
-  etk_tree_col_new(ETK_TREE(player->media.artist),
-                   "Artist",
-                   etk_tree_model_text_new(ETK_TREE(player->media.artist)),
-                   60);
-  etk_tree_col_new(ETK_TREE(player->media.album),
-                   "Album",
-                   etk_tree_model_text_new(ETK_TREE(player->media.album)),
-                   60);
-  etk_tree_col_new(ETK_TREE(player->media.track),
-                   "Track",
-                   etk_tree_model_text_new(ETK_TREE(player->media.track)),
-                   60);
+  Etk_Tree2_Col *col;
+  col = etk_tree2_col_new(ETK_TREE2(player->media.artist), "Artist", 60, 0.0);
+  etk_tree2_col_model_add(col, etk_tree2_model_text_new());
+  etk_tree2_build(ETK_TREE2(player->media.artist));
+  
+  col = etk_tree2_col_new(ETK_TREE2(player->media.album), "Album", 60, 0.0);
+  etk_tree2_col_model_add(col, etk_tree2_model_text_new());
+  etk_tree2_build(ETK_TREE2(player->media.album));
+
+  col = etk_tree2_col_new(ETK_TREE2(player->media.track), "Track", 60, 0.0);
+  etk_tree2_col_model_add(col, etk_tree2_model_text_new());
+  etk_tree2_build(ETK_TREE2(player->media.track));
   /* pls */
-  etk_tree_col_new(ETK_TREE(player->media.pls),
-                   "Title",
-                   etk_tree_model_icon_text_new(ETK_TREE(player->media.pls),
-                                                ETK_TREE_FROM_FILE),
-                   140);
-  etk_tree_col_new(ETK_TREE(player->media.pls),
-                   "Time",
-                   etk_tree_model_text_new(ETK_TREE(player->media.pls)),
-                   30);
-  etk_tree_col_new(ETK_TREE(player->media.pls),
-                   "Artist",
-                   etk_tree_model_text_new(ETK_TREE(player->media.pls)),
-                   120);
-  etk_tree_col_new(ETK_TREE(player->media.pls),
-                   "Album",
-                   etk_tree_model_text_new(ETK_TREE(player->media.pls)),
-                   120);
+  col = etk_tree2_col_new(ETK_TREE2(player->media.pls), "Title", 140, 0.0);
+  etk_tree2_col_model_add(col, etk_tree2_model_image_new());
+  etk_tree2_col_model_add(col, etk_tree2_model_text_new());
+  col = etk_tree2_col_new(ETK_TREE2(player->media.pls), "Time", 30, 0.0);
+  etk_tree2_col_model_add(col, etk_tree2_model_text_new());
+  col = etk_tree2_col_new(ETK_TREE2(player->media.pls), "Artist", 120, 0.0);
+  etk_tree2_col_model_add(col, etk_tree2_model_text_new());
+  col = etk_tree2_col_new(ETK_TREE2(player->media.pls), "Album", 120, 0.0);
+  etk_tree2_col_model_add(col, etk_tree2_model_text_new());
+  etk_tree2_build(ETK_TREE2(player->media.pls));
   /* search page */
-  etk_tree_multiple_select_set(ETK_TREE(player->media.search_tree), ETK_TRUE);
-  etk_tree_col_new(ETK_TREE(player->media.search_tree),
-                   "Artist",
-                   
etk_tree_model_text_new(ETK_TREE(player->media.search_tree)),
-                   120);
-  etk_tree_col_new(ETK_TREE(player->media.search_tree),
-                   "Album",
-                   
etk_tree_model_text_new(ETK_TREE(player->media.search_tree)),
-                   100);
-  etk_tree_col_new(ETK_TREE(player->media.search_tree),
-                   "Title",
-                   
etk_tree_model_text_new(ETK_TREE(player->media.search_tree)),
-                   200);
-  etk_tree_col_new(ETK_TREE(player->media.search_tree),
-                   "Filename",
-                   
etk_tree_model_text_new(ETK_TREE(player->media.search_tree)),
-                   200);
-  etk_tree_build(ETK_TREE(player->media.search_tree));
+  etk_tree2_multiple_select_set(ETK_TREE2(player->media.search_tree), 
ETK_TRUE);
+  col = etk_tree2_col_new(ETK_TREE2(player->media.search_tree), "Artist", 120, 
0.0);
+  etk_tree2_col_model_add(col, etk_tree2_model_text_new());
+  col = etk_tree2_col_new(ETK_TREE2(player->media.search_tree), "Album", 100, 
0.0);
+  etk_tree2_col_model_add(col, etk_tree2_model_text_new());
+  col = etk_tree2_col_new(ETK_TREE2(player->media.search_tree), "Title", 200, 
0.0);
+  etk_tree2_col_model_add(col, etk_tree2_model_text_new());
+  col = etk_tree2_col_new(ETK_TREE2(player->media.search_tree), "Filename", 
200, 0.0);
+  etk_tree2_col_model_add(col, etk_tree2_model_text_new());
+  etk_tree2_build(ETK_TREE2(player->media.search_tree));
   /* playlists page */
-  etk_tree_col_new(ETK_TREE(player->media.pls_list),
-                   "Playlists",
-                   etk_tree_model_text_new(ETK_TREE(player->media.pls_list)),
-                   120);
-  etk_tree_col_new(ETK_TREE(player->media.pls_content),
-                   "Preview",
-                   
etk_tree_model_text_new(ETK_TREE(player->media.pls_content)),
-                   120);
+  col = etk_tree2_col_new(ETK_TREE2(player->media.pls_list), "Playlists", 120, 
0.0);
+  etk_tree2_col_model_add(col, etk_tree2_model_text_new());
+  etk_tree2_build(ETK_TREE2(player->media.pls_list));
+  col = etk_tree2_col_new(ETK_TREE2(player->media.pls_content), "Preview", 
120, 0.0);
+  etk_tree2_col_model_add(col, etk_tree2_model_text_new());
+  etk_tree2_build(ETK_TREE2(player->media.pls_content));
   /**/
  
   etk_object_data_set(ETK_OBJECT(player->media.artist), "title", "Artist");
===================================================================
RCS file: /cvs/e/e17/apps/emphasis/src/bin/emphasis_search.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- emphasis_search.c   30 Dec 2006 13:46:38 -0000      1.1
+++ emphasis_search.c   16 Jan 2007 03:33:39 -0000      1.2
@@ -59,24 +59,24 @@
 void
 emphasis_search_tree_fill(Emphasis_Player_Gui *player, Evas_List *results)
 {
-  Etk_Tree *tree;
-  Etk_Tree_Col *col1;
-  Etk_Tree_Col *col2;
-  Etk_Tree_Col *col3;
-  Etk_Tree_Col *col4;
+  Etk_Tree2 *tree;
+  Etk_Tree2_Col *col1;
+  Etk_Tree2_Col *col2;
+  Etk_Tree2_Col *col3;
+  Etk_Tree2_Col *col4;
   Evas_List *list;
   Emphasis_Data *data;
   Emphasis_Song *song;
 
   list = results;
-  tree = ETK_TREE(player->media.search_tree);
-  col1 = etk_tree_nth_col_get(tree, 0);
-  col2 = etk_tree_nth_col_get(tree, 1);
-  col3 = etk_tree_nth_col_get(tree, 2);
-  col4 = etk_tree_nth_col_get(tree, 3);
+  tree = ETK_TREE2(player->media.search_tree);
+  col1 = etk_tree2_nth_col_get(tree, 0);
+  col2 = etk_tree2_nth_col_get(tree, 1);
+  col3 = etk_tree2_nth_col_get(tree, 2);
+  col4 = etk_tree2_nth_col_get(tree, 3);
 
-  etk_tree_clear(tree);
-  etk_tree_freeze(tree);
+  etk_tree2_clear(tree);
+  etk_tree2_freeze(tree);
 
   while (results)
     {
@@ -84,15 +84,15 @@
       if (data->type == EMPHASIS_DATA_TYPE_SONG)
         {
           song = data->song;
-          etk_tree_append(tree, 
-                          col1, song->artist, 
-                          col2, song->album, 
-                          col3, song->title, 
-                          col4, song->file,
-                          NULL);
+          etk_tree2_row_append(tree, NULL,
+                               col1, song->artist, 
+                               col2, song->album, 
+                               col3, song->title, 
+                               col4, song->file,
+                               NULL);
         }
       results = evas_list_next(results);
     }
-  etk_tree_thaw(tree);
+  etk_tree2_thaw(tree);
   emphasis_list_free(list);
 }



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to