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;
}
コード例 #2
0
ファイル: datetime.c プロジェクト: 10zeroone/study_tizen
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);
}