Evas_Object *ctxpopup_cb(void *data) { Evas_Object *wbox, *obox, *btn, *table, *hov; appdata *ad = data; wbox = ad->widget_box; obox = ad->option_box; // widget box btn = elm_button_add(wbox); elm_object_text_set(btn, "Click here to show ctxpopup"); evas_object_show(btn); elm_box_pack_end(wbox, btn); evas_object_smart_callback_add(btn, "clicked", _btn_clicked, (void *)ad->win); // option box hov = elm_hoversel_add(obox); elm_hoversel_hover_parent_set(hov, ad->win); elm_object_text_set(hov, "Up"); evas_object_show(hov); elm_hoversel_item_add(hov, "Up", NULL, ELM_ICON_NONE, NULL, NULL); elm_hoversel_item_add(hov, "Down", NULL, ELM_ICON_NONE, NULL, NULL); elm_hoversel_item_add(hov, "Left", NULL, ELM_ICON_NONE, NULL, NULL); elm_hoversel_item_add(hov, "Right", NULL, ELM_ICON_NONE, NULL, NULL); evas_object_smart_callback_add(hov, "selected", _selected, NULL); table = widget_min_set(hov, obox, ELM_SCALE_SIZE(200), ELM_SCALE_SIZE(50)); evas_object_event_callback_add(table, EVAS_CALLBACK_DEL, table_del_cb, NULL); evas_object_show(table); elm_box_pack_end(obox, table); evas_object_size_hint_weight_set(table, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); return btn; }
void datetime_cb(void *data, Evas_Object *obj, void *event_info) { appdata_s *ad = data; Elm_Object_Item *it; Evas_Object *box, *layout; datetimedata_s *dd = calloc(1, sizeof(datetimedata_s)); dd->nf = ad->nf; time_t local_time = time(NULL); char buff[200] = {0}; struct tm *time_info = localtime(&local_time); dd->saved_time = *time_info; layout = elm_layout_add(ad->nf); evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_layout_file_set(layout, ELM_DEMO_EDJ, "white_bg_layout"); box = elm_box_add(layout); evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_box_padding_set(box, 0, ELM_SCALE_SIZE(70)); elm_object_part_content_set(layout, "elm.swallow.content", box); strftime(buff, 200, DATE_FORMAT, &dd->saved_time); dd->button1 = create_button(dd, box, buff, DATE_FORMAT); strftime(buff, 200, TIME_12_FORMAT, &dd->saved_time); dd->button2 = create_button(dd, box, buff, TIME_12_FORMAT); strftime(buff, 200, TIME_24_FORMAT, &dd->saved_time); dd->button3 = create_button(dd, box, buff, TIME_24_FORMAT); it = elm_naviframe_item_push(ad->nf, "DateTime", NULL, NULL, layout, NULL); elm_naviframe_item_pop_cb_set(it, naviframe_pop_cb, dd); }