From 448b23eff91d6f30e2b5c6b520197d0de346e1c3 Mon Sep 17 00:00:00 2001 From: Gustavo Lima Chaves Date: Wed, 30 May 2012 17:41:48 +0000 Subject: [PATCH] [elm] Fix index example. note to self: were on drugs here? SVN revision: 71563 --- .../src/examples/index_example_01.c | 63 ++++++++++--------- 1 file changed, 32 insertions(+), 31 deletions(-) diff --git a/legacy/elementary/src/examples/index_example_01.c b/legacy/elementary/src/examples/index_example_01.c index 682a5e7b43..fefdb5c9a6 100644 --- a/legacy/elementary/src/examples/index_example_01.c +++ b/legacy/elementary/src/examples/index_example_01.c @@ -10,6 +10,7 @@ */ #include +#include struct example_data { @@ -24,71 +25,67 @@ static const char *dict[] = \ }; static void -_index_item_del(void *data, +_index_item_del(void *data, Evas_Object *obj, - void *event_info) + void *event_info) { - fprintf(stdout, "Deleting associated list node (%s). Comparing index " + fprintf(stdout, "Deleting index node (%s). Comparing index " "item data reported via callback with the one returned by " "index's API on items: %s.\n", - elm_object_item_text_get(data), + elm_index_item_letter_get(event_info), data == elm_object_item_data_get(event_info) ? "OK" : "FAIL, something went wrong"); - - elm_object_item_del(data); } /* delete an index item */ static void -_item_del(void *data, +_item_del(void *data, Evas_Object *obj, - void *event_info) + void *event_info) { - Elm_Object_Item *iit; - Elm_Object_Item *lit = elm_index_selected_item_get(d.index, 0); - - iit = elm_index_item_find(d.index, lit); + Elm_Object_Item *iit = elm_index_selected_item_get(d.index, 0); if (!iit) return; fprintf(stdout, "Deleting last selected index item, which had letter" - " %s (pointing to %s)\n", elm_index_item_letter_get(iit), - elm_object_item_text_get(lit)); + " %s (pointing to %p)\n", elm_index_item_letter_get(iit), + elm_object_item_data_get(iit)); - elm_object_item_del(lit); + elm_object_item_del(iit); } static void -_item_del_all(void *data, +_item_del_all(void *data, Evas_Object *obj, - void *event_info) + void *event_info) { elm_index_item_clear(d.index); } static void -_active_set(void *data, +_active_set(void *data, Evas_Object *obj, - void *event_info) + void *event_info) { - elm_index_autohide_disabled_set(d.index, !elm_index_autohide_disabled_get(d.index)); + elm_index_autohide_disabled_set + (d.index, !elm_index_autohide_disabled_get(d.index)); fprintf(stdout, "Toggling index programmatically.\n"); } /* "delay,changed" hook */ static void -_index_changed(void *data, +_index_changed(void *data, Evas_Object *obj, - void *event_info) + void *event_info) { - elm_list_item_bring_in(event_info); + elm_list_item_bring_in(elm_object_item_data_get(event_info)); } static void -_index_selected(void *data, +_index_selected(void *data, Evas_Object *obj, - void *event_info) + void *event_info) { Elm_Object_Item *lit = event_info; @@ -99,15 +96,15 @@ _index_selected(void *data, } static void -_on_done(void *data, +_on_done(void *data, Evas_Object *obj, - void *event_info) + void *event_info) { elm_exit(); } EAPI_MAIN int -elm_main(int argc, +elm_main(int argc, char **argv) { Evas_Object *win, *bg, *hbox, *vbox, *bt, *sep; @@ -149,15 +146,18 @@ elm_main(int argc, if (curr != dict[i][0]) { - Elm_Object_Item *index_it; + Elm_Object_Item *index_it, *it; char buf[32]; curr = dict[i][0]; /* indexing by first letters */ snprintf(buf, sizeof(buf), "%c", curr); - elm_index_item_append(d.index, buf, NULL, lit); - index_it = elm_index_item_find(d.index, lit); + index_it = elm_index_item_append(d.index, buf, NULL, lit); + + /* this is here just to demostrate the API call */ + it = elm_index_item_find(d.index, lit); + assert(it == index_it); elm_object_item_del_cb_set(index_it, _index_item_del); } @@ -206,4 +206,5 @@ elm_main(int argc, return 0; } + ELM_MAIN()