Enlightenment CVS committal

Author  : dj2
Project : e17
Module  : libs/ewl

Dir     : e17/libs/ewl/src/bin/tests


Modified Files:
        ewl_tree2.c 


Log Message:
- convert tree2 to use a view system similar to the filedialog
- there are currently two views available plain and scrolled, scrolled is
  default
- you can write your own view if you desire to get a custom tree row
  handling if needed (something like a spreadsheet to display row numbers or
  something)

- NOTE: when moving the headers inside the scrolled view there is a missing
  configure. you need to force a configure (resize or move window) in order
  for the row sizes to correct. this works correctly in the normal case.


===================================================================
RCS file: /cvs/e/e17/libs/ewl/src/bin/tests/ewl_tree2.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -3 -r1.11 -r1.12
--- ewl_tree2.c 22 Aug 2006 05:42:10 -0000      1.11
+++ ewl_tree2.c 22 Aug 2006 21:41:44 -0000      1.12
@@ -33,8 +33,8 @@
 static int tree2_test_data_count_get(void *data);
 
 static void ewl_tree2_cb_scroll_headers(Ewl_Widget *w, void *ev, void *data);
-static void ewl_tree2_cb_scroll_visible(Ewl_Widget *w, void *ev, void *data);
-static void tree2_cb_set_rows_clicked(Ewl_Widget *w, void *ev, void *data);
+static void ewl_tree2_cb_plain_view(Ewl_Widget *w, void *ev, void *data);
+static void ewl_tree2_cb_set_rows_clicked(Ewl_Widget *w, void *ev, void *data);
 
 void 
 test_info(Ewl_Test *test)
@@ -113,11 +113,10 @@
        ewl_widget_show(o);
 
        o = ewl_checkbutton_new();
-       ewl_button_label_set(EWL_BUTTON(o), "Scroll visible");
+       ewl_button_label_set(EWL_BUTTON(o), "Plain view");
        ewl_container_child_append(EWL_CONTAINER(o2), o);
-       ewl_checkbutton_checked_set(EWL_CHECKBUTTON(o), TRUE);
        ewl_callback_append(o, EWL_CALLBACK_CLICKED,
-                               ewl_tree2_cb_scroll_visible, tree);
+                               ewl_tree2_cb_plain_view, tree);
        ewl_widget_show(o);
 
        o = ewl_spinner_new();
@@ -133,7 +132,8 @@
        o = ewl_button_new();
        ewl_button_label_set(EWL_BUTTON(o), "Set number of rows");
        ewl_container_child_append(EWL_CONTAINER(o2), o);
-       ewl_callback_append(o, EWL_CALLBACK_CLICKED, tree2_cb_set_rows_clicked, 
NULL);
+       ewl_callback_append(o, EWL_CALLBACK_CLICKED, 
+                               ewl_tree2_cb_set_rows_clicked, NULL);
        ewl_widget_show(o);
 
        return 1;
@@ -310,24 +310,33 @@
 ewl_tree2_cb_scroll_headers(Ewl_Widget *w, void *ev __UNUSED__, void *data)
 {
        Ewl_Tree2 *tree;
+       Ewl_Widget *view;
 
        tree = data;
-       ewl_tree2_scroll_headers_set(tree, 
+       view = ewl_tree2_view_widget_get(tree);
+
+       if (ewl_widget_type_is(view, EWL_TREE2_VIEW_SCROLLED_TYPE))
+               ewl_tree2_view_scrolled_scroll_headers_set(EWL_TREE2_VIEW(view),
                        ewl_checkbutton_is_checked(EWL_CHECKBUTTON(w)));
 }
 
 static void
-ewl_tree2_cb_scroll_visible(Ewl_Widget *w, void *ev __UNUSED__, void *data)
+ewl_tree2_cb_plain_view(Ewl_Widget *w, void *ev __UNUSED__, void *data)
 {
        Ewl_Tree2 *tree;
+       Ewl_View *view;
 
        tree = data;
-       ewl_tree2_scroll_visible_set(tree, 
-                       ewl_checkbutton_is_checked(EWL_CHECKBUTTON(w)));
+       if (ewl_checkbutton_is_checked(EWL_CHECKBUTTON(w)))
+               view = ewl_tree2_view_plain_get();
+       else
+               view = ewl_tree2_view_scrolled_get();
+
+       ewl_tree2_view_set(tree, view);
 }
 
 static void
-tree2_cb_set_rows_clicked(Ewl_Widget *w, void *ev, void *data)
+ewl_tree2_cb_set_rows_clicked(Ewl_Widget *w, void *ev, void *data)
 {
        Ewl_Widget *spinner, *tree;
        Tree2_Test_Data *d;



-------------------------------------------------------------------------
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