void contact_list_add(struct ContactListData *list_data) { Evas_Object *win; win = ui_utils_view_window_get(list_data->view); list_data->index = NULL; list_data->list = elm_genlist_add(win); elm_genlist_mode_set(list_data->list, ELM_LIST_LIMIT); elm_genlist_longpress_timeout_set(list_data->list, 0.5); //elm_genlist_multi_select_set(list_data->list, EINA_TRUE); evas_object_size_hint_align_set(list_data->list, 0.0, 0.0); elm_object_scale_set(list_data->list, 1.0); itc.item_style = "contact"; itc.func.text_get = gl_text_get; itc.func.content_get = gl_content_get; itc.func.state_get = NULL; itc.func.del = gl_del; evas_object_show(list_data->list); if (list_data->layout) { elm_object_part_content_set(list_data->layout, "contacts_list", list_data->list); } list_data->progress = elm_progressbar_add(win); elm_object_style_set(list_data->progress, "wheel"); elm_object_text_set(list_data->progress, D_("Loading...")); evas_object_size_hint_align_set(list_data->progress, EVAS_HINT_FILL, 0.5); evas_object_size_hint_weight_set(list_data->progress, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_object_part_content_set(list_data->layout, "loading_indicator", list_data->progress); evas_object_show(list_data->progress); }
void GenlistItemScenarioSchedule::scenarioDelete(void *data) { if (!scenario) return; Evas_Object *table = createPaddingTable(evas, parent, 280, 260); Evas_Object *glist = elm_genlist_add(table); elm_object_style_set(glist, "calaos"); elm_genlist_select_mode_set(glist, ELM_OBJECT_SELECT_MODE_ALWAYS); evas_object_size_hint_fill_set(glist, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_weight_set(glist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_show(glist); string title_label = _("Confirmation<br><small><light_blue>Are you sure you want to delete this scenarios?</light_blue></small>"); GenlistItemBase *header = new GenlistItemSimpleHeader(evas, glist, title_label); header->Append(glist); GenlistItemSimple *_item = new GenlistItemSimple(evas, parent, _("Yes, delete the scenario"), true); _item->Append(glist, header); _item->item_selected.connect(sigc::mem_fun(*this, &GenlistItemScenarioSchedule::deleteScenarioValid)); _item = new GenlistItemSimple(evas, parent, _("No"), true); _item->Append(glist, header); _item->item_selected.connect(sigc::bind(sigc::mem_fun(*this, &GenlistItemScenarioSchedule::deleteScenarioCancel), _item)); elm_table_pack(table, glist, 1, 1, 1, 1); elm_naviframe_item_push(pager_popup, NULL, NULL, NULL, table, "calaos"); }
Evas_Object* viewer_list_create(Evas_Object *win) { __COMMON_FUNC_ENTER__; assertm_if(NULL == win, "NULL!!"); assertm_if(NULL != viewer_list, "Err!!"); viewer_list = elm_genlist_add(win); elm_object_style_set(viewer_list, "dialogue"); assertm_if(NULL == viewer_list, "NULL!!"); elm_genlist_mode_set(viewer_list, ELM_LIST_LIMIT); evas_object_size_hint_weight_set(viewer_list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(viewer_list, EVAS_HINT_FILL, EVAS_HINT_FILL); container = NULL; container = g_slist_alloc(); assertm_if(NULL == container, "NULL!!"); itc.item_style = "dialogue/2text.2icon.3.tb"; itc.func.text_get = _gl_listview_text_get; itc.func.content_get = _gl_listview_content_get; itc.func.state_get = NULL; itc.func.del = _gl_listview_del; __COMMON_FUNC_EXIT__; return viewer_list; }
static void create_main_view(appdata_s *ad) { Evas_Object *genlist; Evas_Object *circle_genlist; Evas_Object *btn; Evas_Object *nf = ad->nf; Elm_Object_Item *nf_it; Elm_Genlist_Item_Class *itc = elm_genlist_item_class_new(); Elm_Genlist_Item_Class *ttc = elm_genlist_item_class_new(); Elm_Genlist_Item_Class *ptc = elm_genlist_item_class_new(); item_data *id; int index = 0; /* Genlist */ genlist = elm_genlist_add(nf); elm_genlist_mode_set(genlist, ELM_LIST_COMPRESS); evas_object_smart_callback_add(genlist, "selected", gl_selected_cb, NULL); circle_genlist = eext_circle_object_genlist_add(genlist, ad->circle_surface); eext_circle_object_genlist_scroller_policy_set(circle_genlist, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_AUTO); eext_rotary_object_event_activated_set(circle_genlist, EINA_TRUE); /* Genlist Title Item style */ ttc->item_style = "title"; ttc->func.text_get = _gl_menu_title_text_get; ttc->func.del = _gl_menu_del; /* Genlist Item style */ itc->item_style = "default"; itc->func.text_get = _gl_menu_text_get; itc->func.del = _gl_menu_del; /* Genlist Padding Item style */ ptc->item_style = "padding"; ptc->func.del = _gl_menu_del; /* Title Items Here */ elm_genlist_item_append(genlist, ttc, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL); /* Main Menu Items Here */ id = (item_data *)calloc(sizeof(item_data), 1); id->index = index++; id->item = elm_genlist_item_append(genlist, itc, id, NULL, ELM_GENLIST_ITEM_NONE, index_cb, ad); id = (item_data *)calloc(sizeof(item_data), 1); id->index = index++; id->item = elm_genlist_item_append(genlist, itc, id, NULL, ELM_GENLIST_ITEM_NONE, index_cb, ad); elm_genlist_item_append(genlist, ptc, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL); elm_genlist_item_class_free(itc); elm_genlist_item_class_free(ttc); elm_genlist_item_class_free(ptc); /* This button is set for devices which doesn't have H/W back key. */ btn = elm_button_add(nf); elm_object_style_set(btn, "naviframe/end_btn/default"); nf_it = elm_naviframe_item_push(nf, NULL, btn, NULL, genlist, "empty"); elm_naviframe_item_pop_cb_set(nf_it, naviframe_pop_cb, ad->win); }
ActivityConfigClockView::ActivityConfigClockView(Evas *_e, Evas_Object *_parent): ActivityView(_e, _parent, "calaos/page/config/clock") { printf("Clock view constructor\n"); TimeZone tz; tzList = elm_genlist_add(_parent); setPartText("tab1.text", _("Action and positions of widgets")); setPartText("tab1.text.detail", _("Resume : <light_blue>Current settings</light_blue><br><small>Configure Date and Time !</small")); setPartText("tab2.text", _("About")); setPartText("tab2.text.detail", _("About : <light_blue>Calaos products</light_blue><br><small>Touchscreen solutions.</small>")); elm_object_style_set(tzList, "calaos"); elm_genlist_select_mode_set(tzList, ELM_OBJECT_SELECT_MODE_ALWAYS); evas_object_size_hint_fill_set(tzList, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_weight_set(tzList, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_show(tzList); Swallow(tzList, "timezone_list.swallow"); for(unsigned int i = 0; i < tz.timeZone.size(); i++) { GenlistItemSimple *_item; _item = new GenlistItemSimple(evas, tzList, tz.timeZone[i].key, true); _item->Append(tzList); } }
static Evas_Object *_create_genlist(Evas_Object* parent) { __COMMON_FUNC_ENTER__; assertm_if(NULL == parent, "parent is NULL!!"); list = elm_genlist_add(parent); assertm_if(NULL == list, "list allocation fail!!"); elm_genlist_fx_mode_set(list, EINA_FALSE); elm_genlist_mode_set(list, ELM_LIST_COMPRESS); elm_genlist_homogeneous_set(list, EINA_TRUE); evas_object_size_hint_weight_set(list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(list, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_smart_callback_add(list, "highlighted", _gl_highlighted, NULL); evas_object_smart_callback_add(list, "unhighlighted", _gl_unhighlighted, NULL); itc.item_style = "2line.top"; itc.func.text_get = _gl_text_get; itc.func.content_get = _gl_content_get; itc.func.state_get = NULL; itc.func.del = _gl_list_del; __COMMON_FUNC_EXIT__; return list; }
ActivityScenariosView::ActivityScenariosView(Evas *_e, Evas_Object *_parent): ActivityView(_e, _parent, "calaos/page/scenarios"), view_mode(VIEW_MODE_ALL) { setPartText("header.label", _("Scenario management")); addCallback("button.*", "pressed", sigc::mem_fun(*this, &ActivityScenariosView::buttonPressed)); schedule_list = elm_genlist_add(parent); Swallow(schedule_list, "scenario_schedule.list"); elm_object_style_set(schedule_list, "calaos"); elm_genlist_homogeneous_set(schedule_list, true); evas_object_show(schedule_list); scenario_list = elm_genlist_add(parent); Swallow(scenario_list, "scenario.list"); elm_object_style_set(scenario_list, "calaos"); elm_genlist_homogeneous_set(scenario_list, true); evas_object_show(scenario_list); Evas_Object *btn = edje_object_part_external_object_get(edje, "button.calendar.today"); elm_object_text_set(btn, _("Today")); btn = edje_object_part_external_object_get(edje, "button.create"); elm_object_text_set(btn, _("Create a new scenario")); btn = edje_object_part_external_object_get(edje, "button.list.all"); elm_object_text_set(btn, _("All")); btn = edje_object_part_external_object_get(edje, "button.list.light"); elm_object_text_set(btn, _("Lights")); btn = edje_object_part_external_object_get(edje, "button.list.shutters"); elm_object_text_set(btn, _("Shutters")); btn = edje_object_part_external_object_get(edje, "button.list.schedule"); elm_object_text_set(btn, _("Scheduled")); //default to today time_t t = time(0); currDate = *localtime(&t); if (CalaosModel::Instance().getScenario()) scenarioChangeCon = CalaosModel::Instance().getScenario()->scenario_change.connect([=](Scenario *) { reloadCalendar(); }); }
Evas_Object *Add_To_Most_Visited_Sites_View::_create_history_genlist(void) { BROWSER_LOGD("[%s]", __func__); Evas_Object *genlist = elm_genlist_add(m_conformant); if (!genlist) { BROWSER_LOGE("elm_genlist_add failed"); return NULL; } evas_object_size_hint_weight_set(genlist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(genlist, EVAS_HINT_FILL, EVAS_HINT_FILL); memset(&m_history_genlist_item_class, 0x00, sizeof(Elm_Genlist_Item_Class)); m_history_genlist_item_class.item_style = "2text.1icon.4"; m_history_genlist_item_class.func.text_get = __genlist_label_get_cb; m_history_genlist_item_class.func.content_get = __genlist_icon_get_cb; m_history_genlist_item_class.func.state_get = NULL; m_history_genlist_item_class.func.del = NULL; memset(&m_history_group_title_class, 0x00, sizeof(Elm_Genlist_Item_Class)); m_history_group_title_class.item_style = "grouptitle"; m_history_group_title_class.func.text_get = __genlist_date_label_get_cb; m_history_group_title_class.func.content_get = NULL; m_history_group_title_class.func.state_get = NULL; m_history_group_title_class.func.del = NULL; m_history_list.clear(); m_history_date_label_list.clear(); Eina_Bool ret = m_data_manager->get_history_db()->get_history_list(m_history_list); if (!ret) { BROWSER_LOGE("get_history_list failed"); return NULL; } unsigned int history_count = m_history_list.size(); Date date; Elm_Object_Item *it = NULL; for(int i = 0 ; i < history_count; i++) { sscanf(m_history_list[i]->date.c_str(), "%d-%d-%d", &date.year, &date.month, &date.day); m_history_list[i]->user_data = (void *)this; if (m_last_date != date) { m_last_date = date; char *labe_item = strdup(m_history_list[i]->date.c_str()); m_history_date_label_list.push_back(labe_item); it = elm_genlist_item_append(genlist, &m_history_group_title_class, labe_item, NULL, ELM_GENLIST_ITEM_GROUP, NULL, NULL); elm_genlist_item_select_mode_set(it, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY); } elm_genlist_item_append(genlist, &m_history_genlist_item_class, m_history_list[i], it, ELM_GENLIST_ITEM_NONE, __history_item_clicked_cb, this); } return genlist; }
static Evas_Object * _add_genlist(Evas_Object *win) { Evas_Object *list = elm_genlist_add(win); elm_genlist_mode_set(list, ELM_LIST_LIMIT); evas_object_size_hint_align_set(list, 0.0, 0.0); evas_object_show(list); return list; }
static Evas_Object * _genlist_add(Evas_Object *box) { Evas_Object *list = elm_genlist_add(elm_object_parent_widget_get(box)); evas_object_size_hint_weight_set(list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(list, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_box_pack_end(box, list); evas_object_show(list); return list; }
int main(int argc, char **argv) { Evas_Object *win; if (!elm_init(argc, argv)) return -1; win = elm_win_util_standard_add("Genlist", "Genlist Basic Tutorial"); elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED); elm_win_autodel_set(win, EINA_TRUE); //win 400x400 px evas_object_resize(win, 400, 400); //GENLIST here Evas_Object *list; list = elm_genlist_add(win); Elm_Genlist_Item_Class *_itc = elm_genlist_item_class_new(); _itc->item_style = "default"; _itc->func.text_get = _genlist_text_get; _itc->func.content_get = _genlist_content_get; _itc->func.state_get = NULL; _itc->func.del = NULL; Elm_Genlist_Item_Class *_itc2 = elm_genlist_item_class_new(); _itc2->item_style = "group_index"; _itc2->func.text_get = _genlist_text_get; _itc2->func.content_get = _genlist_content_get; _itc2->func.state_get = NULL; _itc2->func.del = NULL; int i=0; for (i=0; i<20; i++) { elm_genlist_item_append( list, _itc, (void *)(uintptr_t) i, // Item data NULL, // Parent item for trees, NULL if none ELM_GENLIST_ITEM_NONE, // Item type; this is the common one _genlist_selected_cb, // Callback on selection of the item _itc2 // Data for that callback function ); } evas_object_size_hint_weight_set(list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_win_resize_object_add(win, list); evas_object_show(list); evas_object_show(win); elm_run(); elm_shutdown(); return 0; }
Evas_Object *slides_list_new() { Evas_Object *vbox, *btn; vbox = elm_box_add(win); evas_object_size_hint_weight_set(vbox, -1.0, 1.0); evas_object_size_hint_align_set(vbox, -1.0, -1.0); evas_object_show(vbox); //button add a new slide btn = elm_button_add(win); bt_slide_new = btn; elm_button_label_set(btn, D_("Add a new slide")); evas_object_size_hint_weight_set(btn, -1.0, -1.0); evas_object_size_hint_align_set(btn, -1.0, -1.0); evas_object_smart_callback_add(btn, "clicked", _slide_add_cb, _sl); elm_box_pack_end(vbox, btn); evas_object_show(btn); // // The list of slides slides_list = elm_genlist_add(win); evas_object_size_hint_weight_set(slides_list, -1.0, 1.0); evas_object_size_hint_align_set(slides_list, -1.0, -1.0); evas_object_show(slides_list); elm_box_pack_end(vbox, slides_list); itc_slides.item_style = "icon_top_text_bottom"; itc_slides.func.text_get = _slides_list_text_get; itc_slides.func.content_get = _slides_list_icon_get; itc_slides.func.state_get = _slides_list_state_get; itc_slides.func.del = _slides_list_del; // //the slider which zoom the list _sl = elm_slider_add(win); elm_slider_label_set(_sl, "Zoom"); elm_slider_span_size_set(_sl, 140); elm_slider_indicator_format_set(_sl, "%3.0f"); elm_slider_min_max_set(_sl, 0, 100*SLIDER_ZOOM_MAX); elm_slider_value_set(_sl, 10); elm_slider_unit_format_set(_sl, "%4.0f"); evas_object_size_hint_weight_set(_sl, -1.0, -1.0); evas_object_size_hint_align_set(_sl, -1.0, 1.0); evas_object_smart_callback_add(_sl, "delay,changed", _slider_zoom_cb, _sl); evas_object_show(_sl); elm_box_pack_end(vbox, _sl); // return vbox; }
void ApplicationController::onMenuRebootClick() { Evas_Object *table = createPaddingTable(evas, layout, 260, 200); Evas_Object *glist = elm_genlist_add(layout); elm_object_style_set(glist, "calaos"); elm_genlist_select_mode_set(glist, ELM_OBJECT_SELECT_MODE_ALWAYS); evas_object_size_hint_fill_set(glist, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_weight_set(glist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_show(glist); Evas_Object *popup = elm_ctxpopup_add(layout); elm_object_style_set(popup, "calaos"); evas_object_size_hint_min_set(popup, 300, 240); GenlistItemSimple *item; item = new GenlistItemSimple(evas, glist, _("Restart application only"), true); item->Append(glist); item->item_selected.connect([this, popup](void *) { elm_ctxpopup_dismiss(popup); menuView->CloseLinkMenu(); system("systemctl restart calaos-home"); }); item = new GenlistItemSimple(evas, glist, _("Reboot machine"), true); item->Append(glist); item->item_selected.connect([this, popup](void *) { elm_ctxpopup_dismiss(popup); menuView->CloseLinkMenu(); system("sync"); system("reboot"); }); elm_table_pack(table, glist, 1, 1, 1, 1); elm_object_content_set(popup, table); Evas_Coord x,y; evas_pointer_canvas_xy_get(evas, &x, &y); evas_object_move(popup, x, y); evas_object_show(popup); }
static void startup(void) { tet_infoline("[[ TET_MSG ]]:: ============ Startup ============ "); elm_init(0, NULL); main_win = elm_win_add(NULL, "main", ELM_WIN_BASIC); evas_object_show(main_win); genlist = elm_genlist_add(main_win); evas_object_show(genlist); elm_win_resize_object_add(main_win, genlist); evas_object_size_hint_align_set(genlist, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_weight_set(genlist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); itc.item_style = "1line_textonly"; itc.func.text_get = NULL; itc.func.content_get = NULL; itc.func.state_get = NULL; itc.func.del = NULL; }
static Evas_Object* consumerapp_create_genlist(Evas_Object *parent) { Evas_Object *genlist; genlist = elm_genlist_add(parent); if(NULL == genlist) { ERR("elm_genlist_add() Fail"); return NULL; } elm_object_style_set(genlist , "dialogue"); evas_object_size_hint_weight_set(genlist , EVAS_HINT_EXPAND , EVAS_HINT_EXPAND); evas_object_show(genlist); evas_object_smart_callback_add(genlist , "realized" , __gl_realized_cb , NULL); return genlist; }
EAPI_MAIN int elm_main(int argc, char **argv) { Evas_Object *win; Evas_Object *list; int i; win = elm_win_util_standard_add("genlist", "Genlist"); elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED); elm_win_autodel_set(win, EINA_TRUE); if (!_itc) { _itc = elm_genlist_item_class_new(); _itc->item_style = "default"; _itc->func.text_get = _item_label_get; _itc->func.content_get = _item_content_get; _itc->func.state_get = NULL; _itc->func.del = NULL; } list = elm_genlist_add(win); for (i = 0; i < N_ITEMS; i++) { elm_genlist_item_append(list, _itc, (void *)(long)i, NULL, ELM_GENLIST_ITEM_NONE, _item_sel_cb, NULL); } evas_object_size_hint_weight_set(list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_win_resize_object_add(win, list); evas_object_show(list); evas_object_resize(win, 320, 320); evas_object_show(win); elm_run(); return 0; }
static Evas_Object *_create_imcontrolapi_list (Evas_Object *parent) { int i, num; Evas_Object *gl = elm_genlist_add (parent); itci.item_style = "default"; itci.func.text_get = gli_label_get; itci.func.content_get = NULL; itci.func.state_get = NULL; itci.func.del = NULL; num = sizeof (api_list) / sizeof (char *); for (i = 0; i < num; i++) { elm_genlist_item_append (gl, &itci, (void *)i/* item data */, NULL/* parent */, ELM_GENLIST_ITEM_NONE, test_api/* func */, (void *)i/* func data */); } return gl; }
void ApplicationController::onMenuAddWidgetClick() { Evas_Object *table = createPaddingTable(evas, layout, 260, 200); Evas_Object *glist = elm_genlist_add(layout); elm_object_style_set(glist, "calaos"); elm_genlist_select_mode_set(glist, ELM_OBJECT_SELECT_MODE_ALWAYS); evas_object_size_hint_fill_set(glist, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_weight_set(glist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_show(glist); Evas_Object *popup = elm_ctxpopup_add(layout); elm_object_style_set(popup, "calaos"); evas_object_size_hint_min_set(popup, 300, 240); vector<ModuleDef> mods = ModuleManager::Instance().getAvailableModules(); for (uint i = 0;i < mods.size();i++) { ModuleDef def = mods[i]; GenlistItemWidget *item = new GenlistItemWidget(evas, glist, def); item->Append(glist); item->item_selected.connect([this,i,popup](void *) { vector<ModuleDef> m = ModuleManager::Instance().getAvailableModules(); widgetsController->AddWidget(m[i], 200, 200); elm_ctxpopup_dismiss(popup); menuView->CloseLinkMenu(); }); } elm_table_pack(table, glist, 1, 1, 1, 1); elm_object_content_set(popup, table); Evas_Coord x,y; evas_pointer_canvas_xy_get(evas, &x, &y); evas_object_move(popup, x, y); evas_object_show(popup); }
static void startup(void) { Elm_Object_Item *item = NULL; int index = 0; tet_infoline("[[ TET_MSG ]]:: ============ Startup ============ "); elm_init(0, NULL); main_win = elm_win_add(NULL, "main", ELM_WIN_BASIC); evas_object_show(main_win); genlist = elm_genlist_add(main_win); evas_object_show(genlist); elm_win_resize_object_add(main_win, genlist); evas_object_size_hint_align_set(genlist, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_weight_set(genlist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); itc.item_style = "1line_textonly"; itc.func.text_get = _gl_text_get; itc.func.content_get = NULL; itc.func.state_get = NULL; itc.func.del = NULL; for (index = 0; index < 5; index++) { item = elm_genlist_item_append(genlist, &itc, (void *) index, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL); } }
ActivityAudioListView::ActivityAudioListView(Evas *_e, Evas_Object *_parent): ActivityView(_e, _parent, "calaos/page/media/audio_list"), player_current(NULL), in_edit_mode(false) { players.reserve(3); for (int i = 0;i < 3;i++) { ActivityPlayerObject ac(evas, parent); players.push_back(ac); players[players.size() - 1].createEdjeObject(theme, evas); Swallow(players[players.size() - 1].object, "player.swallow." + Utils::to_string(i + 1)); players[players.size() - 1].player_selected.connect(sigc::mem_fun(*this, &ActivityAudioListView::playerSelected)); } Evas_Object *btn = edje_object_part_external_object_get(edje, "button.browser.back"); elm_object_text_set(btn, _("My Music")); btn = edje_object_part_external_object_get(edje, "button.browser.root"); elm_object_text_set(btn, _("Back")); addCallback("button.browser.back", "pressed", sigc::mem_fun(*this, &ActivityAudioListView::browserButtonBack)); addCallback("button.browser.root", "pressed", sigc::mem_fun(*this, &ActivityAudioListView::browserButtonRoot)); gplaylist = elm_genlist_add(parent); Swallow(gplaylist, "playlist.swallow"); elm_object_style_set(gplaylist, "calaos"); elm_genlist_homogeneous_set(gplaylist, true); evas_object_show(gplaylist); pager_browser = elm_naviframe_add(parent); evas_object_show(pager_browser); Swallow(pager_browser, "browser.swallow"); addCallback("audio", "*", sigc::mem_fun(*this, &ActivityAudioListView::EdjeCallback)); }
EAPI_MAIN int elm_main(int argc, char **argv) { Evas_Object *win, *box, *hbox; Evas_Object *list, *btn; int i; win = elm_win_util_standard_add("genlist", "Genlist - simple"); elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED); elm_win_autodel_set(win, EINA_TRUE); box = elm_box_add(win); evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_win_resize_object_add(win, box); evas_object_show(box); list = elm_genlist_add(win); if (!_itc) { _itc = elm_genlist_item_class_new(); _itc->item_style = "default"; _itc->func.text_get = _item_label_get; _itc->func.content_get = _item_content_get; _itc->func.state_get = NULL; _itc->func.del = NULL; } Eina_Bool hbounce, vbounce, always, no_sel; Elm_Scroller_Policy hp, vp; Elm_Object_Select_Mode sel_mode; always = no_sel = EINA_FALSE; sel_mode = elm_genlist_select_mode_get(list); if (sel_mode == ELM_OBJECT_SELECT_MODE_ALWAYS) always = EINA_TRUE; else if (sel_mode == ELM_OBJECT_SELECT_MODE_NONE) no_sel = EINA_TRUE; printf("default values:\n"); printf("always select: %d\n", always); elm_scroller_bounce_get(list, &hbounce, &vbounce); printf("bounce - horizontal: %d, vertical: %d\n", hbounce, vbounce); printf("homogeneous: %d\n", elm_genlist_homogeneous_get(list)); printf("horizontal mode: %d\n", elm_genlist_mode_get(list)); printf("longpress timeout: %0.3f\n", elm_genlist_longpress_timeout_get(list)); printf("multi selection: %d\n", elm_genlist_multi_select_get(list)); printf("no selection mode: %d\n", no_sel); elm_scroller_policy_get(list, &hp, &vp); printf("scroller policy - horizontal: %d, vertical: %d\n", hp, vp); printf("block count: %d\n", elm_genlist_block_count_get(list)); printf("\n"); elm_scroller_bounce_set(list, EINA_FALSE, EINA_FALSE); elm_genlist_homogeneous_set(list, EINA_FALSE); elm_genlist_mode_set(list, ELM_LIST_LIMIT); elm_genlist_multi_select_set(list, EINA_TRUE); elm_genlist_select_mode_set(list, ELM_OBJECT_SELECT_MODE_DEFAULT); elm_scroller_policy_set(list, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_ON); elm_genlist_longpress_timeout_set(list, 0.5); elm_genlist_block_count_set(list, 16); for (i = 0; i < N_ITEMS; i++) { elm_genlist_item_append(list, _itc, (void *)(long)i, NULL, ELM_GENLIST_ITEM_NONE, _item_sel_cb, NULL); } evas_object_size_hint_weight_set(list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(list, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_box_pack_end(box, list); evas_object_show(list); hbox = elm_box_add(win); elm_box_horizontal_set(hbox, EINA_TRUE); evas_object_size_hint_weight_set(hbox, EVAS_HINT_EXPAND, 0); evas_object_size_hint_align_set(hbox, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_box_pack_end(box, hbox); evas_object_show(hbox); btn = elm_button_add(win); elm_object_text_set(btn, "Show status"); evas_object_size_hint_weight_set(btn, 0, 0); evas_object_size_hint_align_set(btn, 0.5, 0.5); evas_object_smart_callback_add(btn, "clicked", _show_status_cb, list); elm_box_pack_end(hbox, btn); evas_object_show(btn); btn = elm_button_add(win); elm_object_text_set(btn, "Realize"); evas_object_size_hint_weight_set(btn, 0, 0); evas_object_size_hint_align_set(btn, 0.5, 0.5); evas_object_smart_callback_add(btn, "clicked", _realize_cb, list); elm_box_pack_end(hbox, btn); evas_object_show(btn); evas_object_resize(win, 200, 320); evas_object_show(win); elm_run(); elm_shutdown(); return 0; }
ActivityScheduleScenarioView::ActivityScheduleScenarioView(Evas *_e, Evas_Object *_parent): ActivityView(_e, _parent, "calaos/page/schedule_scenario"), schedule_list(NULL), month_list(NULL) { setPartText("header.label", _("Scheduling")); addCallback("button.*", "pressed", sigc::mem_fun(*this, &ActivityScheduleScenarioView::buttonPressed)); schedule_list = elm_genlist_add(parent); Swallow(schedule_list, "schedule.list"); elm_object_style_set(schedule_list, "calaos"); elm_genlist_homogeneous_set(schedule_list, true); evas_object_show(schedule_list); month_list = elm_genlist_add(parent); Swallow(month_list, "month.list"); elm_object_style_set(month_list, "calaos"); elm_genlist_homogeneous_set(month_list, true); evas_object_show(month_list); elm_genlist_multi_select_set(month_list, true); GenlistItemScenarioHeader *header; GenlistItemSimple *item; header = new GenlistItemScenarioHeader(evas, parent, _("Month of year")); header->Append(month_list); item = new GenlistItemSimple(evas, parent, _("All year"), true, false, NULL, "check"); item->Append(month_list); item_all = item; item_all->setSelected(true); item = new GenlistItemSimple(evas, parent, _("January"), true, false, NULL, "check"); item->Append(month_list); items_months.push_back(item); item = new GenlistItemSimple(evas, parent, _("February"), true, false, NULL, "check"); item->Append(month_list); items_months.push_back(item); item = new GenlistItemSimple(evas, parent, _("March"), true, false, NULL, "check"); item->Append(month_list); items_months.push_back(item); item = new GenlistItemSimple(evas, parent, _("April"), true, false, NULL, "check"); item->Append(month_list); items_months.push_back(item); item = new GenlistItemSimple(evas, parent, _("May"), true, false, NULL, "check"); item->Append(month_list); items_months.push_back(item); item = new GenlistItemSimple(evas, parent, _("June"), true, false, NULL, "check"); item->Append(month_list); items_months.push_back(item); item = new GenlistItemSimple(evas, parent, _("July"), true, false, NULL, "check"); item->Append(month_list); items_months.push_back(item); item = new GenlistItemSimple(evas, parent, _("August"), true, false, NULL, "check"); item->Append(month_list); items_months.push_back(item); item = new GenlistItemSimple(evas, parent, _("September"), true, false, NULL, "check"); item->Append(month_list); items_months.push_back(item); item = new GenlistItemSimple(evas, parent, _("October"), true, false, NULL, "check"); item->Append(month_list); items_months.push_back(item); item = new GenlistItemSimple(evas, parent, _("November"), true, false, NULL, "check"); item->Append(month_list); items_months.push_back(item); item = new GenlistItemSimple(evas, parent, _("December"), true, false, NULL, "check"); item->Append(month_list); items_months.push_back(item); /* * Can't use that for now. Seasons are not the same all over the world at the same monthes * (northern hemisphere/southern hemisphere have the opposite) We need to handle that * maybe from longitude/latitude in local_config.xml * header = new GenlistItemScenarioHeader(evas, parent, "Périodes prédéfinies"); header->Append(month_list); item = new GenlistItemSimple(evas, parent, _("Spring"), true, false, NULL, "check"); item->Append(month_list); items_periods.push_back(item); item = new GenlistItemSimple(evas, parent, _("Summer"), true, false, NULL, "check"); item->Append(month_list); items_periods.push_back(item); item = new GenlistItemSimple(evas, parent, _("Fall"), true, false, NULL, "check"); item->Append(month_list); items_periods.push_back(item); item = new GenlistItemSimple(evas, parent, _("Winter"), true, false, NULL, "check"); item->Append(month_list); items_periods.push_back(item); */ //Set up selection callback item_all->item_selected.connect([=](void *data) { if (item_all->isSelected()) { for (uint i = 0;i < items_months.size();i++) items_months[i]->setSelected(false); } }); for (uint i = 0;i < items_months.size();i++) { GenlistItemSimple *it = items_months[i]; it->item_selected.connect([=](void *data) { if (item_all->isSelected()) item_all->setSelected(false); }); } // for (uint i = 0;i < items_periods.size();i++) // items_periods[i]->item_selected.connect(sigc::bind(sigc::mem_fun(*this, &ActivityScheduleScenarioView::itemPeriodSelected), items_periods[i])); Evas_Object *btn = edje_object_part_external_object_get(edje, "button.valid"); elm_object_text_set(btn, _("Apply")); btn = edje_object_part_external_object_get(edje, "button.add"); elm_object_text_set(btn, _("Add")); setPartText("hours_text", _("<big><disabled>Hours of execution</disabled></big>")); setPartText("month_text", _("<big><disabled>Specific schedule</disabled></big>")); }
void ActivityScheduleScenarioView::selectTimeType(void *data) { int *user_data = reinterpret_cast<int *>(data); if (editState == EDIT_START_TYPE) { editStatesHist.push(editState); edit_range.start_type = *user_data; if (edit_range.start_type == TimeRange::HTYPE_NORMAL) editState = EDIT_START_TIME; else editState = EDIT_START_OFFSET; } else if (editState == EDIT_END_TYPE) { edit_range.end_type = *user_data; editStatesHist.push(editState); if (edit_range.end_type == TimeRange::HTYPE_NORMAL) editState = EDIT_END_TIME; else editState = EDIT_END_OFFSET; } if (editState == EDIT_END_TIME || editState == EDIT_START_TIME) { if (editState == EDIT_END_TIME) edit_range.end_type = TimeRange::HTYPE_NORMAL; else edit_range.start_type = TimeRange::HTYPE_NORMAL; showTimeSelection(NULL); } else { Evas_Object *table = createPaddingTable(evas, parent, 300, 300); Evas_Object *glist = elm_genlist_add(table); elm_object_style_set(glist, "calaos"); elm_genlist_select_mode_set(glist, ELM_OBJECT_SELECT_MODE_ALWAYS); evas_object_size_hint_fill_set(glist, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_weight_set(glist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_show(glist); string title_label = _("<b>Offset time</b><br><light_blue><small>You can choose to shift the sun time</small></light_blue>"); GenlistItemSimpleHeader *header = new GenlistItemSimpleHeader(evas, glist, title_label, "navigation_back"); header->Append(glist); header->setButtonLabel("button.back", "Début"); header->button_click.connect(sigc::mem_fun(*this, &ActivityScheduleScenarioView::buttonHeaderBackClick)); GenlistItemSimple *item = NULL; for (int i = 0;i < 3;i++) { switch (i) { case 0: item = new GenlistItemSimple(evas, glist, _("Use the exact sun time"), true, false, new int(i)); break; case 1: item = new GenlistItemSimple(evas, glist, _("Add time"), true, false, new int(i)); break; case 2: item = new GenlistItemSimple(evas, glist, _("Substract time"), true, false, new int(i)); break; default: break; } item->Append(glist, header); item->setAutoDeleteUserData(new DeletorT<int *>); item->item_selected.connect(sigc::mem_fun(*this, &ActivityScheduleScenarioView::showTimeSelection)); } elm_table_pack(table, glist, 1, 1, 1, 1); elm_naviframe_item_push(pager_popup, NULL, NULL, NULL, table, "calaos"); } }
static void _init_recipient_page(struct MessageNewViewData *view) { Evas_Object *win, *btn; win = ui_utils_view_window_get(VIEW_PTR(*view)); view->layout_recipients = elm_layout_add(view->pager); elm_win_resize_object_add(win, view->layout_recipients); elm_layout_file_set(view->layout_recipients, phoneui_theme, "phoneui/messages/new/recipients"); evas_object_show(view->layout_recipients); edje_object_part_text_set(elm_layout_edje_get(view->layout_recipients), "recipients_title", D_("Define Recipients")); view->list_recipients = elm_genlist_add(win); elm_genlist_mode_set(view->list_recipients, ELM_LIST_LIMIT); evas_object_size_hint_align_set(view->list_recipients, 0.0, 0.0); evas_object_size_hint_weight_set(view->list_recipients, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_object_scale_set(view->list_recipients, 1.0); elm_object_part_content_set(view->layout_recipients, "recipients_list", view->list_recipients); itc.item_style = "contact"; itc.func.text_get = gl_text_get; itc.func.content_get = gl_content_get; itc.func.state_get = NULL; itc.func.del = gl_del; evas_object_show(view->list_recipients); g_ptr_array_foreach(view->recipients, _process_recipient, view); btn = elm_button_add(win); elm_object_text_set(btn, D_("Back")); evas_object_smart_callback_add(btn, "clicked", _recipients_button_back_clicked, view); elm_object_part_content_set(view->layout_recipients, "recipients_button_back", btn); evas_object_show(btn); btn = elm_button_add(win); elm_object_text_set(btn, D_("Contact")); evas_object_smart_callback_add(btn, "clicked", _recipients_button_add_contact_clicked, view); elm_object_part_content_set(view->layout_recipients, "recipients_button_add_contact", btn); evas_object_show(btn); btn = elm_button_add(win); elm_object_text_set(btn, D_("Number")); evas_object_smart_callback_add(btn, "clicked", _recipients_button_add_number_clicked, view); elm_object_part_content_set(view->layout_recipients, "recipients_button_add_number", btn); evas_object_show(btn); btn = elm_button_add(win); elm_object_text_set(btn, D_("Send")); evas_object_smart_callback_add(btn, "clicked", _recipients_button_send_clicked, view); elm_object_part_content_set(view->layout_recipients, "recipients_button_send", btn); evas_object_show(btn); elm_naviframe_item_simple_push(view->pager, view->layout_recipients); }
void ActivityScheduleScenarioView::showWeekSelection(void *data, Evas_Object *edje_object, string emission, string source) { if (cycle) { if (edit_range.end_type == TimeRange::HTYPE_NORMAL || edit_range.end_offset != 0) { edit_range.ehour = Utils::to_string(elm_spinner_value_get(spin_end_hours)); edit_range.emin = Utils::to_string(elm_spinner_value_get(spin_end_min)); edit_range.esec = Utils::to_string(elm_spinner_value_get(spin_end_sec)); } } else { if (edit_range.start_type == TimeRange::HTYPE_NORMAL || edit_range.start_offset != 0) { edit_range.shour = Utils::to_string(elm_spinner_value_get(spin_start_hours)); edit_range.smin = Utils::to_string(elm_spinner_value_get(spin_start_min)); edit_range.ssec = Utils::to_string(elm_spinner_value_get(spin_start_sec)); } edit_range.end_type = edit_range.start_type; edit_range.end_offset = edit_range.start_offset; edit_range.ehour = edit_range.shour; edit_range.emin = edit_range.smin; edit_range.esec = edit_range.ssec; } Evas_Object *table = createPaddingTable(evas, parent, 300, 300); Evas_Object *glist = elm_genlist_add(table); elm_object_style_set(glist, "calaos"); elm_genlist_select_mode_set(glist, ELM_OBJECT_SELECT_MODE_ALWAYS); evas_object_size_hint_fill_set(glist, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_weight_set(glist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_genlist_multi_select_set(glist, true); evas_object_show(glist); string title_label = _("Days of the week<br><small><light_blue>Days of the week when scenario is executed.</light_blue></small>"); GenlistItemSimpleHeader *header = new GenlistItemSimpleHeader(evas, glist, title_label, "navigation"); header->Append(glist); if (cycle) header->setButtonLabel("button.back", _("End")); else header->setButtonLabel("button.back", _("Beginning")); header->button_click.connect(sigc::mem_fun(*this, &ActivityScheduleScenarioView::headerWeekButtonClick)); week_days.clear(); week_days.reserve(8); GenlistItemSimple *item; for (int i = 0;i < 8;i++) { string label; switch (i) { case 0: label = _("Everyday"); break; case 1: label = _("Monday"); break; case 2: label = _("Tuesday"); break; case 3: label = _("Wednesday"); break; case 4: label = _("Thursday"); break; case 5: label = _("Friday"); break; case 6: label = _("Saturday"); break; case 7: label = _("Sunday"); break; default: label = _("ERROR"); } item = new GenlistItemSimple(evas, glist, label, true, false, NULL, "check"); item->Append(glist, header); week_days.push_back(item); if (i == 0) { item->item_selected.connect(sigc::mem_fun(*this, &ActivityScheduleScenarioView::unselectWeekDays)); item->setSelected(true); } else { item->item_selected.connect(sigc::mem_fun(*this, &ActivityScheduleScenarioView::unselectAllWeekDays)); } } elm_table_pack(table, glist, 1, 1, 1, 1); elm_naviframe_item_push(pager_popup, NULL, NULL, NULL, table, "calaos"); }
/* public functions */ EM_INTERN Eina_Bool em_gui_init(void) { Evas_Object *o, *oo; /* allocate our object */ gui = EM_OBJECT_ALLOC(Em_Gui, EM_GUI_TYPE, _em_gui_cb_free); if (!gui) return EINA_FALSE; /* create window */ gui->w_win = elm_win_add(NULL, "emote", ELM_WIN_BASIC); elm_win_title_set(gui->w_win, "Emote"); elm_win_keyboard_mode_set(gui->w_win, ELM_WIN_KEYBOARD_ALPHA); evas_object_smart_callback_add(gui->w_win, "delete,request", _em_gui_cb_win_del, NULL); /* create background */ o = elm_bg_add(gui->w_win); evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_win_resize_object_add(gui->w_win, o); evas_object_show(o); o = elm_box_add(gui->w_win); elm_box_homogeneous_set(o, EINA_FALSE); elm_win_resize_object_add(gui->w_win, o); evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_box_align_set(o, 0.5, 0.5); evas_object_show(o); /* create main toolbar */ gui->w_tb = elm_toolbar_add(gui->w_win); elm_toolbar_icon_size_set(gui->w_tb, (8 * elm_config_scale_get())); elm_toolbar_align_set(gui->w_tb, 1.0); elm_toolbar_shrink_mode_set(gui->w_tb, ELM_TOOLBAR_SHRINK_SCROLL); elm_toolbar_item_append(gui->w_tb, "preferences-system", _("Settings"), _em_gui_cb_settings, NULL); elm_toolbar_item_append(gui->w_tb, "application-exit", _("Quit"), _em_gui_cb_quit, NULL); evas_object_size_hint_weight_set(gui->w_tb, EVAS_HINT_EXPAND, 0.0); evas_object_size_hint_align_set(gui->w_tb, EVAS_HINT_FILL, 0.0); evas_object_show(gui->w_tb); elm_box_pack_start(o, gui->w_tb); /* create packing box */ gui->w_box = elm_panes_add(gui->w_win); elm_panes_fixed_set(gui->w_box, EINA_FALSE); elm_panes_horizontal_set(gui->w_box, EINA_FALSE); elm_panes_content_left_size_set(gui->w_box, 0.20); evas_object_size_hint_weight_set(gui->w_box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(gui->w_box, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_box_pack_end(o, gui->w_box); evas_object_show(gui->w_box); gui->w_chansel_itc = elm_genlist_item_class_new(); gui->w_chansel_itc->item_style = "default"; gui->w_chansel_itc->func.text_get = _em_gui_chansel_cb_label_get; gui->w_chansel_itc->func.content_get = NULL; gui->w_chansel_itc->func.state_get = NULL; gui->w_chansel_itc->func.del = NULL; /* create channel selector w/ frame */ gui->w_chansel = elm_genlist_add(gui->w_win); elm_genlist_mode_set(gui->w_chansel, ELM_LIST_SCROLL); evas_object_size_hint_min_set(gui->w_chansel, 200, MIN_WIN_HEIGHT); evas_object_size_hint_weight_set(gui->w_chansel, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_show(gui->w_chansel); o = elm_frame_add(gui->w_win); elm_object_part_text_set(o, "default", "Channels"); oo = elm_frame_add(gui->w_win); elm_object_style_set(oo, "pad_small"); elm_object_part_content_set(o, "default", oo); elm_object_part_content_set(oo, "default", gui->w_chansel); elm_object_part_content_set(gui->w_box, "left", o); evas_object_show(oo); evas_object_show(o); /* set min size of window and show it */ evas_object_show(gui->w_win); evas_object_resize(gui->w_win, MIN_WIN_WIDTH, MIN_WIN_HEIGHT); gui->servers = eina_hash_string_small_new(_em_gui_server_del); return EINA_TRUE; }
void ActivityScheduleScenarioView::createTimeSelectTypeList(void *data, Evas_Object *edje_object, string emission, string source) { if ((editState == EDIT_START_TIME || editState == EDIT_START_TIME_OFFSET) && cycle) { editStatesHist.push(editState); editState = EDIT_END_TYPE; } if (editState == EDIT_END_TYPE) { if (edit_range.start_type == TimeRange::HTYPE_NORMAL || edit_range.start_offset != 0) { edit_range.shour = Utils::to_string(elm_spinner_value_get(spin_start_hours)); edit_range.smin = Utils::to_string(elm_spinner_value_get(spin_start_min)); edit_range.ssec = Utils::to_string(elm_spinner_value_get(spin_start_sec)); } else { edit_range.shour = "0"; edit_range.smin = "0"; edit_range.ssec = "0"; } } Evas_Object *table = createPaddingTable(evas, parent, 320, 300); Evas_Object *glist = elm_genlist_add(table); elm_object_style_set(glist, "calaos"); elm_genlist_select_mode_set(glist, ELM_OBJECT_SELECT_MODE_ALWAYS); evas_object_size_hint_fill_set(glist, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_weight_set(glist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_show(glist); string title_label; GenlistItemSimpleHeader *header = NULL; if (editState == EDIT_START_TYPE) { title_label = _("Start of schedulling<br><small><light_blue>Start time of the scenario</light_blue></small>"); header = new GenlistItemSimpleHeader(evas, glist, title_label); header->Append(glist); } else { title_label = _("End of schedulling<br><small><light_blue>End time of the scenario</light_blue></small>"); header = new GenlistItemSimpleHeader(evas, glist, title_label, "navigation_back"); header->Append(glist); header->setButtonLabel("button.back", _("Start")); header->button_click.connect(sigc::mem_fun(*this, &ActivityScheduleScenarioView::buttonHeaderBackClick)); } GenlistItemSimple *item = nullptr; for (int i = 0;i < 4;i++) { switch (i) { case 0: item = new GenlistItemSimple(evas, glist, _("Use a fixed time"), true, false, new int(TimeRange::HTYPE_NORMAL)); break; case 1: item = new GenlistItemSimple(evas, glist, _("Use the sunrise"), true, false, new int(TimeRange::HTYPE_SUNRISE)); break; case 2: item = new GenlistItemSimple(evas, glist, _("Use the sunset"), true, false, new int(TimeRange::HTYPE_SUNSET)); break; case 3: item = new GenlistItemSimple(evas, glist, _("Use the midday sun"), true, false, new int(TimeRange::HTYPE_NOON)); break; default: break; } item->Append(glist, header); item->setAutoDeleteUserData(new DeletorT<int *>); item->item_selected.connect(sigc::mem_fun(*this, &ActivityScheduleScenarioView::selectTimeType)); } elm_table_pack(table, glist, 1, 1, 1, 1); elm_naviframe_item_push(pager_popup, NULL, NULL, NULL, table, "calaos"); }
void ActivityScheduleScenarioView::reloadTimeRanges() { elm_genlist_clear(schedule_list); vector<TimeRange> trange_sorted; auto sortTimeRange = [&trange_sorted](vector<TimeRange> &range, int day) { for (TimeRange &t: range) { auto it = std::find(trange_sorted.begin(), trange_sorted.end(), t); if (it != trange_sorted.end()) { //timerange already in trange_sorted, add the day of week flag it->dayOfWeek.set(day); } else { TimeRange newtr = t; newtr.dayOfWeek.reset(); newtr.dayOfWeek.set(day); trange_sorted.push_back(newtr); } } }; sortTimeRange(range_infos.range_monday, 0); sortTimeRange(range_infos.range_tuesday, 1); sortTimeRange(range_infos.range_wednesday, 2); sortTimeRange(range_infos.range_thursday, 3); sortTimeRange(range_infos.range_friday, 4); sortTimeRange(range_infos.range_saturday, 5); sortTimeRange(range_infos.range_sunday, 6); for (TimeRange &t: trange_sorted) { GenlistItemScenarioScheduleTime *item = new GenlistItemScenarioScheduleTime(evas, parent, t); item->Append(schedule_list); item->edit_click.connect([=]() { is_edit = true; old_range = t; edit_range = t; editState = EDIT_START_TYPE; showTimeRangePopup(); }); item->del_click.connect([=]() { Evas_Object *table = createPaddingTable(evas, parent, 280, 260); Evas_Object *glist = elm_genlist_add(table); elm_object_style_set(glist, "calaos"); elm_genlist_select_mode_set(glist, ELM_OBJECT_SELECT_MODE_ALWAYS); evas_object_size_hint_fill_set(glist, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_weight_set(glist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_show(glist); string title_label = _("Confirmation"); title_label += "<br><small><light_blue>"; title_label += _("Are you sure to delete this schedule?"); title_label += "</light_blue></small>"; GenlistItemBase *header = new GenlistItemSimpleHeader(evas, glist, title_label); header->Append(glist); Evas_Object *popup_del = elm_ctxpopup_add(parent); GenlistItemSimple *_item = new GenlistItemSimple(evas, parent, _("Yes, delete this schedule"), true); _item->Append(glist, header); _item->item_selected.connect([=](void *) { deleteTimeRange(t); elm_ctxpopup_dismiss(popup_del); reloadTimeRanges(); }); _item = new GenlistItemSimple(evas, parent, "Non", true); _item->Append(glist, header); _item->item_selected.connect([=](void *) { elm_ctxpopup_dismiss(popup_del); }); elm_table_pack(table, glist, 1, 1, 1, 1); elm_object_content_set(popup_del, table); elm_object_style_set(popup_del, "calaos"); elm_ctxpopup_direction_priority_set(popup_del, ELM_CTXPOPUP_DIRECTION_DOWN, ELM_CTXPOPUP_DIRECTION_UP, ELM_CTXPOPUP_DIRECTION_LEFT, ELM_CTXPOPUP_DIRECTION_RIGHT); Evas_Coord x,y; evas_pointer_canvas_xy_get(evas, &x, &y); evas_object_move(popup_del, x, y); evas_object_show(popup_del); }); } //reload months if (range_infos.range_months.all()) { //all months are selected item_all->setSelected(true); for (uint i = 0;i < items_months.size();i++) items_months[i]->setSelected(false); } else { item_all->setSelected(false); for (uint i = 0;i < items_months.size();i++) items_months[i]->setSelected(range_infos.range_months.test(i)); } }
void Browser_Settings_Website_Setting::_show_details_list(website_setting_item *item_info) { BROWSER_LOGD("[%s]", __func__); if(!item_info) return; m_details_genlist = elm_genlist_add(m_navi_bar); if (!m_details_genlist) { BROWSER_LOGE("elm_genlist_add failed"); return; } evas_object_show(m_details_genlist); m_1_text_1_icon_item_class.item_style = "1text.1icon"; m_1_text_1_icon_item_class.func.text_get = __details_genlist_label_get; m_1_text_1_icon_item_class.func.content_get = __details_genlist_icon_get; m_1_text_1_icon_item_class.func.state_get = NULL; m_1_text_1_icon_item_class.func.del = NULL; if (item_info->geolocation) { m_location_item_callback_data.type = BR_MENU_LOCATION; m_location_item_callback_data.cp = this; m_location_item_callback_data.user_data = item_info; m_location_item_callback_data.it = elm_genlist_item_append(m_details_genlist, &m_1_text_1_icon_item_class, &m_location_item_callback_data, NULL, ELM_GENLIST_ITEM_NONE, __details_item_selected_cb, &m_location_item_callback_data); } if (item_info->storage) { m_web_storage_item_callback_data.type = BR_MENU_WEB_STORAGE; m_web_storage_item_callback_data.cp = this; m_web_storage_item_callback_data.user_data = item_info; m_web_storage_item_callback_data.it = elm_genlist_item_append(m_details_genlist, &m_1_text_1_icon_item_class, &m_web_storage_item_callback_data, NULL, ELM_GENLIST_ITEM_NONE, __details_item_selected_cb, &m_web_storage_item_callback_data); } m_back_button_details = elm_button_add(m_details_genlist); if (!m_back_button_details) { BROWSER_LOGE("elm_button_add failed"); return; } elm_object_style_set(m_back_button_details, "browser/bookmark_controlbar_back"); evas_object_show(m_back_button_details); evas_object_smart_callback_add(m_back_button_details, "clicked", __back_button_clicked_cb, this); Elm_Object_Item *navi_it = elm_naviframe_item_push(m_navi_bar, item_info->url.c_str(), m_back_button_details, NULL, m_details_genlist, "browser_titlebar"); m_details_bottom_control_bar = elm_toolbar_add(m_navi_bar); if (!m_details_bottom_control_bar) { BROWSER_LOGE("elm_toolbar_add failed"); return; } elm_object_style_set(m_details_bottom_control_bar, "browser/default"); elm_toolbar_shrink_mode_set(m_details_bottom_control_bar, ELM_TOOLBAR_SHRINK_EXPAND); m_delete_all_details_conbar_item = elm_toolbar_item_append(m_details_bottom_control_bar, NULL, BR_STRING_DELETE_ALL, __delete_all_details_list_conbar_item_clicked_cb, this); if (elm_genlist_items_count(m_details_genlist) == 0) { elm_object_item_disabled_set(m_delete_all_details_conbar_item, EINA_TRUE); } Elm_Object_Item *empty_item = elm_toolbar_item_append(m_details_bottom_control_bar, NULL, NULL, NULL, NULL); elm_object_item_disabled_set(empty_item, EINA_TRUE); empty_item = elm_toolbar_item_append(m_details_bottom_control_bar, NULL, NULL, NULL, NULL); elm_object_item_disabled_set(empty_item, EINA_TRUE); evas_object_show(m_details_bottom_control_bar); elm_object_item_part_content_set(navi_it, ELM_NAVIFRAME_ITEM_CONTROLBAR, m_details_bottom_control_bar); }
void _init_genlist(Evas_Object *win) { Evas_Object *box, *entry; static Elm_Genlist_Item_Class *_itc = NULL; int i = 0; if (!_itc) { _itc = elm_genlist_item_class_new(); _itc->item_style = "default"; _itc->func.text_get = _item_label_get; _itc->func.content_get = _item_content_get; _itc->func.state_get = NULL; _itc->func.del = NULL; } if (!_itc_group) { _itc_group = elm_genlist_item_class_new(); _itc_group->item_style = "group_index"; _itc_group->func.text_get = _group_label_get; _itc_group->func.content_get = _group_content_get; _itc_group->func.state_get = NULL; _itc_group->func.del = NULL; } box = elm_box_add(win); evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_win_resize_object_add(win, box); evas_object_show(box); glob_genlist = elm_genlist_add(win); evas_object_size_hint_weight_set (glob_genlist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set (glob_genlist, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_box_pack_end(box, glob_genlist); evas_object_show(glob_genlist); entry = elm_entry_add(win); elm_entry_single_line_set(entry, EINA_TRUE); evas_object_size_hint_weight_set(entry, EVAS_HINT_EXPAND, 0.0); evas_object_size_hint_align_set(entry, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_show(entry); /* filling genlist */ for (i = 0; i < N_ITEMS; i++) { Elm_Object_Item *gli = NULL, *glg = NULL; if (i % 7 == 0) { glg = gli = elm_genlist_item_append(glob_genlist, _itc_group, (void *) (long) nitems++, NULL, ELM_GENLIST_ITEM_GROUP, _item_sel_cb, NULL ); elm_genlist_item_select_mode_set( gli, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY); } else { gli = elm_genlist_item_append(glob_genlist, _itc, (void *) (long) nitems++, glg, ELM_GENLIST_ITEM_NONE, _item_sel_cb, NULL ); } if (i == 1) glob_test_item = gli; } }