void GenlistItemScenarioSchedule::scenarioPlay(void *data) { if (!scenario) return; scenario->ioScenario->sendAction("true"); elm_ctxpopup_dismiss(popup); }
void GenlistItemScenarioSchedule::deleteScenarioValid(void *data) { if (!scenario) return; CalaosModel::Instance().getScenario()->deleteScenario(scenario); elm_ctxpopup_dismiss(popup); }
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); }
void GenlistItemScenarioSchedule::scenarioModify(void *data) { if (!scenario) return; ApplicationMain::Instance().ShowScenarioEditor(scenario); elm_ctxpopup_dismiss(popup); }
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); }
/** * @brief Performs the specified action on the object * * Implementation of do_action from AtkAction interface. * * @param action AtkAction instance * @param i action index * * @return TRUE on success, FALSE otherwise */ static gboolean eail_ctxpopup_do_action(AtkAction *action, int i) { Evas_Object *widget; widget = eail_widget_get_widget(EAIL_WIDGET(action)); if (!widget) return FALSE; if ((elm_object_disabled_get(widget)) || (!evas_object_visible_get(widget))) return FALSE; const char *action_name = atk_action_get_name(action, i); if (!action_name) return FALSE; if (!g_strcmp0(action_name, "dismiss")) elm_ctxpopup_dismiss(widget); else return FALSE; return TRUE; }
void ActivityScheduleScenarioView::headerWeekButtonClick(string bt) { if (bt == "button.back") { editState = editStatesHist.top(); editStatesHist.pop(); elm_naviframe_item_pop(pager_popup); } else if (bt == "button.valid") { if (is_edit) { deleteTimeRange(old_range); } if (week_days[0]->isSelected() || week_days[1]->isSelected()) range_infos.range_monday.push_back(edit_range); if (week_days[0]->isSelected() || week_days[2]->isSelected()) range_infos.range_tuesday.push_back(edit_range); if (week_days[0]->isSelected() || week_days[3]->isSelected()) range_infos.range_wednesday.push_back(edit_range); if (week_days[0]->isSelected() || week_days[4]->isSelected()) range_infos.range_thursday.push_back(edit_range); if (week_days[0]->isSelected() || week_days[5]->isSelected()) range_infos.range_friday.push_back(edit_range); if (week_days[0]->isSelected() || week_days[6]->isSelected()) range_infos.range_saturday.push_back(edit_range); if (week_days[0]->isSelected() || week_days[7]->isSelected()) range_infos.range_sunday.push_back(edit_range); cDebugDom("auto_scenario") << "New TimeRange: " << edit_range.toString(); elm_ctxpopup_dismiss(popup); reloadTimeRanges(); } }
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 GenlistItemScenarioSchedule::scheduleDelete(void *data) { schedule_del_click.emit(scenario); elm_ctxpopup_dismiss(popup); }
void GenlistItemScenarioSchedule::scheduleModify(void *data) { schedule_modify_click.emit(scenario); elm_ctxpopup_dismiss(popup); }
void GenlistItemScenarioSchedule::scheduleAdd(void *data) { schedule_add_click.emit(scenario); elm_ctxpopup_dismiss(popup); }