void on_number_button_enter(void *data, Evas_Object *obj, const char *emission, const char *source) { Measurements_Lists *ml = data; ml = data; float n_in, n_out; int m_in, m_out; char label_in[128], label_out[128]; char result[64]; Elm_Object_Item *list_it_in, *list_it_out; list_it_in = elm_list_selected_item_get(ml->list_in); list_it_out = elm_list_selected_item_get(ml->list_out); if (!list_it_in || !list_it_out || !strcmp((edje_object_part_text_get(obj, "input")), "")) { edje_object_part_text_set(obj, "input", ""); edje_object_part_text_set(obj, "output", ""); return; } edje_object_part_text_set(obj, "equal", "="); snprintf(label_in, sizeof(label_in), "%s", elm_list_item_label_get(list_it_in)); snprintf(label_out, sizeof(label_out), "%s", elm_list_item_label_get(list_it_out)); if (!strcmp(label_in, KM_LABEL)) { m_in = KILOMETER; } else if(!strcmp(label_in, M_LABEL)) { m_in = METER; } else if(!strcmp(label_in, CM_LABEL)) { m_in = CENTIMETER; } if (!strcmp(label_out, KM_LABEL)) m_out = KILOMETER; else if(!strcmp(label_out, M_LABEL)) m_out = METER; else if(!strcmp(label_out, CM_LABEL)) m_out = CENTIMETER; n_in = atof(edje_object_part_text_get(obj, "input")); n_out = converter(n_in, m_in, m_out); snprintf(result, sizeof(result), "%f", n_out); edje_object_part_text_set(obj, "output", result); }
void list_selected_set(Evas_Object *obj, const char *value) { Elm_Object_Item *list_it; const Eina_List *iter; EINA_LIST_FOREACH(elm_list_items_get(obj), iter, list_it) { if (strstr(elm_list_item_label_get(list_it), value)) { elm_list_item_selected_set(list_it, EINA_TRUE); return; } } }
void playlist_list_click_cb(void *data, Evas_Object *obj, void *event_info) { Elm_List_Item *it = elm_list_selected_item_get(obj); cmd_playlist_load((rockon_data*)data, elm_list_item_label_get(it)); }