static Evas_Object *_gl_bottom_content_get(void *data, Evas_Object *obj, const char *part) { __COMMON_FUNC_ENTER__; if (manager_object == NULL || obj == NULL) return NULL; int ret = -1; Evas_Object *toggle_btn = elm_check_add(obj); assertm_if(NULL == toggle_btn, "NULL!!"); elm_object_style_set(toggle_btn, "on&off"); evas_object_propagate_events_set(toggle_btn, EINA_TRUE); ret = wifi_setting_value_get(VCONFKEY_WIFI_ENABLE_QS); switch (ret) { case 1: elm_check_state_set(toggle_btn, EINA_TRUE); break; case 0: elm_check_state_set(toggle_btn, EINA_FALSE); break; default: assertm_if(TRUE, "Setting fail!!"); break; } __COMMON_FUNC_EXIT__; return toggle_btn; }
static void _init_check(Evas_Object *win) { Evas_Object *bg, *cb1, *cb2, *icon; Eina_Bool value1, value2; bg = elm_bg_add(win); evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_win_resize_object_add(win, bg); evas_object_show(bg); cb1 = elm_check_add(win); elm_object_text_set(cb1, CHECK_TEXT1); elm_check_state_pointer_set(cb1, &value1); elm_check_state_set(cb1, EINA_TRUE); evas_object_smart_callback_add(cb1, "changed", _print, &value1); evas_object_move(cb1, 10, 10); evas_object_resize(cb1, 200, 30); evas_object_show(cb1); icon = elm_icon_add(win); elm_icon_order_lookup_set(icon, ELM_ICON_LOOKUP_THEME_FDO); elm_icon_standard_set(icon, "home"); evas_object_show(icon); cb2 = elm_check_add(win); elm_object_text_set(cb2, CHECK_TEXT2); elm_check_state_pointer_set(cb2, &value2); elm_check_state_set(cb2, EINA_FALSE); elm_object_part_content_set(cb2, "icon", icon); evas_object_smart_callback_add(cb2, "changed", _print, &value2); evas_object_move(cb2, 10, 50); evas_object_resize(cb2, 200, 30); evas_object_show(cb2); }
void screen_reader_cb(void *data, Evas_Object *obj, void *event_info) { Evas_Object *nf = data; Evas_Object *list; Evas_Object *screen_reader_onoff_check; list = elm_list_add(nf); elm_list_mode_set(list, ELM_LIST_COMPRESS); evas_object_smart_callback_add(list, "selected", list_selected_cb, NULL); screen_reader_on = is_screen_reader_running(); screen_reader_onoff_check = elm_check_add(list); elm_object_style_set(screen_reader_onoff_check, "on&off"); elm_check_state_set(screen_reader_onoff_check, screen_reader_on); evas_object_smart_callback_add(screen_reader_onoff_check, "changed", check_changed_cb, NULL); evas_object_propagate_events_set(screen_reader_onoff_check, EINA_FALSE); elm_list_item_append(list, "UI Descriptions", NULL, NULL, description_cb, nf); elm_list_item_append(list, "UI Reading order", NULL, NULL, reading_order_cb, nf); elm_list_item_append(list, "Custom Frame", NULL, NULL, custom_frame_cb, nf); elm_list_item_prepend(list, "Screen Reader (TTS)", NULL, screen_reader_onoff_check, screen_reader_item_cb, screen_reader_onoff_check); elm_list_go(list); elm_naviframe_item_push(nf, "Screen Reader", NULL, NULL, list, NULL); }
static int viewer_manager_header_create(Evas_Object* genlist) { __COMMON_FUNC_ENTER__; Evas_Object *toggle_btn = NULL; manager_object->header_text = g_strdup(sc(PACKAGE, I18N_TYPE_Wi_Fi)); header_itc_text.item_style = "dialogue/1text.1icon"; header_itc_text.func.text_get = _gl_header_text_get; header_itc_text.func.content_get = _gl_header_content_get; header_itc_text.func.state_get = NULL; header_itc_text.func.del = _gl_header_del; common_utils_add_dialogue_separator(genlist, "dialogue/separator"); toggle_btn = elm_check_add(genlist); elm_object_style_set(toggle_btn, "on&off"); evas_object_propagate_events_set(toggle_btn, EINA_TRUE); elm_check_state_set(toggle_btn, EINA_FALSE); evas_object_show(toggle_btn); evas_object_ref(toggle_btn); assertm_if(NULL != manager_object->item_header, "ERROR!!"); manager_object->item_header = elm_genlist_item_append(genlist, &header_itc_text, toggle_btn, NULL, ELM_GENLIST_ITEM_NONE, _gl_header_sel_cb, NULL); assertm_if(NULL == manager_object->item_header, "NULL!!"); __COMMON_FUNC_EXIT__; return TRUE; }
static void _resource_changed_signal_cb(void *userdata, const char *resource, gboolean state, GHashTable *attributes) { GVariant *tmp; FreeSmartphoneUsageResourcePolicy policy; Evas_Object *toggle = NULL; (void) userdata; (void) state; if (!strcmp(resource, "Display")) { toggle = view.dimming_slide; } else if (!strcmp(resource, "CPU")) { toggle = view.suspend_slide; } else { goto clean; } if (!attributes) goto clean; tmp = g_hash_table_lookup(attributes, "policy"); if (!tmp) { goto clean; } /* FIXME: Should rather honor the error instead of passing NULL */ policy = free_smartphone_usage_resource_policy_from_string (g_variant_get_string(tmp, NULL), NULL); /* policy enabled = 2 auto = 0 */ if (policy == FREE_SMARTPHONE_USAGE_RESOURCE_POLICY_ENABLED) { elm_check_state_set(toggle, 1); } else if (policy == FREE_SMARTPHONE_USAGE_RESOURCE_POLICY_AUTO) { elm_check_state_set(toggle, 0); } clean: /*FIXME: how should I clean it?! */ return; // g_free(resource); if (attributes) g_hash_table_unref(attributes); }
/** * @brief Negative test case of ug_init elm_check_state_get() */ static void utc_UIFW_elm_check_state_get_func_02(void) { Evas_Object *check = NULL; Eina_Bool state; check = elm_check_add(main_win); elm_check_state_set(check, EINA_TRUE); state = elm_check_state_get(NULL); tet_result(TET_PASS); }
static Evas_Object *_gl_header_content_get(void *data, Evas_Object *obj, const char *part) { if (manager_object == NULL) return NULL; Evas_Object* ret = NULL; Evas_Object *toggle_btn = (Evas_Object *)data; Evas_Object *icon = NULL; __COMMON_FUNC_ENTER__; assertm_if(NULL == toggle_btn, "NULL!!"); if (!strncmp(part, "elm.icon", strlen(part))) { switch (manager_object->header_mode) { case HEADER_MODE_OFF: /* Show WiFi off indication button */ elm_check_state_set(toggle_btn, EINA_FALSE); ret = toggle_btn; break; case HEADER_MODE_ACTIVATING: case HEADER_MODE_DEACTIVATING: /* Dont display the WiFi on/off indication while it is Activating/Deactivating */ icon = elm_progressbar_add(obj); elm_object_style_set(icon, "list_process"); evas_object_size_hint_align_set(icon, EVAS_HINT_FILL, 0.5); evas_object_size_hint_weight_set(icon, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_progressbar_pulse(icon, TRUE); ret = icon; break; default: /* Show WiFi on indication button */ elm_check_state_set(toggle_btn, EINA_TRUE); ret = toggle_btn; break; } } __COMMON_FUNC_EXIT__; return ret; }
static void _pdp_context_status_signal_cb(void* data, FreeSmartphoneGSMContextStatus status, GHashTable* attributes) { (void) data; (void) attributes; switch (status) { case FREE_SMARTPHONE_GSM_CONTEXT_STATUS_ACTIVE: elm_object_disabled_set(view.sharing_slide, EINA_FALSE); case FREE_SMARTPHONE_GSM_CONTEXT_STATUS_OUTGOING: elm_check_state_set(view.gprs_slide, EINA_TRUE); break; default: elm_check_state_set(view.gprs_slide, EINA_FALSE); elm_object_disabled_set(view.sharing_slide, EINA_TRUE); break; } elm_check_state_set(view.sharing_slide, EINA_FALSE); }
static void _pdp_activate_cb(GError *error, gpointer data) { (void) data; elm_object_disabled_set(view.gprs_slide, EINA_FALSE); if (error) { g_warning("Activating PDP failed: (%d) %s", error->code, error->message); ui_utils_error_message_from_gerror_show(VIEW_PTR(view), D_("Activating PDP failed."), error); elm_check_state_set(view.gprs_slide, EINA_FALSE); } }
static void _get_offline_mode_cb(GError *error, gboolean offline, gpointer data) { (void) data; if (error) { g_warning("Failed with GetOfflineMode: (%d) %s", error->code, error->message); g_error_free(error); return; } elm_check_state_set(view.airplane_slide, offline); }
static void screen_reader_item_cb(void *data, Evas_Object *obj, void *event_info) { Evas_Object *screen_reader_onoff_check = data; Eina_Bool check_state = elm_check_state_get(screen_reader_onoff_check); elm_check_state_set(screen_reader_onoff_check, !check_state); screen_reader_on = !check_state; if(screen_reader_on) screen_reader_launch(); else screen_reader_terminate(); }
static void _display_get_policy_cb(GError* error, FreeSmartphoneUsageResourcePolicy policy, gpointer userdata) { /*FIXME: I should probably free this profile, but how?, CHECK DBUS*/ (void) userdata; if (error) { g_warning("Failed to get Display policy"); elm_object_disabled_set(view.dimming_slide, 1); return; } else { elm_object_disabled_set(view.dimming_slide, 0); } if (policy == FREE_SMARTPHONE_USAGE_RESOURCE_POLICY_ENABLED) { elm_check_state_set(view.dimming_slide, 1); } else if (policy == FREE_SMARTPHONE_USAGE_RESOURCE_POLICY_AUTO) { elm_check_state_set(view.dimming_slide, 0); } }
static void _pdp_deactivate_cb(GError *error, gpointer data) { (void) data; elm_object_disabled_set(view.gprs_slide, EINA_FALSE); if (error) { g_warning("De-Activating PDP failed: (%d) %s", error->code, error->message); ui_utils_error_message_from_gerror_show(VIEW_PTR(view), D_("De-Activating PDP failed."), error); /* FIXME: think about if this is right for the deactivate does not work case !!! */ elm_check_state_set(view.gprs_slide, EINA_TRUE); } }
/** * @brief Action handler for 'click' * * @param action an AtkAction object (EailCheck) * @param data additional data (unused here) * * @returns TRUE on success, FALSE otherwise */ static gboolean eail_check_action_click_cb(AtkAction *action, void *data) { Evas_Object *widget; Eina_Bool state; 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; state = elm_check_state_get(widget); elm_check_state_set(widget, !state); evas_object_smart_callback_call(widget, "changed", NULL); eail_check_atk_notify_change(action, widget, NULL); return TRUE; }
static void _init_check(Evas_Object *win) { Evas_Object *bg, *cb1; Eina_Bool value1; bg = elm_bg_add(win); evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_win_resize_object_add(win, bg); evas_object_show(bg); cb1 = elm_check_add(win); elm_object_text_set(cb1, CHECK_TEXT1); elm_check_state_pointer_set(cb1, &value1); elm_check_state_set(cb1, EINA_TRUE); evas_object_smart_callback_add(cb1, "changed", _print, &value1); evas_object_move(cb1, 10, 10); evas_object_resize(cb1, 200, 30); evas_object_show(cb1); }
/** * @brief Positive test case of elm_check_state_get() */ static void utc_UIFW_elm_check_state_get_func_01(void) { Evas_Object *check = NULL; Eina_Bool state; check = elm_check_add(main_win); elm_check_state_set(check, EINA_TRUE); state = elm_check_state_get(check); if(state == EINA_FALSE) { evas_object_del(check); tet_infoline("elm_check_state_get() failed in positive test case"); tet_result(TET_FAIL); return; } evas_object_show(check); evas_object_del(check); check = NULL; tet_result(TET_PASS); }
END_TEST START_TEST (elm_check_state) { Evas_Object *win, *check; Eina_Bool state = EINA_TRUE; elm_init(1, NULL); win = elm_win_add(NULL, "check", ELM_WIN_BASIC); check = elm_check_add(win); elm_check_state_pointer_set(check, &state); ck_assert(elm_check_state_get(check) == EINA_TRUE); ck_assert(state == EINA_TRUE); elm_check_state_set(check, EINA_FALSE); ck_assert(elm_check_state_get(check) == EINA_FALSE); ck_assert(state == EINA_FALSE); elm_shutdown(); }
void ToolbarContentCheck::create( Evas_Object * parent ) { m_Evas = elm_check_add( parent ); evas_object_size_hint_align_set( m_Evas, EVAS_HINT_FILL, EVAS_HINT_FILL ); evas_object_size_hint_weight_set( m_Evas, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND ); string title = ((ToolbarContentCheckParams &)m_Params).getTitle(); bool checked = ((ToolbarContentCheckParams &)m_Params).getChecked(); elm_object_text_set( m_Evas, title.c_str() ); elm_check_state_set( m_Evas, checked ); evas_object_show( m_Evas ); evas_object_smart_callback_add( m_Evas, "changed", on_click, &m_callbackData ); // Elm_Theme * theme = elm_theme_new(); // elm_theme_ref_set( theme, NULL ); // // elm_theme_extension_add( theme, MAIN_EDJ ); // elm_object_theme_set( m_Evas, theme ); // Eina_Bool applied = elm_object_style_set( m_Evas, "button_custom_my" ); m_callbackData.lpThis = this; m_callbackData.userData = ((ToolbarContentCheckParams &)m_Params).getUserData(); }
EAPI_MAIN int elm_main(int argc, char **argv) { Evas_Object *win, *vbox, *hbox, *ic, *ck, *fs_bt, *en, *lb, *sep; elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED); win = elm_win_util_standard_add("fileselector-button", "File Selector Button Example"); elm_win_autodel_set(win, EINA_TRUE); vbox = elm_box_add(win); evas_object_size_hint_weight_set(vbox, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_win_resize_object_add(win, vbox); evas_object_show(vbox); ic = elm_icon_add(win); elm_icon_standard_set(ic, "file"); evas_object_size_hint_aspect_set(ic, EVAS_ASPECT_CONTROL_VERTICAL, 1, 1); /* file selector button */ fs_bt = elm_fileselector_button_add(win); elm_fileselector_button_path_set(fs_bt, "/tmp"); elm_object_text_set(fs_bt, "Select a file"); elm_object_part_content_set(fs_bt, "icon", ic); elm_box_pack_end(vbox, fs_bt); evas_object_show(fs_bt); evas_object_show(ic); /* attribute setting knobs */ sep = elm_separator_add(win); elm_separator_horizontal_set(sep, EINA_TRUE); elm_box_pack_end(vbox, sep); evas_object_show(sep); hbox = elm_box_add(win); elm_box_horizontal_set(hbox, EINA_TRUE); elm_box_pack_end(vbox, hbox); evas_object_show(hbox); ck = elm_check_add(win); elm_object_text_set(ck, "editable selection"); elm_check_state_set(ck, elm_fileselector_button_is_save_get(fs_bt)); evas_object_smart_callback_add(ck, "changed", _current_sel_toggle, fs_bt); elm_box_pack_end(hbox, ck); evas_object_show(ck); ck = elm_check_add(win); elm_object_text_set(ck, "\"inwin\" mode"); elm_check_state_set(ck, elm_fileselector_button_inwin_mode_get(fs_bt)); evas_object_smart_callback_add(ck, "changed", _inwin_mode_toggle, fs_bt); elm_box_pack_end(hbox, ck); evas_object_show(ck); ck = elm_check_add(win); elm_object_text_set(ck, "folders only"); elm_check_state_set(ck, elm_fileselector_button_folder_only_get(fs_bt)); evas_object_smart_callback_add(ck, "changed", _folder_only_toggle, fs_bt); elm_box_pack_end(hbox, ck); evas_object_show(ck); ck = elm_check_add(win); elm_object_text_set(ck, "expandable"); elm_check_state_set(ck, elm_fileselector_button_expandable_get(fs_bt)); evas_object_smart_callback_add(ck, "changed", _expandable_toggle, fs_bt); elm_box_pack_end(hbox, ck); evas_object_show(ck); lb = elm_label_add(win); elm_object_text_set(lb, "Last selection:"); elm_box_pack_end(vbox, lb); evas_object_show(lb); en = elm_entry_add(win); elm_entry_line_wrap_set(en, EINA_FALSE); elm_entry_editable_set(en, EINA_FALSE); evas_object_smart_callback_add(fs_bt, "file,chosen", _file_chosen, en); elm_box_pack_end(vbox, en); evas_object_show(en); evas_object_resize(win, 400, 400); evas_object_show(win); elm_run(); elm_shutdown(); return 0; }
Evas_Object *gl_content_get(void *data, Evas_Object *obj, const char *part) { _Task *tsk = (_Task *)data; if (!strcmp(part, "elm.swallow.icon")) { Evas_Object *ck, *bx, *pr_lb; char txt[5]; //show check box bx = elm_box_add(obj); elm_box_horizontal_set(bx, 1); ck = elm_check_add(obj); elm_box_pack_end(bx, ck); elm_check_state_set(ck, tsk->cb); evas_object_show(ck); evas_object_smart_callback_add(ck, "changed", task_cb_changed, (_Task *)tsk); //add a label for priority sprintf(txt, "%d", tsk->pr); pr_lb = elm_label_add(obj); elm_object_text_set(pr_lb, txt); elm_box_pack_end(bx, pr_lb); evas_object_show(pr_lb); evas_object_show(bx); /*//add an entry for text entry = elm_entry_add(obj); elm_entry_single_line_set(entry, 1); elm_entry_editable_set(entry, 1); elm_entry_entry_set(entry, tsk->text); elm_entry_line_wrap_set(entry, 0); elm_box_pack_end(bx, entry); evas_object_show(entry);*/ return bx; } else if (!strcmp(part, "elm.swallow.end")) { Evas_Object *ic, *bx, *lb_date; char buf[PATH_MAX], _time[20], yr[15]; struct tm *tm, tim; time_t t, cur_t, tmp_t; bx = elm_box_add(obj); elm_box_horizontal_set(bx, 1); if(strcmp(tsk->note, "") !=0) { ic= elm_icon_add(obj); snprintf(buf, sizeof(buf), "/usr/share/e-tasks/note.png"); elm_icon_file_set(ic, buf, NULL); elm_icon_resizable_set(ic, 0, 0); evas_object_show(ic); elm_box_pack_end(bx, ic); } if(strcmp(tsk->date, "No Date")!=0) { cur_t = tmp_t = time(NULL); tm = localtime(&tmp_t); //get current year and time strftime(yr, 15, "%Y %H:%M:%S", tm); //convert date into time sprintf(_time, "%s-%s", tsk->date, yr); strptime(_time, "%d-%m-%Y %H:%M:%S", &tim); t = mktime(&tim); if (t < cur_t) { ic= elm_icon_add(obj); snprintf(buf, sizeof(buf), "/usr/share/e-tasks/exclaim.png"); elm_icon_file_set(ic, buf, NULL); elm_icon_resizable_set(ic, 0, 0); evas_object_show(ic); elm_box_pack_end(bx, ic); } } lb_date = elm_label_add(obj); elm_object_text_set(lb_date, tsk->date); elm_box_pack_end(bx, lb_date); evas_object_size_hint_weight_set(lb_date, 0.0, 0.0); evas_object_size_hint_align_set(lb_date, 1.0, 0.5); evas_object_show(lb_date); evas_object_show(bx); return bx; } return NULL; }
EAPI_MAIN int elm_main(int argc, char **argv) { Evas_Object *win, *bg, *bx, *hbx, *tg, *ck, *mb, *tb, *ic; unsigned int i, j; win = elm_win_add(NULL, "mapbuf", ELM_WIN_BASIC); elm_win_title_set(win, "Mapbuf Example"); evas_object_smart_callback_add(win, "delete,request", _on_done, NULL); bg = elm_bg_add(win); elm_win_resize_object_add(win, bg); evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_show(bg); bx = elm_box_add(win); evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_win_resize_object_add(win, bx); evas_object_show(bx); mb = elm_mapbuf_add(win); evas_object_size_hint_weight_set(mb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(mb, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_box_pack_end(bx, mb); tb = elm_table_add(win); evas_object_size_hint_weight_set(tb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(tb, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_show(tb); for (i = 0; i < 8; i++) { for (j = 0; j < 8; j++) { ic = elm_icon_add(win); elm_icon_standard_set(ic, "home"); elm_image_resizable_set(ic, EINA_FALSE, EINA_FALSE); evas_object_show(ic); elm_table_pack(tb, ic, i, j, 1, 1); } } elm_object_content_set(mb, tb); evas_object_show(mb); hbx = elm_box_add(win); elm_box_horizontal_set(hbx, EINA_TRUE); evas_object_size_hint_weight_set(hbx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(hbx, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_box_pack_end(bx, hbx); evas_object_show(hbx); tg = elm_check_add(win); elm_object_style_set(tg, "toggle"); elm_object_part_text_set(tg, "on", "Enabled"); elm_object_part_text_set(tg, "off", "Disabled"); elm_object_text_set(tg, "Map"); evas_object_smart_callback_add(tg, "changed", _enabled_cb, mb); elm_box_pack_end(hbx, tg); evas_object_show(tg); ck = elm_check_add(win); elm_object_text_set(ck, "Alpha"); elm_check_state_set(ck, EINA_TRUE); evas_object_smart_callback_add(ck, "changed", _alpha_cb, mb); elm_box_pack_end(hbx, ck); evas_object_show(ck); ck = elm_check_add(win); elm_object_text_set(ck, "Smooth"); elm_check_state_set(ck, EINA_TRUE); evas_object_smart_callback_add(ck, "changed", _smooth_cb, mb); elm_box_pack_end(hbx, ck); evas_object_show(ck); evas_object_resize(win, 240, 320); evas_object_show(win); elm_run(); elm_shutdown(); return 0; }
EAPI_MAIN int elm_main(int argc, char **argv) { Evas_Object *win, *grid, *bx, *hbx_1, *hbx_2, *hbx_3, *bt, *ck, *sl, *sp; Eina_Bool bounce; double h, v; srand(time(NULL)); elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED); elm_app_info_set(elm_main, "elementary", "images"); win = elm_win_util_standard_add("gengrid", "Generic Grid Example"); elm_win_autodel_set(win, EINA_TRUE); bx = elm_box_add(win); evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_win_resize_object_add(win, bx); evas_object_show(bx); grid = elm_gengrid_add(win); elm_gengrid_item_size_set(grid, 150, 150); evas_object_size_hint_weight_set(grid, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(grid, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_box_pack_end(bx, grid); evas_object_smart_callback_add(grid, "clicked,double", _double_click, NULL); evas_object_smart_callback_add(grid, "longpressed", _long_pressed, NULL); evas_object_show(grid); hbx_1 = elm_box_add(win); evas_object_size_hint_weight_set(hbx_1, EVAS_HINT_EXPAND, 0.0); elm_box_horizontal_set(hbx_1, EINA_TRUE); elm_box_pack_end(bx, hbx_1); evas_object_show(hbx_1); bt = elm_button_add(win); elm_object_text_set(bt, "Append"); evas_object_smart_callback_add(bt, "clicked", _append_bt_clicked, grid); elm_box_pack_end(hbx_1, bt); evas_object_show(bt); bt = elm_button_add(win); elm_object_text_set(bt, "Prepend"); evas_object_smart_callback_add(bt, "clicked", _prepend_bt_clicked, grid); elm_box_pack_end(hbx_1, bt); evas_object_show(bt); before_bt = elm_button_add(win); elm_object_text_set(before_bt, "Insert before"); evas_object_smart_callback_add(before_bt, "clicked", _before_bt_clicked, grid); elm_box_pack_end(hbx_1, before_bt); evas_object_show(before_bt); after_bt = elm_button_add(win); elm_object_text_set(after_bt, "Insert after"); evas_object_smart_callback_add(after_bt, "clicked", _after_bt_clicked, grid); elm_box_pack_end(hbx_1, after_bt); evas_object_show(after_bt); bt = elm_button_add(win); elm_object_text_set(bt, "Clear"); evas_object_smart_callback_add(bt, "clicked", _clear_cb, grid); elm_box_pack_end(hbx_1, bt); evas_object_show(bt); bt = elm_button_add(win); elm_object_text_set(bt, "Bring in 1st"); evas_object_smart_callback_add(bt, "clicked", _bring_1st_clicked, grid); elm_box_pack_end(hbx_1, bt); evas_object_show(bt); bt = elm_button_add(win); elm_object_text_set(bt, "Show last"); evas_object_smart_callback_add(bt, "clicked", _show_last_clicked, grid); elm_box_pack_end(hbx_1, bt); evas_object_show(bt); sp = elm_spinner_add(win); elm_spinner_min_max_set(sp, 10, 1024); elm_spinner_value_set(sp, 150); elm_spinner_label_format_set(sp, "Item size: %.0f"); evas_object_smart_callback_add(sp, "changed", _size_changed, grid); evas_object_size_hint_weight_set(sp, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_box_pack_end(hbx_1, sp); evas_object_show(sp); hbx_2 = elm_box_add(win); evas_object_size_hint_weight_set(hbx_2, EVAS_HINT_EXPAND, 0.0); elm_box_horizontal_set(hbx_2, EINA_TRUE); elm_box_pack_end(bx, hbx_2); evas_object_show(hbx_2); bt = elm_button_add(win); elm_object_text_set(bt, "Disable item"); evas_object_smart_callback_add(bt, "clicked", _toggle_disabled_cb, grid); elm_box_pack_end(hbx_2, bt); evas_object_show(bt); ck = elm_check_add(win); elm_object_text_set(ck, "Horizontal mode"); evas_object_smart_callback_add(ck, "changed", _horizontal_grid, grid); elm_box_pack_end(hbx_2, ck); evas_object_show(ck); ck = elm_check_add(win); elm_object_text_set(ck, "Always select"); evas_object_smart_callback_add(ck, "changed", _always_select_change, grid); elm_box_pack_end(hbx_2, ck); evas_object_show(ck); ck = elm_check_add(win); elm_scroller_bounce_get(grid, &bounce, NULL); elm_object_text_set(ck, "Bouncing"); elm_check_state_set(ck, bounce); evas_object_smart_callback_add(ck, "changed", _bouncing_change, grid); elm_box_pack_end(hbx_2, ck); evas_object_show(ck); ck = elm_check_add(win); elm_object_text_set(ck, "Multi-selection"); elm_check_state_set(ck, elm_gengrid_multi_select_get(grid)); evas_object_smart_callback_add(ck, "changed", _multi_change, grid); elm_box_pack_end(hbx_2, ck); evas_object_show(ck); ck = elm_check_add(win); elm_object_text_set(ck, "No selection"); evas_object_smart_callback_add(ck, "changed", _no_sel_change, grid); elm_box_pack_end(hbx_2, ck); evas_object_show(ck); hbx_3 = elm_box_add(win); evas_object_size_hint_weight_set(hbx_3, EVAS_HINT_EXPAND, 0.0); elm_box_horizontal_set(hbx_3, EINA_TRUE); elm_box_pack_end(bx, hbx_3); evas_object_show(hbx_3); elm_gengrid_align_get(grid, &h, &v); evas_object_smart_callback_add(grid, "scroll,anim,stop", _grid_scroll_stopped_cb, NULL); sl = elm_slider_add(win); elm_object_text_set(sl, "Horiz. alignment"); elm_slider_span_size_set(sl, 100); evas_object_size_hint_align_set(sl, 0.5, EVAS_HINT_FILL); evas_object_size_hint_weight_set(sl, 0.0, EVAS_HINT_EXPAND); elm_slider_indicator_format_set(sl, "%1.1f"); elm_slider_value_set(sl, h); elm_box_pack_end(hbx_3, sl); evas_object_show(sl); evas_object_smart_callback_add(sl, "changed", _h_align_change_cb, grid); sl = elm_slider_add(win); elm_object_text_set(sl, "Vert. alignment"); elm_slider_span_size_set(sl, 100); evas_object_size_hint_align_set(sl, 0.5, EVAS_HINT_FILL); evas_object_size_hint_weight_set(sl, 0.0, EVAS_HINT_EXPAND); elm_slider_indicator_format_set(sl, "%1.1f"); elm_slider_value_set(sl, v); elm_box_pack_end(hbx_3, sl); evas_object_show(sl); evas_object_smart_callback_add(sl, "changed", _v_align_change_cb, grid); elm_gengrid_align_get(grid, &h, &v); sl = elm_slider_add(win); elm_object_text_set(sl, "Page rel. size"); elm_slider_span_size_set(sl, 100); evas_object_size_hint_align_set(sl, 0.5, EVAS_HINT_FILL); evas_object_size_hint_weight_set(sl, 0.0, EVAS_HINT_EXPAND); elm_slider_indicator_format_set(sl, "%1.1f"); elm_slider_value_set(sl, h); elm_box_pack_end(hbx_3, sl); evas_object_show(sl); _page_change_cb(grid, sl, NULL); evas_object_smart_callback_add(sl, "changed", _page_change_cb, grid); if (!gic) { gic = elm_gengrid_item_class_new(); gic->item_style = "default"; gic->func.text_get = _grid_label_get; gic->func.content_get = _grid_content_get; gic->func.state_get = _grid_state_get; gic->func.del = _grid_del; } // we only create the first time its needed. we dont unref/free _append_bt_clicked(grid, NULL, NULL); _append_bt_clicked(grid, NULL, NULL); _append_bt_clicked(grid, NULL, NULL); evas_object_resize(win, 600, 600); evas_object_show(win); elm_run(); return 0; }