2 * Tested interface: AtkObject
4 * Tested AtkObject: EailGrid
6 * Description: Test AtkObject interface
8 * Test input: accessible object representing EailGrid
10 * Expected test result: test should return 0 (success)
14 #include <Elementary.h>
19 #include "eail_test_utils.h"
32 _change_radio_cb(void *data, Evas_Object *obj, void *event)
34 Evas_Object *lb = (Evas_Object *)data;
35 int style = elm_radio_value_get((Evas_Object *)obj);
40 _printf("change_radio: slide_short\n");
41 elm_object_style_set(lb, "slide_short");
45 _printf("change_radio: slide_long\n");
46 elm_object_style_set(lb, "slide_long");
50 _printf("change_radio: slide_bounce\n");
51 elm_object_style_set(lb, "slide_bounce");
60 _change_slider_cb(void *data, Evas_Object *obj, void *event_info)
62 Evas_Object *lb = (Evas_Object *)data;
63 double val = elm_slider_value_get(obj);
64 elm_label_slide_duration_set(lb, val);
68 _do_test(AtkObject *obj)
70 g_assert(ATK_IS_OBJECT(obj));
71 atk_object_set_description(obj, "test");
72 g_assert_cmpstr(atk_object_get_description(obj), ==, "test");
74 atk_object_set_name(obj, "test name");
75 g_assert_cmpstr(atk_object_get_name(obj), ==, "test name");
77 g_assert(atk_object_get_role(obj) == ATK_ROLE_FILLER);
79 g_assert(8 == atk_object_get_n_accessible_children(obj));
81 eailu_test_code_called = 1;
85 _init_grid(Evas_Object *win)
87 Evas_Object *bg, *gd, *lb, *rd, *rdg, *sl;
90 elm_win_resize_object_add(win, bg);
91 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
94 gd = elm_grid_add(win);
95 elm_grid_size_set(gd, 100, 100);
96 evas_object_size_hint_weight_set(gd, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
97 elm_win_resize_object_add(win, gd);
100 lb = elm_label_add(win);
101 elm_object_text_set(lb, "Test Label Ellipsis:");
102 elm_grid_pack(gd, lb, 5, 5, 90, 10);
103 evas_object_show(lb);
105 lb = elm_label_add(win);
106 elm_object_text_set(lb,
107 "This is a label set to ellipsis. "
108 "If set ellipsis to true and the text doesn't fit "
109 "in the label an ellipsis(\"...\") will be shown "
110 "at the end of the widget."
113 elm_label_ellipsis_set(lb, EINA_TRUE);
114 elm_grid_pack(gd, lb, 5, 15, 90, 10);
115 evas_object_show(lb);
117 lb = elm_label_add(win);
118 elm_object_text_set(lb, "Test Label Slide:");
119 elm_grid_pack(gd, lb, 5, 30, 90, 10);
120 evas_object_show(lb);
122 lb = elm_label_add(win);
123 elm_object_style_set(lb, "slide_short");
124 elm_object_text_set(lb,
125 "This is a label set to slide. "
126 "If set slide to true the text of the label "
127 "will slide/scroll through the length of label."
128 "This only works with the themes \"slide_short\", "
129 "\"slide_long\" and \"slide_bounce\"."
131 elm_grid_pack(gd, lb, 5, 40, 90, 10);
132 evas_object_show(lb);
134 rd = elm_radio_add(win);
135 elm_radio_state_value_set(rd, SLIDE_SHORT);
136 elm_object_text_set(rd, "slide_short");
137 evas_object_size_hint_weight_set(rd, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
138 evas_object_smart_callback_add(rd, "changed", _change_radio_cb, lb);
139 elm_grid_pack(gd, rd, 5, 50, 30, 10);
140 evas_object_show(rd);
143 rd = elm_radio_add(win);
144 elm_radio_state_value_set(rd, SLIDE_LONG);
145 elm_radio_group_add(rd, rdg);
146 elm_object_text_set(rd, "slide_long");
147 evas_object_size_hint_weight_set(rd, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
148 evas_object_smart_callback_add(rd, "changed", _change_radio_cb, lb);
149 elm_grid_pack(gd, rd, 35, 50, 30, 10);
150 evas_object_show(rd);
152 rd = elm_radio_add(win);
153 elm_radio_state_value_set(rd, SLIDE_BOUNCE);
154 elm_radio_group_add(rd, rdg);
155 elm_object_text_set(rd, "slide_bounce");
156 evas_object_size_hint_weight_set(rd, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
157 evas_object_smart_callback_add(rd, "changed", _change_radio_cb, lb);
158 elm_grid_pack(gd, rd, 65, 50, 30, 10);
159 evas_object_show(rd);
161 sl = elm_slider_add(win);
162 elm_object_text_set(sl, "Slide Duration");
163 elm_slider_unit_format_set(sl, "%1.1f units");
164 elm_slider_min_max_set(sl, 1, 20);
165 elm_slider_value_set(sl, 10);
166 evas_object_size_hint_align_set(sl, EVAS_HINT_FILL, 0.5);
167 evas_object_size_hint_weight_set(sl, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
168 evas_object_smart_callback_add(sl, "changed", _change_slider_cb, lb);
169 elm_grid_pack(gd, sl, 5, 60, 90, 10);
170 evas_object_show(sl);
174 elm_main(int argc, char **argv)
178 win = eailu_create_test_window_with_glib_init(_on_done, _on_focus_in);
181 evas_object_show(win);