Enlightenment CVS committal Author : dj2 Project : e17 Module : libs/ewl
Dir : e17/libs/ewl/src/bin/tests Modified Files: ewl_tree2.c Log Message: - change tree2_data_set to mvc_data_set - formatting =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/bin/tests/ewl_tree2.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -3 -r1.14 -r1.15 --- ewl_tree2.c 24 Sep 2006 20:26:50 -0000 1.14 +++ ewl_tree2.c 25 Sep 2006 18:03:42 -0000 1.15 @@ -9,15 +9,15 @@ typedef struct Tree2_Test_Row_Data Tree2_Test_Row_Data; struct Tree2_Test_Row_Data { - char *image; - char *text; + char *image; + char *text; }; typedef struct Tree2_Test_Data Tree2_Test_Data; struct Tree2_Test_Data { - unsigned int count; - Tree2_Test_Row_Data **rows; + unsigned int count; + Tree2_Test_Row_Data **rows; }; static int create_test(Ewl_Container *win); @@ -51,9 +51,9 @@ create_test(Ewl_Container *box) { Ewl_Widget *tree, *o, *o2; - Ewl_Model *model; - Ewl_View *view; - void *data; + Ewl_Model *model; + Ewl_View *view; + void *data; o2 = ewl_hbox_new(); ewl_container_child_append(box, o2); @@ -61,46 +61,46 @@ EWL_FLAG_FILL_VSHRINK | EWL_FLAG_FILL_HFILL); ewl_widget_show(o2); - /* create our data */ - data = tree2_test_data_setup(); + /* create our data */ + data = tree2_test_data_setup(); - /* the tree will only use one model. We could use a model per - * column, but a single model will work fine for this test */ - model = ewl_model_new(); - ewl_model_fetch_set(model, tree2_test_data_fetch); - ewl_model_sort_set(model, tree2_test_data_sort); - ewl_model_count_set(model, tree2_test_data_count_get); - - tree = ewl_tree2_new(); - ewl_container_child_append(EWL_CONTAINER(box), tree); - ewl_object_fill_policy_set(EWL_OBJECT(tree), EWL_FLAG_FILL_ALL); - ewl_tree2_data_set(EWL_TREE2(tree), data); + /* the tree will only use one model. We could use a model per + * column, but a single model will work fine for this test */ + model = ewl_model_new(); + ewl_model_fetch_set(model, tree2_test_data_fetch); + ewl_model_sort_set(model, tree2_test_data_sort); + ewl_model_count_set(model, tree2_test_data_count_get); + + tree = ewl_tree2_new(); + ewl_container_child_append(EWL_CONTAINER(box), tree); + ewl_object_fill_policy_set(EWL_OBJECT(tree), EWL_FLAG_FILL_ALL); + ewl_mvc_data_set(EWL_MVC(tree), data); ewl_widget_name_set(tree, "tree"); - ewl_widget_show(tree); + ewl_widget_show(tree); - /* create a view for the first column that just has an ewl label */ - view = ewl_label_view_get(); - ewl_view_header_fetch_set(view, tree2_test_data_header_fetch); - ewl_tree2_column_append(EWL_TREE2(tree), model, view); - - /* create a view for the second column that just has an ewl image */ - view = ewl_view_new(); - ewl_view_constructor_set(view, ewl_image_new); - ewl_view_assign_set(view, EWL_VIEW_ASSIGN(ewl_image_file_path_set)); - ewl_view_header_fetch_set(view, tree2_test_data_header_fetch); - ewl_tree2_column_append(EWL_TREE2(tree), model, view); + /* create a view for the first column that just has an ewl label */ + view = ewl_label_view_get(); + ewl_view_header_fetch_set(view, tree2_test_data_header_fetch); + ewl_tree2_column_append(EWL_TREE2(tree), model, view); + + /* create a view for the second column that just has an ewl image */ + view = ewl_view_new(); + ewl_view_constructor_set(view, ewl_image_new); + ewl_view_assign_set(view, EWL_VIEW_ASSIGN(ewl_image_file_path_set)); + ewl_view_header_fetch_set(view, tree2_test_data_header_fetch); + ewl_tree2_column_append(EWL_TREE2(tree), model, view); /* we don't want this one sortable */ model = ewl_model_new(); - ewl_model_fetch_set(model, tree2_test_data_fetch); - ewl_model_count_set(model, tree2_test_data_count_get); + ewl_model_fetch_set(model, tree2_test_data_fetch); + ewl_model_count_set(model, tree2_test_data_count_get); - /* create a view for the third column that has a custom widget */ - view = ewl_view_new(); - ewl_view_constructor_set(view, tree2_test_custom_new); - ewl_view_assign_set(view, tree2_test_custom_assign_set); - ewl_view_header_fetch_set(view, tree2_test_data_header_fetch); - ewl_tree2_column_append(EWL_TREE2(tree), model, view); + /* create a view for the third column that has a custom widget */ + view = ewl_view_new(); + ewl_view_constructor_set(view, tree2_test_custom_new); + ewl_view_assign_set(view, tree2_test_custom_assign_set); + ewl_view_header_fetch_set(view, tree2_test_data_header_fetch); + ewl_tree2_column_append(EWL_TREE2(tree), model, view); /* create the checkbuttons for the top box */ o = ewl_checkbutton_new(); @@ -140,116 +140,116 @@ static void * tree2_test_data_setup(void) { - Tree2_Test_Data *data; - Tree2_Test_Row_Data **dt; + Tree2_Test_Data *data; + Tree2_Test_Row_Data **dt; - data = calloc(1, sizeof(Tree2_Test_Data)); - dt = calloc(TREE2_DATA_ELEMENTS, sizeof(Tree2_Test_Row_Data *)); + data = calloc(1, sizeof(Tree2_Test_Data)); + dt = calloc(TREE2_DATA_ELEMENTS, sizeof(Tree2_Test_Row_Data *)); dt[0] = calloc(1, sizeof(Tree2_Test_Row_Data)); - dt[0]->image = strdup(PACKAGE_DATA_DIR"/images/e-logo.png"); - dt[0]->text = strdup("The E logo"); + dt[0]->image = strdup(PACKAGE_DATA_DIR"/images/e-logo.png"); + dt[0]->text = strdup("The E logo"); dt[1] = calloc(1, sizeof(Tree2_Test_Row_Data)); - dt[1]->image = strdup(PACKAGE_DATA_DIR"/images/elicit.png"); - dt[1]->text = strdup("The Elicit image"); + dt[1]->image = strdup(PACKAGE_DATA_DIR"/images/elicit.png"); + dt[1]->text = strdup("The Elicit image"); dt[2] = calloc(1, sizeof(Tree2_Test_Row_Data)); - dt[2]->image = strdup(PACKAGE_DATA_DIR"/images/entrance.png"); - dt[2]->text = strdup("The Entrance image"); + dt[2]->image = strdup(PACKAGE_DATA_DIR"/images/entrance.png"); + dt[2]->text = strdup("The Entrance image"); dt[3] = calloc(1, sizeof(Tree2_Test_Row_Data)); - dt[3]->image = strdup(PACKAGE_DATA_DIR"/images/End.png"); - dt[3]->text = strdup("Zebra"); + dt[3]->image = strdup(PACKAGE_DATA_DIR"/images/End.png"); + dt[3]->text = strdup("Zebra"); dt[4] = calloc(1, sizeof(Tree2_Test_Row_Data)); - dt[4]->image = strdup(PACKAGE_DATA_DIR"/images/banner-top.png"); - dt[4]->text = strdup("Ant"); + dt[4]->image = strdup(PACKAGE_DATA_DIR"/images/banner-top.png"); + dt[4]->text = strdup("Ant"); - data->rows = dt; - data->count = TREE2_DATA_ELEMENTS; + data->rows = dt; + data->count = TREE2_DATA_ELEMENTS; - return data; + return data; } static Ewl_Widget * tree2_test_custom_new(void) { - Ewl_Widget *button; + Ewl_Widget *button; - button = ewl_button_new(); - ewl_widget_show(button); + button = ewl_button_new(); + ewl_widget_show(button); - return button; + return button; } static void tree2_test_custom_assign_set(Ewl_Widget *w, void *data) { - Tree2_Test_Row_Data *d; + Tree2_Test_Row_Data *d; - d = data; - ewl_button_label_set(EWL_BUTTON(w), d->text); - ewl_button_image_set(EWL_BUTTON(w), d->image, NULL); + d = data; + ewl_button_label_set(EWL_BUTTON(w), d->text); + ewl_button_image_set(EWL_BUTTON(w), d->image, NULL); } static Ewl_Widget * tree2_test_data_header_fetch(void *data __UNUSED__, int column) { - Ewl_Widget *l; + Ewl_Widget *l; - l = ewl_label_new(); - if (column == 0) - ewl_label_text_set(EWL_LABEL(l), "Title"); - else if (column == 1) - ewl_label_text_set(EWL_LABEL(l), "Image"); - else - ewl_label_text_set(EWL_LABEL(l), "Button"); - ewl_widget_show(l); + l = ewl_label_new(); + if (column == 0) + ewl_label_text_set(EWL_LABEL(l), "Title"); + else if (column == 1) + ewl_label_text_set(EWL_LABEL(l), "Image"); + else + ewl_label_text_set(EWL_LABEL(l), "Button"); + ewl_widget_show(l); - return l; + return l; } static void * tree2_test_data_fetch(void *data, unsigned int row, unsigned int column) { - Tree2_Test_Data *d; - void *val = NULL; + Tree2_Test_Data *d; + void *val = NULL; + + d = data; + + /* NOTE: this is just for testing purposes, should not be needed in a + * normal app */ + if (row >= d->count) + { + printf("Asking for too many rows\n"); + return NULL; + } + + if (column == 0) + val = d->rows[row % TREE2_DATA_ELEMENTS]->text; + + else if (column == 1) + val = d->rows[row % TREE2_DATA_ELEMENTS]->image; - d = data; + else if (column == 2) + val = d->rows[row % TREE2_DATA_ELEMENTS]; - /* NOTE: this is just for testing purposes, should not be needed in a - * normal app */ - if (row >= d->count) - { - printf("Asking for too many rows\n"); - return NULL; - } - - if (column == 0) - val = d->rows[row % TREE2_DATA_ELEMENTS]->text; - - else if (column == 1) - val = d->rows[row % TREE2_DATA_ELEMENTS]->image; - - else if (column == 2) - val = d->rows[row % TREE2_DATA_ELEMENTS]; - - else - { - /* NOTE: this is just for testing purposes, should not be - * needed in a normal app */ - printf("Unknown column %d\n", column); - } + else + { + /* NOTE: this is just for testing purposes, should not be + * needed in a normal app */ + printf("Unknown column %d\n", column); + } - return val; + return val; } static void tree2_test_data_sort(void *data, unsigned int column, Ewl_Sort_Direction sort) { int i; - Tree2_Test_Data *d; + Tree2_Test_Data *d; /* just leave it if we're in sort none. */ if (sort == EWL_SORT_DIRECTION_NONE) @@ -297,11 +297,11 @@ static int tree2_test_data_count_get(void *data) { - Tree2_Test_Data *d; + Tree2_Test_Data *d; - d = data; + d = data; - return d->count; + return d->count; } static void ------------------------------------------------------------------------- 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