1 #include <Elementary.hh>
4 elm_main (int argc, char *argv[])
6 elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_HIDDEN);
8 ::elm::win win(elm_win_util_standard_add("spinner", "Spinner Example"));
9 win.autohide_set(true);
11 ::elm::box bx(efl::eo::parent = win);
12 bx.size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
13 win.resize_object_add(bx);
16 ::elm::spinner sp(efl::eo::parent = win);
17 sp.size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
18 sp.size_hint_align_set(EVAS_HINT_FILL, 0.5);
22 ::elm::spinner sp2(efl::eo::parent = win);
23 sp2.label_format_set("Percentage %%%1.2f something");
24 sp2.size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
25 sp2.size_hint_align_set(EVAS_HINT_FILL, 0.5);
27 sp2.visible_set(true);
29 ::elm::spinner sp3(efl::eo::parent = win);
30 sp3.label_format_set("%1.1f units");
33 sp3.min_max_set(-50.0, 250.0);
34 sp3.size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
35 sp3.size_hint_align_set(EVAS_HINT_FILL, 0.5);
37 sp3.visible_set(true);
39 ::elm::spinner sp4(efl::eo::parent = win);
40 sp4.style_set("vertical");
41 sp4.interval_set(0.2);
42 sp4.size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
43 sp4.size_hint_align_set(EVAS_HINT_FILL, 0.5);
45 sp4.visible_set(true);
47 ::elm::spinner sp5(efl::eo::parent = win);
48 sp5.editable_set(false);
49 sp5.size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
50 sp5.size_hint_align_set(EVAS_HINT_FILL, 0.5);
52 sp5.visible_set(true);
54 ::elm::spinner sp6(efl::eo::parent = win);
55 sp6.editable_set(false);
56 sp6.min_max_set(1, 12);
57 sp6.special_value_add(1, "January");
58 sp6.special_value_add(2, "February");
59 sp6.special_value_add(3, "March");
60 sp6.special_value_add(4, "April");
61 sp6.special_value_add(5, "May");
62 sp6.special_value_add(6, "June");
63 sp6.special_value_add(7, "July");
64 sp6.special_value_add(8, "August");
65 sp6.special_value_add(9, "September");
66 sp6.special_value_add(10, "October");
67 sp6.special_value_add(11, "November");
68 sp6.special_value_add(12, "December");
69 sp6.size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
70 sp6.size_hint_align_set(EVAS_HINT_FILL, 0.5);
72 sp6.visible_set(true);
74 ::elm::spinner sp7(efl::eo::parent = win);
75 sp7.size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
76 sp7.size_hint_align_set(EVAS_HINT_FILL, 0.5);
78 sp7.visible_set(true);
79 sp7.editable_set(true);
81 auto changed = std::bind([&] () { std::cout << "Value changed to " << sp7.value_get() << std::endl; });
83 sp7.callback_changed_add( changed );
85 auto delay = std::bind([&] () {std::cout << "Value delay changed to " << sp7.value_get() << std::endl;});
87 sp7.callback_delay_changed_add( delay );
89 win.visible_set(true);