aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/libraries/elementary/src/examples/list_example_02.c
diff options
context:
space:
mode:
authorDavid Walter Seikel2012-04-22 09:20:32 +1000
committerDavid Walter Seikel2012-04-22 09:20:32 +1000
commit3ad3455551be0d7859ecb02290376206d5e66498 (patch)
tree497917e12b4d7f458dff9765d9b53f64c4e03fc3 /libraries/elementary/src/examples/list_example_02.c
parentUpdate EFL to latest beta. (diff)
downloadSledjHamr-3ad3455551be0d7859ecb02290376206d5e66498.zip
SledjHamr-3ad3455551be0d7859ecb02290376206d5e66498.tar.gz
SledjHamr-3ad3455551be0d7859ecb02290376206d5e66498.tar.bz2
SledjHamr-3ad3455551be0d7859ecb02290376206d5e66498.tar.xz
And actually include new files, plus elementary libraries.
Diffstat (limited to 'libraries/elementary/src/examples/list_example_02.c')
-rw-r--r--libraries/elementary/src/examples/list_example_02.c85
1 files changed, 85 insertions, 0 deletions
diff --git a/libraries/elementary/src/examples/list_example_02.c b/libraries/elementary/src/examples/list_example_02.c
new file mode 100644
index 0000000..3360131
--- /dev/null
+++ b/libraries/elementary/src/examples/list_example_02.c
@@ -0,0 +1,85 @@
1/**
2 * Elementary's <b>list widget</b> example, illustrating its
3 * usage and API.
4 *
5 * See stdout/stderr for output. Compile with:
6 *
7 * @verbatim
8 * gcc -g list_example_02.c -o list_example_02 `pkg-config --cflags --libs elementary`
9 * @endverbatim
10 */
11
12#include <Elementary.h>
13
14static void
15_on_done(void *data,
16 Evas_Object *obj,
17 void *event_info)
18{
19 elm_exit();
20}
21
22EAPI_MAIN int
23elm_main(int argc, char **argv)
24{
25 Evas_Object *win, *bg, *bx, *li;
26 unsigned int i;
27 static const char *lbl[] =
28 {
29 "Sunday",
30 "Monday",
31 "Tuesday",
32 "Wednesday",
33 "Thursday",
34 "Friday",
35 "Saturday"
36 };
37
38 win = elm_win_add(NULL, "list", ELM_WIN_BASIC);
39 elm_win_title_set(win, "List Example");
40 evas_object_smart_callback_add(win, "delete,request", _on_done, NULL);
41
42 bg = elm_bg_add(win);
43 elm_win_resize_object_add(win, bg);
44 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
45 evas_object_show(bg);
46
47 bx = elm_box_add(win);
48 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
49 evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, EVAS_HINT_FILL);
50 elm_win_resize_object_add(win, bx);
51 evas_object_show(bx);
52
53 /* default */
54 li = elm_list_add(win);
55 evas_object_size_hint_weight_set(li, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
56 evas_object_size_hint_align_set(li, EVAS_HINT_FILL, EVAS_HINT_FILL);
57 elm_box_pack_end(bx, li);
58 for (i = 0; i < sizeof(lbl) / sizeof(lbl[0]); i++)
59 elm_list_item_append(li, lbl[i], NULL, NULL, NULL, NULL);
60
61 /* display horizontally and set compress mode */
62 elm_list_horizontal_set(li, EINA_TRUE);
63 elm_list_mode_set(li, ELM_LIST_COMPRESS);
64
65 /* enable multiple selection and always select */
66 elm_list_multi_select_set(li, EINA_TRUE);
67 elm_list_select_mode_set(li, ELM_OBJECT_SELECT_MODE_ALWAYS);
68
69 /* set bounce and scroller policy */
70 elm_list_bounce_set(li, EINA_TRUE, EINA_TRUE);
71 elm_list_scroller_policy_set(li, ELM_SCROLLER_POLICY_AUTO,
72 ELM_SCROLLER_POLICY_ON);
73
74 elm_list_go(li);
75 evas_object_show(li);
76
77 evas_object_resize(win, 320, 120);
78 evas_object_show(win);
79
80 elm_run();
81 elm_shutdown();
82
83 return 0;
84}
85ELM_MAIN()