void intf_video_player_play(interface *intf, const char *psz_path) { audio_player_stop(intf->p_mini_player); if (intf->video_player == NULL) intf_video_player_create(intf); Elm_Object_Item* it = intf_push_view(intf, intf->video_player, NULL); /* Hide the title bar of the naviframe */ elm_naviframe_item_title_enabled_set(it, EINA_FALSE, EINA_TRUE); video_player_start(intf->video_player->p_view_sys, psz_path); /* We want fullscreen */ elm_win_indicator_opacity_set(intf->win, ELM_WIN_INDICATOR_TRANSPARENT); }
static void tabbar_item_cb(void *data, Evas_Object *obj, void *event_info) { view_sys *p_sys = data; const char *str = elm_object_item_text_get((Elm_Object_Item *)event_info); /* Create the view depending on the item selected in the toolbar */ Evas_Object *content; if (str && !strcmp(str, "License")) { content = create_licence_section(p_sys); } else { content = create_about_section(p_sys); } /* Show it without title */ Elm_Object_Item *item = elm_naviframe_item_push(p_sys->nf_toolbar, str, NULL, NULL, content, NULL); elm_naviframe_item_title_enabled_set(item, EINA_FALSE, EINA_FALSE); }
Evas_Object *main_view_add(Evas_Object *navi) { main_view *main_view_data = calloc(1, sizeof(main_view)); RETVM_IF(!main_view_data, NULL, "calloc() failed"); main_view_data->navi = navi; main_view_data->layout = ui_utils_layout_add(main_view_data->navi, _main_view_destroy, main_view_data); if(!main_view_data->layout) { ERR("ui_utils_layout_add() failed"); free(main_view_data); return NULL; } main_view_data->preview_canvas = evas_object_image_add(evas_object_evas_get(main_view_data->layout)); if(!main_view_data->preview_canvas) { ERR("_main_view_rect_create() failed"); evas_object_del(main_view_data->layout); return NULL; } elm_object_part_content_set(main_view_data->layout, "elm.swallow.content", main_view_data->preview_canvas); main_view_data->camera_enabled = _main_view_init_camera(main_view_data); if (!main_view_data->camera_enabled) { ERR("_main_view_start_preview failed"); _main_view_show_warning_popup(navi, _error, _camera_init_failed, _ok, main_view_data); } _main_view_register_cbs(main_view_data); main_view_data->navi_item = elm_naviframe_item_push(main_view_data->navi, NULL, NULL, NULL, main_view_data->layout, NULL); // main_view_data->navi_item = elm_naviframe_item_push(main_view_data->navi, "Color Picker", NULL, NULL, main_view_data->layout, NULL); elm_naviframe_item_title_enabled_set(main_view_data->navi_item, EINA_FALSE, EINA_TRUE); return main_view_data->layout; }
static void _create_view_layout(Evas_Object *parent, char *layout_file, char *index_style, char it_style[][20], Eina_Bool even_num) { Evas_Object *layout, *scroller, *box, *left_right_rect, *img, *page_layout, *index; Elm_Object_Item *nf_it; char img_path[PATH_MAX]; int i, max_items; page_data *pd = (page_data *)calloc(1, sizeof(page_data)); /* Create Layout */ layout = elm_layout_add(parent); elm_layout_file_set(layout, ELM_DEMO_EDJ, layout_file); evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_show(layout); evas_object_event_callback_add(layout, EVAS_CALLBACK_DEL, _layout_del_cb, pd); pd->main_layout = layout; /* Create Scroller */ scroller = elm_scroller_add(layout); elm_scroller_loop_set(scroller, EINA_FALSE, EINA_FALSE); evas_object_size_hint_weight_set(scroller, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(scroller, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_scroller_policy_set(scroller, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF); elm_scroller_page_scroll_limit_set(scroller, 1, 0); elm_object_scroll_lock_y_set(scroller, EINA_TRUE); elm_object_part_content_set(layout, "scroller", scroller); evas_object_show(scroller); evas_object_smart_callback_add(scroller, "scroll", _scroll, pd); pd->scroller = scroller; /* Create Box */ box = elm_box_add(scroller); elm_box_horizontal_set(box, EINA_TRUE); elm_object_content_set(scroller, box); evas_object_show(box); pd->box = box; /* Create Rect object for page_layout center align in Box */ left_right_rect = evas_object_rectangle_add(evas_object_evas_get(box)); elm_box_pack_end(box, left_right_rect); /* Create Pages */ if (even_num) max_items = NUM_INDEX_CIRCLE_EVEN; else max_items = NUM_ITEMS; for (i = 0; i < max_items; ++i) { page_layout = elm_layout_add(box); pd->page_layout[i] = page_layout; evas_object_size_hint_weight_set(page_layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(page_layout, 0, EVAS_HINT_FILL); elm_layout_theme_set(page_layout, "layout", "body_thumbnail", "default"); evas_object_show(page_layout); img = elm_image_add(page_layout); snprintf(img_path, sizeof(img_path), "%s/100_%d.jpg", ICON_DIR, (i % 6) + 1); elm_image_file_set(img, img_path, NULL); elm_object_part_content_set(page_layout, "elm.icon", img); /* Make unselect state all of the pages except first one */ if (i) elm_object_signal_emit(page_layout, "elm,state,thumbnail,unselect", "elm"); elm_box_pack_end(box, page_layout); } /*Add resize callback for get a actual size of layout and main layout */ evas_object_event_callback_add(pd->page_layout[0], EVAS_CALLBACK_RESIZE, _layout_resize_cb, pd); elm_box_pack_end(box, left_right_rect); pd->left_right_rect = left_right_rect; /* Add animator for page transfer effect */ ecore_animator_add(animator_cb, pd); /* Create Index */ index = elm_index_add(layout); elm_object_style_set(index, index_style); evas_object_size_hint_weight_set(index, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(index, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_index_horizontal_set(index, EINA_TRUE); elm_index_autohide_disabled_set(index, EINA_TRUE); elm_object_part_content_set(layout, "controller", index); for (i = 0; i < max_items; ++i) { pd->it[i] = elm_index_item_append(index, NULL, NULL, (void *) i); if (it_style) elm_object_item_style_set(pd->it[i], it_style[i]); } pd->min_page = 0; pd->max_page = max_items - 1; elm_index_level_go(index, 0); elm_index_item_selected_set(pd->it[0], EINA_TRUE); pd->cur_page = 0; pd->index = index; pd->last_it = pd->it[0]; evas_object_event_callback_add(index, EVAS_CALLBACK_MOUSE_DOWN, _on_index_mouse_down_cb, pd); evas_object_event_callback_add(index, EVAS_CALLBACK_MOUSE_MOVE, _on_index_mouse_move_cb, pd); evas_object_event_callback_add(index, EVAS_CALLBACK_MOUSE_UP, _on_index_mouse_up_cb, pd); nf_it = elm_naviframe_item_push(parent, NULL, NULL, NULL, layout, NULL); elm_naviframe_item_title_enabled_set(nf_it, EINA_FALSE, EINA_FALSE); }