From 0bac7af444713fe9a43d04675d7e902bff00a1ff Mon Sep 17 00:00:00 2001 From: hermet Date: Fri, 1 Apr 2011 11:24:15 +0000 Subject: [PATCH] elementary / slider, radio, separator, photocam, photo, store, scroller, slideshow, spinner, progressbar - removed white spacesw git-svn-id: https://svn.enlightenment.org/svn/e/trunk/elementary@58250 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- src/lib/elm_photo.c | 24 +- src/lib/elm_photocam.c | 228 ++++++------ src/lib/elm_progressbar.c | 68 ++-- src/lib/elm_radio.c | 102 +++--- src/lib/elm_scroller.c | 68 ++-- src/lib/elm_separator.c | 2 +- src/lib/elm_slider.c | 158 ++++---- src/lib/elm_slideshow.c | 162 ++++----- src/lib/elm_spinner.c | 120 +++--- src/lib/elm_store.c | 906 +++++++++++++++++++++++----------------------- 10 files changed, 919 insertions(+), 919 deletions(-) diff --git a/src/lib/elm_photo.c b/src/lib/elm_photo.c index 4e27331..e6a27fc 100644 --- a/src/lib/elm_photo.c +++ b/src/lib/elm_photo.c @@ -5,8 +5,8 @@ * @defgroup Photo Photo * * For displaying the photo of a person (contact). Simple yet - * with a very specific purpose. - * + * with a very specific purpose. + * * Signals that you can add callbacks for are: * * - clicked: This is called when a user has clicked the photo @@ -57,10 +57,10 @@ _theme_hook(Evas_Object *obj) if (!wd) return; _elm_widget_mirrored_reload(obj); _mirrored_set(wd->frm, elm_widget_mirrored_get(obj)); - _elm_theme_object_set(obj, wd->frm, "photo", "base", + _elm_theme_object_set(obj, wd->frm, "photo", "base", elm_widget_style_get(obj)); edje_object_part_swallow(wd->frm, "elm.swallow.content", wd->img); - edje_object_scale_set(wd->frm, elm_widget_scale_get(obj) * + edje_object_scale_set(wd->frm, elm_widget_scale_get(obj) * _elm_config->scale); _sizing_eval(obj); } @@ -72,7 +72,7 @@ _sizing_eval(Evas_Object *obj) Evas_Coord minw = -1, minh = -1, maxw = -1, maxh = -1; if (!wd) return; - if (wd->size > 0) + if (wd->size > 0) { double scale = 0.0; @@ -96,7 +96,7 @@ _icon_move_resize(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, v Widget_Data *wd = elm_widget_data_get(data); if (!wd) return; - if (wd->fill) + if (wd->fill) { Edje_Message_Int_Set *msg; Evas_Object *icon = _els_smart_icon_object_get(wd->img); @@ -218,7 +218,7 @@ elm_photo_add(Evas_Object *parent) Evas_Object *icon; ELM_WIDGET_STANDARD_SETUP(wd, Widget_Data, parent, e, obj, NULL); - + ELM_SET_WIDTYPE(widtype, "photo"); elm_widget_type_set(obj, "photo"); elm_widget_sub_object_add(parent, obj); @@ -238,12 +238,12 @@ elm_photo_add(Evas_Object *parent) _els_smart_icon_fill_inside_set(wd->img, 0); _els_smart_icon_scale_size_set(wd->img, 0); wd->fill = EINA_FALSE; - _els_smart_icon_scale_set(wd->img, + _els_smart_icon_scale_set(wd->img, elm_widget_scale_get(obj) * _elm_config->scale); evas_object_event_callback_add(wd->img, EVAS_CALLBACK_MOUSE_UP, - _mouse_up, obj); + _mouse_up, obj); evas_object_event_callback_add(wd->img, EVAS_CALLBACK_MOUSE_DOWN, - _mouse_down, obj); + _mouse_down, obj); evas_object_repeat_events_set(wd->img, 1); edje_object_part_swallow(wd->frm, "elm.swallow.content", wd->img); evas_object_show(wd->img); @@ -253,9 +253,9 @@ elm_photo_add(Evas_Object *parent) icon = _els_smart_icon_object_get(wd->img); evas_object_event_callback_add(icon, EVAS_CALLBACK_MOVE, - _icon_move_resize, obj); + _icon_move_resize, obj); evas_object_event_callback_add(icon, EVAS_CALLBACK_RESIZE, - _icon_move_resize, obj); + _icon_move_resize, obj); _mirrored_set(obj, elm_widget_mirrored_get(obj)); _sizing_eval(obj); diff --git a/src/lib/elm_photocam.c b/src/lib/elm_photocam.c index 7bed1a8..45e842f 100644 --- a/src/lib/elm_photocam.c +++ b/src/lib/elm_photocam.c @@ -9,35 +9,35 @@ * and zooming and panning as well as fitting logic. It is entirely focused * on jpeg images, and takes advantage of properties of the jpeg format (via * evas loader features in the jpeg loader). - * + * * Signals that you can add callbacks for are: * * clicked - This is called when a user has clicked the photo without dragging * around. - * + * * press - This is called when a user has pressed down on the photo. - * + * * longpressed - This is called when a user has pressed down on the photo for * a long time without dragging around. - * + * * clicked,double - This is called when a user has double-clicked the photo. - * + * * load - Photo load begins. - * + * * loaded - This is called when the image file load is complete for the first * view (low resolution blurry version). * * load,details - Photo detailed data load begins. - * + * * loaded,details - This is called when the image file load is complete for the * detailed image data (full resolution needed). * * zoom,start - Zoom animation started. - * + * * zoom,stop - Zoom animation stopped. - * + * * zoom,change - Zoom changed when using an auto zoom mode. - * + * * scroll - the content has been scrolled (moved) * * scroll,anim,start - scrolling animation has started @@ -47,11 +47,11 @@ * scroll,drag,start - dragging the contents around has started * * scroll,drag,stop - dragging the contents around has stopped - * + * * --- - * + * * TODO (maybe - optional future stuff): - * + * * 1. wrap photo in theme edje so u can have styling around photo (like white * photo bordering). * 2. exif handling @@ -67,7 +67,7 @@ struct _Grid_Item { Widget_Data *wd; Evas_Object *img; - struct + struct { int x, y, w, h; } src, out; @@ -97,26 +97,26 @@ struct _Widget_Data double zoom; Elm_Photocam_Zoom_Mode mode; const char *file; - + Ecore_Job *calc_job; Ecore_Timer *scr_timer; Ecore_Timer *long_timer; Ecore_Animator *zoom_animator; double t_start, t_end; - struct + struct { int imw, imh; int w, h; int ow, oh, nw, nh; - struct + struct { double x, y; } spos; } size; struct { - Eina_Bool show : 1; - Evas_Coord x, y ,w ,h; + Eina_Bool show : 1; + Evas_Coord x, y ,w ,h; } show; int tsize; Evas_Object *img; // low res version of image (scale down == 8) @@ -179,8 +179,8 @@ img_place(Evas_Object *obj, Evas_Coord px, Evas_Coord py, Evas_Coord ox, Evas_Co if (wd->show.show) { - wd->show.show = EINA_FALSE; - elm_smart_scroller_child_region_show(wd->scr, wd->show.x, wd->show.y, wd->show.w, wd->show.h); + wd->show.show = EINA_FALSE; + elm_smart_scroller_child_region_show(wd->scr, wd->show.x, wd->show.y, wd->show.w, wd->show.h); } } @@ -202,7 +202,7 @@ grid_place(Evas_Object *obj, Grid *g, Evas_Coord px, Evas_Coord py, Evas_Coord o for (x = 0; x < g->gw; x++) { int tn, xx, yy, ww, hh; - + tn = (y * g->gw) + x; xx = g->grid[tn].out.x; yy = g->grid[tn].out.y; @@ -240,7 +240,7 @@ grid_clear(Evas_Object *obj, Grid *g) for (x = 0; x < g->gw; x++) { int tn; - + tn = (y * g->gw) + x; evas_object_del(g->grid[tn].img); if (g->grid[tn].want) @@ -295,15 +295,15 @@ grid_create(Evas_Object *obj) Widget_Data *wd = elm_widget_data_get(obj); int x, y; Grid *g; - + if (!wd) return NULL; g = calloc(1, sizeof(Grid)); - + g->zoom = grid_zoom_calc(wd->zoom); g->tsize = wd->tsize; g->iw = wd->size.imw; g->ih = wd->size.imh; - + g->w = g->iw / g->zoom; g->h = g->ih / g->zoom; if (g->zoom >= 8) return NULL; @@ -321,7 +321,7 @@ grid_create(Evas_Object *obj) for (x = 0; x < g->gw; x++) { int tn; - + tn = (y * g->gw) + x; g->grid[tn].src.x = x * g->tsize; if (x == (g->gw - 1)) @@ -333,25 +333,25 @@ grid_create(Evas_Object *obj) g->grid[tn].src.h = g->h - ((g->gh - 1) * g->tsize); else g->grid[tn].src.h = g->tsize; - + g->grid[tn].out.x = g->grid[tn].src.x; g->grid[tn].out.y = g->grid[tn].src.y; g->grid[tn].out.w = g->grid[tn].src.w; g->grid[tn].out.h = g->grid[tn].src.h; - + g->grid[tn].wd = wd; - g->grid[tn].img = - evas_object_image_add(evas_object_evas_get(obj)); + g->grid[tn].img = + evas_object_image_add(evas_object_evas_get(obj)); evas_object_image_scale_hint_set - (g->grid[tn].img, EVAS_IMAGE_SCALE_HINT_DYNAMIC); + (g->grid[tn].img, EVAS_IMAGE_SCALE_HINT_DYNAMIC); evas_object_pass_events_set(g->grid[tn].img, EINA_TRUE); - evas_object_smart_member_add(g->grid[tn].img, + evas_object_smart_member_add(g->grid[tn].img, wd->pan_smart); elm_widget_sub_object_add(obj, g->grid[tn].img); evas_object_image_filled_set(g->grid[tn].img, 1); - evas_object_event_callback_add(g->grid[tn].img, + evas_object_event_callback_add(g->grid[tn].img, EVAS_CALLBACK_IMAGE_PRELOADED, - _tile_preloaded, + _tile_preloaded, &(g->grid[tn])); } } @@ -375,7 +375,7 @@ grid_load(Evas_Object *obj, Grid *g) { int tn, xx, yy, ww, hh; Eina_Bool visible = EINA_FALSE; - + tn = (y * g->gw) + x; xx = g->grid[tn].out.x; yy = g->grid[tn].out.y; @@ -393,7 +393,7 @@ grid_load(Evas_Object *obj, Grid *g) yy = (gh * yy) / g->h; hh = ((gh * (ty + hh)) / g->h) - yy; } - if (ELM_RECTS_INTERSECT(xx - wd->pan_x + ox, + if (ELM_RECTS_INTERSECT(xx - wd->pan_x + ox, yy - wd->pan_y + oy, ww, hh, cvx, cvy, cvw, cvh)) @@ -409,7 +409,7 @@ grid_load(Evas_Object *obj, Grid *g) g->grid[tn].src.y, g->grid[tn].src.w, g->grid[tn].src.h); - evas_object_image_file_set(g->grid[tn].img, wd->file, NULL); + evas_object_image_file_set(g->grid[tn].img, wd->file, NULL); evas_object_image_preload(g->grid[tn].img, 0); wd->preload_num++; if (wd->preload_num == 1) @@ -472,7 +472,7 @@ _smooth_update(Evas_Object *obj) for (x = 0; x < g->gw; x++) { int tn; - + tn = (y * g->gw) + x; evas_object_image_smooth_scale_set(g->grid[tn].img, (!wd->nosmooth)); } @@ -485,13 +485,13 @@ static void _grid_raise(Grid *g) { int x, y; - + for (y = 0; y < g->gh; y++) { for (x = 0; x < g->gw; x++) { int tn; - + tn = (y * g->gw) + x; evas_object_raise(g->grid[tn].img); } @@ -578,7 +578,7 @@ zoom_do(Evas_Object *obj, double t) { Eina_List *l, *l_next; Grid *g; - + EINA_LIST_FOREACH_SAFE(wd->grids, l, l_next, g) { if (g->dead) @@ -626,7 +626,7 @@ static void _mouse_move(void *data, Evas *evas __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) { Widget_Data *wd = elm_widget_data_get(data); -// Evas_Event_Mouse_Move *ev = event_info; + // Evas_Event_Mouse_Move *ev = event_info; if (!wd) return; } @@ -658,7 +658,7 @@ _mouse_down(void *data, Evas *evas __UNUSED__, Evas_Object *obj __UNUSED__, void if (wd->long_timer) ecore_timer_del(wd->long_timer); wd->long_timer = ecore_timer_add(_elm_config->longpress_timeout, _long_press, data); } - + static void _mouse_up(void *data, Evas *evas __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info) { @@ -677,7 +677,7 @@ _mouse_up(void *data, Evas *evas __UNUSED__, Evas_Object *obj __UNUSED__, void * evas_object_smart_callback_call(data, "clicked", NULL); wd->on_hold = EINA_FALSE; } - + static Evas_Smart_Class _pan_sc = EVAS_SMART_CLASS_INIT_NULL; static void @@ -708,13 +708,13 @@ _on_focus_hook(void *data __UNUSED__, Evas_Object *obj) if (!wd) return; if (elm_widget_focus_get(obj)) { - edje_object_signal_emit(wd->obj, "elm,action,focus", "elm"); - evas_object_focus_set(wd->obj, EINA_TRUE); + edje_object_signal_emit(wd->obj, "elm,action,focus", "elm"); + evas_object_focus_set(wd->obj, EINA_TRUE); } else { - edje_object_signal_emit(wd->obj, "elm,action,unfocus", "elm"); - evas_object_focus_set(wd->obj, EINA_FALSE); + edje_object_signal_emit(wd->obj, "elm,action,unfocus", "elm"); + evas_object_focus_set(wd->obj, EINA_FALSE); } } @@ -724,21 +724,21 @@ _theme_hook(Evas_Object *obj) Widget_Data *wd = elm_widget_data_get(obj); if (!wd) return; elm_smart_scroller_object_theme_set(obj, wd->scr, "photocam", "base", elm_widget_style_get(obj)); -// edje_object_scale_set(wd->scr, elm_widget_scale_get(obj) * _elm_config->scale); + // edje_object_scale_set(wd->scr, elm_widget_scale_get(obj) * _elm_config->scale); _sizing_eval(obj); } /* -static void -_show_region_hook(void *data, Evas_Object *obj) -{ + static void + _show_region_hook(void *data, Evas_Object *obj) + { Widget_Data *wd = elm_widget_data_get(data); Evas_Coord x, y, w, h; if (!wd) return; elm_widget_show_region_get(obj, &x, &y, &w, &h); elm_smart_scroller_child_region_show(wd->scr, x, y, w, h); -} -*/ + } + */ static void _sizing_eval(Evas_Object *obj) @@ -746,11 +746,11 @@ _sizing_eval(Evas_Object *obj) Widget_Data *wd = elm_widget_data_get(obj); Evas_Coord minw = -1, minh = -1, maxw = -1, maxh = -1; if (!wd) return; -// evas_object_size_hint_min_get(wd->scr, &minw, &minh); + // evas_object_size_hint_min_get(wd->scr, &minw, &minh); evas_object_size_hint_max_get(wd->scr, &maxw, &maxh); -// minw = -1; -// minh = -1; -// if (wd->mode != ELM_LIST_LIMIT) minw = -1; + // minw = -1; + // minh = -1; + // if (wd->mode != ELM_LIST_LIMIT) minw = -1; evas_object_size_hint_min_set(obj, minw, minh); evas_object_size_hint_max_set(obj, maxw, maxh); } @@ -959,9 +959,9 @@ _scr_scroll(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__ evas_object_smart_callback_call(data, "scroll", NULL); } -static Eina_Bool +static Eina_Bool _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, - Evas_Callback_Type type, void *event_info) + Evas_Callback_Type type, void *event_info) { double zoom; if (type != EVAS_CALLBACK_KEY_DOWN) return EINA_FALSE; @@ -984,41 +984,41 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, elm_smart_scroller_page_size_get(wd->scr, &page_x, &page_y); elm_smart_scroller_child_viewport_size_get(wd->scr, &v_w, &v_h); - if ((!strcmp(ev->keyname, "Left")) || + if ((!strcmp(ev->keyname, "Left")) || (!strcmp(ev->keyname, "KP_Left"))) { x -= step_x; } - else if ((!strcmp(ev->keyname, "Right")) || + else if ((!strcmp(ev->keyname, "Right")) || (!strcmp(ev->keyname, "KP_Right"))) { x += step_x; } - else if ((!strcmp(ev->keyname, "Up")) || + else if ((!strcmp(ev->keyname, "Up")) || (!strcmp(ev->keyname, "KP_Up"))) { y -= step_y; } - else if ((!strcmp(ev->keyname, "Down")) || + else if ((!strcmp(ev->keyname, "Down")) || (!strcmp(ev->keyname, "KP_Down"))) { y += step_y; } - else if ((!strcmp(ev->keyname, "Prior")) || + else if ((!strcmp(ev->keyname, "Prior")) || (!strcmp(ev->keyname, "KP_Prior"))) { if (page_y < 0) - y -= -(page_y * v_h) / 100; + y -= -(page_y * v_h) / 100; else - y -= page_y; + y -= page_y; } - else if ((!strcmp(ev->keyname, "Next")) || + else if ((!strcmp(ev->keyname, "Next")) || (!strcmp(ev->keyname, "KP_Next"))) { if (page_y < 0) - y += -(page_y * v_h) / 100; + y += -(page_y * v_h) / 100; else - y += page_y; + y += page_y; } else if ((!strcmp(ev->keyname, "KP_Add"))) { @@ -1027,7 +1027,7 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, elm_photocam_zoom_mode_set(obj, ELM_PHOTOCAM_ZOOM_MODE_MANUAL); elm_photocam_zoom_set(obj, zoom); return EINA_TRUE; - } + } else if ((!strcmp(ev->keyname, "KP_Subtract"))) { zoom = elm_photocam_zoom_get(obj); @@ -1063,7 +1063,7 @@ elm_photocam_add(Evas_Object *parent) Eina_Bool bounce = _elm_config->thumbscroll_bounce_enable; ELM_WIDGET_STANDARD_SETUP(wd, Widget_Data, parent, e, obj, NULL); - + ELM_SET_WIDTYPE(widtype, "photocam"); elm_widget_type_set(obj, "photocam"); elm_widget_sub_object_add(parent, obj); @@ -1086,7 +1086,7 @@ elm_photocam_add(Evas_Object *parent) evas_object_smart_callback_add(wd->scr, "drag,start", _scr_drag_start, obj); evas_object_smart_callback_add(wd->scr, "drag,stop", _scr_drag_stop, obj); evas_object_smart_callback_add(wd->scr, "scroll", _scr_scroll, obj); - + elm_smart_scroller_bounce_allow_set(wd->scr, bounce, bounce); wd->obj = obj; @@ -1095,38 +1095,38 @@ elm_photocam_add(Evas_Object *parent) evas_object_smart_callback_add(obj, "scroll-hold-off", _hold_off, obj); evas_object_smart_callback_add(obj, "scroll-freeze-on", _freeze_on, obj); evas_object_smart_callback_add(obj, "scroll-freeze-off", _freeze_off, obj); - + if (!smart) { - static Evas_Smart_Class sc; - - evas_object_smart_clipped_smart_set(&_pan_sc); - sc = _pan_sc; - sc.name = "elm_photocam_pan"; - sc.version = EVAS_SMART_CLASS_VERSION; - sc.add = _pan_add; - sc.del = _pan_del; - sc.resize = _pan_resize; - sc.move = _pan_move; - sc.calculate = _pan_calculate; - smart = evas_smart_class_new(&sc); + static Evas_Smart_Class sc; + + evas_object_smart_clipped_smart_set(&_pan_sc); + sc = _pan_sc; + sc.name = "elm_photocam_pan"; + sc.version = EVAS_SMART_CLASS_VERSION; + sc.add = _pan_add; + sc.del = _pan_del; + sc.resize = _pan_resize; + sc.move = _pan_move; + sc.calculate = _pan_calculate; + smart = evas_smart_class_new(&sc); } if (smart) { - wd->pan_smart = evas_object_smart_add(e, smart); - wd->pan = evas_object_smart_data_get(wd->pan_smart); - wd->pan->wd = wd; + wd->pan_smart = evas_object_smart_add(e, smart); + wd->pan = evas_object_smart_data_get(wd->pan_smart); + wd->pan->wd = wd; } elm_smart_scroller_extern_pan_set(wd->scr, wd->pan_smart, - _pan_set, _pan_get, _pan_max_get, + _pan_set, _pan_get, _pan_max_get, _pan_min_get, _pan_child_size_get); wd->zoom = 1; wd->mode = ELM_PHOTOCAM_ZOOM_MODE_MANUAL; - + wd->tsize = 512; - + wd->img = evas_object_image_add(e); evas_object_image_scale_hint_set(wd->img, EVAS_IMAGE_SCALE_HINT_DYNAMIC); evas_object_event_callback_add(wd->img, EVAS_CALLBACK_MOUSE_DOWN, @@ -1141,8 +1141,8 @@ elm_photocam_add(Evas_Object *parent) evas_object_image_filled_set(wd->img, 1); evas_object_event_callback_add(wd->img, EVAS_CALLBACK_IMAGE_PRELOADED, _main_preloaded, obj); - - edje_object_size_min_calc(elm_smart_scroller_edje_object_get(wd->scr), + + edje_object_size_min_calc(elm_smart_scroller_edje_object_get(wd->scr), &minw, &minh); evas_object_size_hint_min_set(obj, minw, minh); @@ -1175,7 +1175,7 @@ elm_photocam_file_set(Evas_Object *obj, const char *file) if (!wd) return EVAS_LOAD_ERROR_GENERIC; if (!eina_stringshare_replace(&wd->file, file)) return EVAS_LOAD_ERROR_NONE; grid_clearall(obj); - + evas_object_hide(wd->img); evas_object_image_smooth_scale_set(wd->img, (wd->nosmooth == 0)); evas_object_image_file_set(wd->img, NULL, NULL); @@ -1220,7 +1220,7 @@ elm_photocam_file_set(Evas_Object *obj, const char *file) * Returns the path of the current image file * * @param obj The photocam object - * @return Returns the path + * @return Returns the path * * @ingroup Photocam */ @@ -1240,7 +1240,7 @@ elm_photocam_file_get(const Evas_Object *obj) * (that is 2x2 photo pixels will display as 1 on-screen pixel). 4:1 will be * 4x4 photo pixels as 1 screen pixel, and so on. The @p zoom parameter must * be greater than 0. It is usggested to stick to powers of 2. (1, 2, 4, 8, - * 16, 32, etc.). + * 16, 32, etc.). * * @param obj The photocam object * @param zoom The zoom level to set @@ -1379,7 +1379,7 @@ elm_photocam_zoom_set(Evas_Object *obj, double zoom) free(g); } } - done: +done: wd->t_start = ecore_loop_time_get(); wd->t_end = wd->t_start + _elm_config->zoom_friction; if ((wd->size.w > 0) && (wd->size.h > 0)) @@ -1531,9 +1531,9 @@ elm_photocam_image_size_get(const Evas_Object *obj, int *w, int *h) /** * Get the current area of the image that is currently shown - * - * This gets the region - * + * + * This gets the region + * */ EAPI void elm_photocam_region_get(const Evas_Object *obj, int *x, int *y, int *w, int *h) @@ -1561,8 +1561,8 @@ elm_photocam_region_get(const Evas_Object *obj, int *x, int *y, int *w, int *h) } else { - if (x) *x = 0; - if (w) *w = 0; + if (x) *x = 0; + if (w) *w = 0; } if (wd->size.h > 0) @@ -1582,8 +1582,8 @@ elm_photocam_region_get(const Evas_Object *obj, int *x, int *y, int *w, int *h) } else { - if (y) *y = 0; - if (h) *h = 0; + if (y) *y = 0; + if (h) *h = 0; } } @@ -1614,7 +1614,7 @@ elm_photocam_image_region_show(Evas_Object *obj, int x, int y, int w, int h __UN rh = (w * wd->size.h) / wd->size.imh; if (rw < 1) rw = 1; if (rh < 1) rh = 1; - if ((rx + rw) > wd->size.w) rx = wd->size.w - rw; + if ((rx + rw) > wd->size.w) rx = wd->size.w - rw; if ((ry + rh) > wd->size.h) ry = wd->size.h - rh; if (wd->zoom_animator) { @@ -1654,7 +1654,7 @@ elm_photocam_image_region_bring_in(Evas_Object *obj, int x, int y, int w, int h rh = (w * wd->size.h) / wd->size.imh; if (rw < 1) rw = 1; if (rh < 1) rh = 1; - if ((rx + rw) > wd->size.w) rx = wd->size.w - rw; + if ((rx + rw) > wd->size.w) rx = wd->size.w - rw; if ((ry + rh) > wd->size.h) ry = wd->size.h - rh; if (wd->zoom_animator) { @@ -1664,17 +1664,17 @@ elm_photocam_image_region_bring_in(Evas_Object *obj, int x, int y, int w, int h wd->zoom_animator = NULL; zoom_do(obj, 1.0); evas_object_smart_callback_call(obj, "zoom,stop", NULL); - } + } elm_smart_scroller_region_bring_in(wd->scr, rx, ry, rw, rh); } /** * Set the paused state for photocam - * + * * This sets the paused state to on (1) or off (0) for photocam. The default * is on. This will stop zooming using animation ch change zoom levels and * change instantly. This will stop any existing animations that are running. - * + * * @param obj The photocam object * @param paused The pause state to set * @@ -1702,9 +1702,9 @@ elm_photocam_paused_set(Evas_Object *obj, Eina_Bool paused) /** * Get the paused state for photocam - * + * * This gets the current paused state for the photocam object. - * + * * @param obj The photocam object * @return The current paused state * @@ -1721,7 +1721,7 @@ elm_photocam_paused_get(const Evas_Object *obj) /** * Get the internal low-res image used for photocam - * + * * This gets the internal image object inside photocam. Do not modify it. It * is for inspection only, and hooking callbacks to. Nothing else. It may be * deleted at any time as well. diff --git a/src/lib/elm_progressbar.c b/src/lib/elm_progressbar.c index 50415bc..95c4e15 100644 --- a/src/lib/elm_progressbar.c +++ b/src/lib/elm_progressbar.c @@ -82,11 +82,11 @@ _theme_hook(Evas_Object *obj) _elm_theme_object_set(obj, wd->progressbar, "progressbar", "horizontal", elm_widget_style_get(obj)); else _elm_theme_object_set(obj, wd->progressbar, "progressbar", "vertical", elm_widget_style_get(obj)); - + if (wd->icon) { - edje_object_part_swallow(wd->progressbar, "elm.swallow.content", wd->icon); - edje_object_signal_emit(wd->progressbar, "elm,state,icon,visible", "elm"); + edje_object_part_swallow(wd->progressbar, "elm.swallow.content", wd->icon); + edje_object_signal_emit(wd->progressbar, "elm,state,icon,visible", "elm"); } if (wd->label) { @@ -94,15 +94,15 @@ _theme_hook(Evas_Object *obj) edje_object_signal_emit(wd->progressbar, "elm,state,text,visible", "elm"); } if (wd->pulse) - edje_object_signal_emit(wd->progressbar, "elm,state,pulse", "elm"); + edje_object_signal_emit(wd->progressbar, "elm,state,pulse", "elm"); else - edje_object_signal_emit(wd->progressbar, "elm,state,fraction", "elm"); + edje_object_signal_emit(wd->progressbar, "elm,state,fraction", "elm"); if (wd->pulse_state) - edje_object_signal_emit(wd->progressbar, "elm,state,pulse,start", "elm"); - + edje_object_signal_emit(wd->progressbar, "elm,state,pulse,start", "elm"); + if ((wd->units) && (!wd->pulse)) - edje_object_signal_emit(wd->progressbar, "elm,state,units,visible", "elm"); - + edje_object_signal_emit(wd->progressbar, "elm,state,units,visible", "elm"); + if (wd->horizontal) evas_object_size_hint_min_set(wd->spacer, (double)wd->size * elm_widget_scale_get(obj) * _elm_config->scale, 1); else @@ -111,8 +111,8 @@ _theme_hook(Evas_Object *obj) edje_object_part_swallow(wd->progressbar, "elm.swallow.bar", wd->spacer); if (wd->inverted) - edje_object_signal_emit(wd->progressbar, "elm,state,inverted,on", "elm"); - + edje_object_signal_emit(wd->progressbar, "elm,state,inverted,on", "elm"); + _units_set(obj); edje_object_message_signal_process(wd->progressbar); edje_object_scale_set(wd->progressbar, elm_widget_scale_get(obj) * _elm_config->scale); @@ -148,12 +148,12 @@ _sub_del(void *data __UNUSED__, Evas_Object *obj, void *event_info) if (!wd) return; if (sub == wd->icon) { - edje_object_signal_emit(wd->progressbar, "elm,state,icon,hidden", "elm"); - evas_object_event_callback_del_full - (sub, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _changed_size_hints, obj); - wd->icon = NULL; - edje_object_message_signal_process(wd->progressbar); - _sizing_eval(obj); + edje_object_signal_emit(wd->progressbar, "elm,state,icon,hidden", "elm"); + evas_object_event_callback_del_full + (sub, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _changed_size_hints, obj); + wd->icon = NULL; + edje_object_message_signal_process(wd->progressbar); + _sizing_eval(obj); } } @@ -167,8 +167,8 @@ _val_set(Evas_Object *obj) pos = wd->val; rtl = elm_widget_mirrored_get(obj); if ((!rtl && wd->inverted) || (rtl && - ((!wd->horizontal && wd->inverted) || - (wd->horizontal && !wd->inverted)))) pos = MAX_RATIO_LVL - pos; + ((!wd->horizontal && wd->inverted) || + (wd->horizontal && !wd->inverted)))) pos = MAX_RATIO_LVL - pos; edje_object_part_drag_value_set(wd->progressbar, "elm.cur.progressbar", pos, pos); } @@ -203,7 +203,7 @@ elm_progressbar_add(Evas_Object *parent) Widget_Data *wd; ELM_WIDGET_STANDARD_SETUP(wd, Widget_Data, parent, e, obj, NULL); - + ELM_SET_WIDTYPE(widtype, "progressbar"); elm_widget_type_set(obj, "progressbar"); elm_widget_sub_object_add(parent, obj); @@ -359,13 +359,13 @@ elm_progressbar_label_set(Evas_Object *obj, const char *label) eina_stringshare_replace(&wd->label, label); if (label) { - edje_object_signal_emit(wd->progressbar, "elm,state,text,visible", "elm"); - edje_object_message_signal_process(wd->progressbar); + edje_object_signal_emit(wd->progressbar, "elm,state,text,visible", "elm"); + edje_object_message_signal_process(wd->progressbar); } else { - edje_object_signal_emit(wd->progressbar, "elm,state,text,hidden", "elm"); - edje_object_message_signal_process(wd->progressbar); + edje_object_signal_emit(wd->progressbar, "elm,state,text,hidden", "elm"); + edje_object_message_signal_process(wd->progressbar); } edje_object_part_text_set(wd->progressbar, "elm.text", label); _sizing_eval(obj); @@ -411,12 +411,12 @@ elm_progressbar_icon_set(Evas_Object *obj, Evas_Object *icon) wd->icon = icon; if (icon) { - elm_widget_sub_object_add(obj, icon); - evas_object_event_callback_add(icon, EVAS_CALLBACK_CHANGED_SIZE_HINTS, - _changed_size_hints, obj); - edje_object_part_swallow(wd->progressbar, "elm.swallow.content", icon); - edje_object_signal_emit(wd->progressbar, "elm,state,icon,visible", "elm"); - edje_object_message_signal_process(wd->progressbar); + elm_widget_sub_object_add(obj, icon); + evas_object_event_callback_add(icon, EVAS_CALLBACK_CHANGED_SIZE_HINTS, + _changed_size_hints, obj); + edje_object_part_swallow(wd->progressbar, "elm.swallow.content", icon); + edje_object_signal_emit(wd->progressbar, "elm,state,icon,visible", "elm"); + edje_object_message_signal_process(wd->progressbar); } _sizing_eval(obj); } @@ -530,13 +530,13 @@ elm_progressbar_unit_format_set(Evas_Object *obj, const char *units) eina_stringshare_replace(&wd->units, units); if (units) { - edje_object_signal_emit(wd->progressbar, "elm,state,units,visible", "elm"); - edje_object_message_signal_process(wd->progressbar); + edje_object_signal_emit(wd->progressbar, "elm,state,units,visible", "elm"); + edje_object_message_signal_process(wd->progressbar); } else { - edje_object_signal_emit(wd->progressbar, "elm,state,units,hidden", "elm"); - edje_object_message_signal_process(wd->progressbar); + edje_object_signal_emit(wd->progressbar, "elm,state,units,hidden", "elm"); + edje_object_message_signal_process(wd->progressbar); } _units_set(obj); _sizing_eval(obj); diff --git a/src/lib/elm_radio.c b/src/lib/elm_radio.c index 4f98add..e16051a 100644 --- a/src/lib/elm_radio.c +++ b/src/lib/elm_radio.c @@ -108,13 +108,13 @@ _on_focus_hook(void *data __UNUSED__, Evas_Object *obj) if (!wd) return; if (elm_widget_focus_get(obj)) { - edje_object_signal_emit(wd->radio, "elm,action,focus", "elm"); - evas_object_focus_set(wd->radio, EINA_TRUE); + edje_object_signal_emit(wd->radio, "elm,action,focus", "elm"); + evas_object_focus_set(wd->radio, EINA_TRUE); } else { - edje_object_signal_emit(wd->radio, "elm,action,unfocus", "elm"); - evas_object_focus_set(wd->radio, EINA_FALSE); + edje_object_signal_emit(wd->radio, "elm,action,unfocus", "elm"); + evas_object_focus_set(wd->radio, EINA_FALSE); } } @@ -201,11 +201,11 @@ _sub_del(void *data __UNUSED__, Evas_Object *obj, void *event_info) if (!wd) return; if (sub == wd->icon) { - edje_object_signal_emit(wd->radio, "elm,state,icon,hidden", "elm"); - evas_object_event_callback_del_full - (sub, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _changed_size_hints, obj); - wd->icon = NULL; - _sizing_eval(obj); + edje_object_signal_emit(wd->radio, "elm,state,icon,hidden", "elm"); + evas_object_event_callback_del_full + (sub, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _changed_size_hints, obj); + wd->icon = NULL; + _sizing_eval(obj); } } @@ -216,11 +216,11 @@ _state_set(Evas_Object *obj, Eina_Bool state) if (!wd) return; if ((state != wd->state) && (!elm_widget_disabled_get(obj))) { - wd->state = state; - if (wd->state) - edje_object_signal_emit(wd->radio, "elm,state,radio,on", "elm"); - else - edje_object_signal_emit(wd->radio, "elm,state,radio,off", "elm"); + wd->state = state; + if (wd->state) + edje_object_signal_emit(wd->radio, "elm,state,radio,on", "elm"); + else + edje_object_signal_emit(wd->radio, "elm,state,radio,off", "elm"); } } @@ -232,14 +232,14 @@ _state_set_all(Widget_Data *wd) Eina_Bool disabled = EINA_FALSE; EINA_LIST_FOREACH(wd->group->radios, l, child) { - Widget_Data *wd2 = elm_widget_data_get(child); + Widget_Data *wd2 = elm_widget_data_get(child); if (wd2->state) selected = child; - if (wd2->value == wd->group->value) + if (wd2->value == wd->group->value) { _state_set(child, 1); if (!wd2->state) disabled = EINA_TRUE; } - else _state_set(child, 0); + else _state_set(child, 0); } if ((disabled) && (selected)) _state_set(selected, 1); } @@ -269,13 +269,13 @@ _signal_radio_on(void *data, Evas_Object *obj __UNUSED__, const char *emission _ } /** - * Add a new radio to the parent - * - * @param parent The parent object - * @return The new object or NULL if it cannot be created - * - * @ingroup Radio - */ + * Add a new radio to the parent + * + * @param parent The parent object + * @return The new object or NULL if it cannot be created + * + * @ingroup Radio + */ EAPI Evas_Object * elm_radio_add(Evas_Object *parent) { @@ -284,7 +284,7 @@ elm_radio_add(Evas_Object *parent) Widget_Data *wd; ELM_WIDGET_STANDARD_SETUP(wd, Widget_Data, parent, e, obj, NULL); - + ELM_SET_WIDTYPE(widtype, "radio"); elm_widget_type_set(obj, "radio"); elm_widget_sub_object_add(parent, obj); @@ -335,13 +335,13 @@ elm_radio_label_set(Evas_Object *obj, const char *label) eina_stringshare_replace(&wd->label, label); if (label) { - edje_object_signal_emit(wd->radio, "elm,state,text,visible", "elm"); - edje_object_message_signal_process(wd->radio); + edje_object_signal_emit(wd->radio, "elm,state,text,visible", "elm"); + edje_object_message_signal_process(wd->radio); } else { - edje_object_signal_emit(wd->radio, "elm,state,text,hidden", "elm"); - edje_object_message_signal_process(wd->radio); + edje_object_signal_emit(wd->radio, "elm,state,text,hidden", "elm"); + edje_object_message_signal_process(wd->radio); } edje_object_part_text_set(wd->radio, "elm.text", label); _sizing_eval(obj); @@ -387,12 +387,12 @@ elm_radio_icon_set(Evas_Object *obj, Evas_Object *icon) wd->icon = icon; if (icon) { - elm_widget_sub_object_add(obj, icon); - evas_object_event_callback_add(icon, EVAS_CALLBACK_CHANGED_SIZE_HINTS, - _changed_size_hints, obj); - edje_object_part_swallow(wd->radio, "elm.swallow.content", icon); - edje_object_signal_emit(wd->radio, "elm,state,icon,visible", "elm"); - edje_object_message_signal_process(wd->radio); + elm_widget_sub_object_add(obj, icon); + evas_object_event_callback_add(icon, EVAS_CALLBACK_CHANGED_SIZE_HINTS, + _changed_size_hints, obj); + edje_object_part_swallow(wd->radio, "elm.swallow.content", icon); + edje_object_signal_emit(wd->radio, "elm,state,icon,visible", "elm"); + edje_object_message_signal_process(wd->radio); } _sizing_eval(obj); } @@ -460,19 +460,19 @@ elm_radio_group_add(Evas_Object *obj, Evas_Object *group) if (!wd) return; if (!wd2) { - if (eina_list_count(wd->group->radios) == 1) - return; - wd->group->radios = eina_list_remove(wd->group->radios, obj); - wd->group = calloc(1, sizeof(Group)); - wd->group->radios = eina_list_append(wd->group->radios, obj); + if (eina_list_count(wd->group->radios) == 1) + return; + wd->group->radios = eina_list_remove(wd->group->radios, obj); + wd->group = calloc(1, sizeof(Group)); + wd->group->radios = eina_list_append(wd->group->radios, obj); } else if (wd->group == wd2->group) return; else { - wd->group->radios = eina_list_remove(wd->group->radios, obj); - if (!wd->group->radios) free(wd->group); - wd->group = wd2->group; - wd->group->radios = eina_list_append(wd->group->radios, obj); + wd->group->radios = eina_list_remove(wd->group->radios, obj); + if (!wd->group->radios) free(wd->group); + wd->group = wd2->group; + wd->group->radios = eina_list_append(wd->group->radios, obj); } if (wd->value == wd->group->value) _state_set(obj, 1); else _state_set(obj, 0); @@ -581,15 +581,15 @@ elm_radio_value_pointer_set(Evas_Object *obj, int *valuep) if (!wd) return; if (valuep) { - wd->group->valuep = valuep; - if (*(wd->group->valuep) != wd->group->value) - { - wd->group->value = *(wd->group->valuep); - _state_set_all(wd); - } + wd->group->valuep = valuep; + if (*(wd->group->valuep) != wd->group->value) + { + wd->group->value = *(wd->group->valuep); + _state_set_all(wd); + } } else { - wd->group->valuep = NULL; + wd->group->valuep = NULL; } } diff --git a/src/lib/elm_scroller.c b/src/lib/elm_scroller.c index d3b5347..67d6400 100644 --- a/src/lib/elm_scroller.c +++ b/src/lib/elm_scroller.c @@ -129,17 +129,17 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty } else if ((!strcmp(ev->keyname, "Prior")) || (!strcmp(ev->keyname, "KP_Prior"))) { - if (page_y < 0) - y -= -(page_y * v_h) / 100; - else - y -= page_y; + if (page_y < 0) + y -= -(page_y * v_h) / 100; + else + y -= page_y; } else if ((!strcmp(ev->keyname, "Next")) || (!strcmp(ev->keyname, "KP_Next"))) { - if (page_y < 0) - y += -(page_y * v_h) / 100; - else - y += page_y; + if (page_y < 0) + y += -(page_y * v_h) / 100; + else + y += page_y; } else return EINA_FALSE; @@ -194,10 +194,10 @@ _theme_hook(Evas_Object *obj) const char *str; _mirrored_set(obj, elm_widget_mirrored_get(obj)); - elm_smart_scroller_object_theme_set(obj, wd->scr, + elm_smart_scroller_object_theme_set(obj, wd->scr, wd->widget_name, wd->widget_base, elm_widget_style_get(obj)); -// edje_object_scale_set(wd->scr, elm_widget_scale_get(obj) * _elm_config->scale); + // edje_object_scale_set(wd->scr, elm_widget_scale_get(obj) * _elm_config->scale); edj = elm_smart_scroller_edje_object_get(wd->scr); str = edje_object_data_get(edj, "focus_highlight"); if ((str) && (!strcmp(str, "on"))) @@ -221,7 +221,7 @@ _elm_scroller_focus_next_hook(const Evas_Object *obj, Elm_Focus_Direction dir, E /* Try Focus cycle in subitem */ if ((elm_widget_can_focus_get(cur)) || (elm_widget_child_can_focus_get(cur))) - return elm_widget_focus_next_get(cur, dir, next); + return elm_widget_focus_next_get(cur, dir, next); /* Return */ *next = (Evas_Object *)obj; @@ -234,7 +234,7 @@ _signal_emit_hook(Evas_Object *obj, const char *emission, const char *source) Widget_Data *wd = elm_widget_data_get(obj); if (!wd) return; edje_object_signal_emit(elm_smart_scroller_edje_object_get(wd->scr), - emission, source); + emission, source); } static void @@ -243,7 +243,7 @@ _signal_callback_add_hook(Evas_Object *obj, const char *emission, const char *so Widget_Data *wd = elm_widget_data_get(obj); if (!wd) return; edje_object_signal_callback_add(elm_smart_scroller_edje_object_get(wd->scr), - emission, source, func_cb, data); + emission, source, func_cb, data); } static void @@ -251,8 +251,8 @@ _signal_callback_del_hook(Evas_Object *obj, const char *emission, const char *so { Widget_Data *wd = elm_widget_data_get(obj); edje_object_signal_callback_del_full( - elm_smart_scroller_edje_object_get(wd->scr), emission, source, - func_cb, data); + elm_smart_scroller_edje_object_get(wd->scr), emission, source, + func_cb, data); } static void @@ -331,11 +331,11 @@ _sub_del(void *data __UNUSED__, Evas_Object *obj, void *event_info) if (!wd) return; if (sub == wd->content) { - elm_widget_on_show_region_hook_set(wd->content, NULL, NULL); - evas_object_event_callback_del_full (sub, EVAS_CALLBACK_CHANGED_SIZE_HINTS, - _changed_size_hints, obj); - wd->content = NULL; - _sizing_eval(obj); + elm_widget_on_show_region_hook_set(wd->content, NULL, NULL); + evas_object_event_callback_del_full (sub, EVAS_CALLBACK_CHANGED_SIZE_HINTS, + _changed_size_hints, obj); + wd->content = NULL; + _sizing_eval(obj); } else if (sub == wd->scr) wd->scr = NULL; @@ -458,7 +458,7 @@ elm_scroller_add(Evas_Object *parent) Evas_Coord minw, minh; ELM_WIDGET_STANDARD_SETUP(wd, Widget_Data, parent, e, obj, NULL); - + ELM_SET_WIDTYPE(widtype, "scroller"); elm_widget_type_set(obj, "scroller"); elm_widget_sub_object_add(parent, obj); @@ -476,13 +476,13 @@ elm_scroller_add(Evas_Object *parent) wd->widget_name = eina_stringshare_add("scroller"); wd->widget_base = eina_stringshare_add("base"); - + wd->scr = elm_smart_scroller_add(e); elm_smart_scroller_widget_set(wd->scr, obj); _theme_hook(obj); elm_widget_resize_object_set(obj, wd->scr); evas_object_event_callback_add(wd->scr, EVAS_CALLBACK_CHANGED_SIZE_HINTS, - _changed_size_hints, obj); + _changed_size_hints, obj); edje_object_size_min_calc(elm_smart_scroller_edje_object_get(wd->scr), &minw, &minh); evas_object_size_hint_min_set(obj, minw, minh); @@ -545,12 +545,12 @@ elm_scroller_content_set(Evas_Object *obj, Evas_Object *content) wd->content = content; if (content) { - elm_widget_on_show_region_hook_set(content, _show_region_hook, obj); - elm_widget_sub_object_add(obj, content); + elm_widget_on_show_region_hook_set(content, _show_region_hook, obj); + elm_widget_sub_object_add(obj, content); if (wd->scr) elm_smart_scroller_child_set(wd->scr, content); - evas_object_event_callback_add(content, EVAS_CALLBACK_CHANGED_SIZE_HINTS, - _changed_size_hints, obj); + evas_object_event_callback_add(content, EVAS_CALLBACK_CHANGED_SIZE_HINTS, + _changed_size_hints, obj); } _sizing_eval(obj); } @@ -601,7 +601,7 @@ elm_scroller_content_unset(Evas_Object *obj) /** * Set custom theme elements for the scroller - * + * * @param obj The scroller object * @param widget The widget name to use (default is "scroller") * @param base The base name to use (default is "base") @@ -691,9 +691,9 @@ elm_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy policy_h, Elm_Scro Widget_Data *wd = elm_widget_data_get(obj); const Elm_Scroller_Policy map[3] = { - ELM_SMART_SCROLLER_POLICY_AUTO, - ELM_SMART_SCROLLER_POLICY_ON, - ELM_SMART_SCROLLER_POLICY_OFF + ELM_SMART_SCROLLER_POLICY_AUTO, + ELM_SMART_SCROLLER_POLICY_ON, + ELM_SMART_SCROLLER_POLICY_OFF }; if ((!wd) || (!wd->scr)) return; if ((policy_h >= 3) || (policy_v >= 3)) return; @@ -892,7 +892,7 @@ elm_scroller_region_bring_in(Evas_Object *obj, Evas_Coord x, Evas_Coord y, Evas_ * * This enables or disabled event propagation from the scroller content to * the scroller and its parent. By default event propagation is disabled. - * + * * @param obj The scroller object * @param propagation If propagation is enabled or not * @@ -911,9 +911,9 @@ elm_scroller_propagate_events_set(Evas_Object *obj, Eina_Bool propagation) /** * Get event propagation for a scroller * - * This gets the event propagation for a scroller. See + * This gets the event propagation for a scroller. See * elm_scroller_propagate_events_set() for more information - * + * * @param obj The scroller object * @return The propagation state * diff --git a/src/lib/elm_separator.c b/src/lib/elm_separator.c index 58084a1..0cc6f76 100644 --- a/src/lib/elm_separator.c +++ b/src/lib/elm_separator.c @@ -82,7 +82,7 @@ elm_separator_add(Evas_Object *parent) Widget_Data *wd; ELM_WIDGET_STANDARD_SETUP(wd, Widget_Data, parent, e, obj, NULL); - + ELM_SET_WIDTYPE(widtype, "separator"); wd->horizontal = EINA_FALSE; elm_widget_type_set(obj, "separator"); diff --git a/src/lib/elm_slider.c b/src/lib/elm_slider.c index 3e2b975..0258746 100644 --- a/src/lib/elm_slider.c +++ b/src/lib/elm_slider.c @@ -174,13 +174,13 @@ _on_focus_hook(void *data __UNUSED__, Evas_Object *obj) if (!wd) return; if (elm_widget_focus_get(obj)) { - edje_object_signal_emit(wd->slider, "elm,action,focus", "elm"); - evas_object_focus_set(wd->slider, EINA_TRUE); + edje_object_signal_emit(wd->slider, "elm,action,focus", "elm"); + evas_object_focus_set(wd->slider, EINA_TRUE); } else { - edje_object_signal_emit(wd->slider, "elm,action,unfocus", "elm"); - evas_object_focus_set(wd->slider, EINA_FALSE); + edje_object_signal_emit(wd->slider, "elm,action,unfocus", "elm"); + evas_object_focus_set(wd->slider, EINA_FALSE); } } @@ -217,18 +217,18 @@ _theme_hook(Evas_Object *obj) edje_object_part_text_set(wd->slider, "elm.text", wd->label); edje_object_signal_emit(wd->slider, "elm,state,text,visible", "elm"); } - + if (wd->units) edje_object_signal_emit(wd->slider, "elm,state,units,visible", "elm"); - + if (wd->horizontal) evas_object_size_hint_min_set(wd->spacer, (double)wd->size * elm_widget_scale_get(obj) * _elm_config->scale, 1); else evas_object_size_hint_min_set(wd->spacer, 1, (double)wd->size * elm_widget_scale_get(obj) * _elm_config->scale); - + if (wd->inverted) - edje_object_signal_emit(wd->slider, "elm,state,inverted,on", "elm"); - + edje_object_signal_emit(wd->slider, "elm,state,inverted,on", "elm"); + edje_object_part_swallow(wd->slider, "elm.swallow.bar", wd->spacer); _units_set(obj); _indicator_set(obj); @@ -244,14 +244,14 @@ _disable_hook(Evas_Object *obj) Widget_Data *wd = elm_widget_data_get(obj); if (!wd) return; if (elm_widget_disabled_get(obj)) - edje_object_signal_emit(wd->slider, "elm,state,disabled", "elm"); + edje_object_signal_emit(wd->slider, "elm,state,disabled", "elm"); else - edje_object_signal_emit(wd->slider, "elm,state,enabled", "elm"); + edje_object_signal_emit(wd->slider, "elm,state,enabled", "elm"); } static void _sizing_eval(Evas_Object *obj) -{ +{ Widget_Data *wd = elm_widget_data_get(obj); Evas_Coord minw = -1, minh = -1, maxw = -1, maxh = -1; if (!wd) return; @@ -279,12 +279,12 @@ _sub_del(void *data __UNUSED__, Evas_Object *obj, void *event_info) if (!wd) return; if (sub == wd->icon) { - edje_object_signal_emit(wd->slider, "elm,state,icon,hidden", "elm"); - evas_object_event_callback_del_full - (sub, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _changed_size_hints, obj); - wd->icon = NULL; - edje_object_message_signal_process(wd->slider); - _sizing_eval(obj); + edje_object_signal_emit(wd->slider, "elm,state,icon,hidden", "elm"); + evas_object_event_callback_del_full + (sub, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _changed_size_hints, obj); + wd->icon = NULL; + edje_object_message_signal_process(wd->slider); + _sizing_eval(obj); } if (sub == wd->end) { @@ -316,21 +316,21 @@ _val_fetch(Evas_Object *obj) double posx = 0.0, posy = 0.0, pos = 0.0, val; if (!wd) return; edje_object_part_drag_value_get(wd->slider, "elm.dragable.slider", - &posx, &posy); + &posx, &posy); if (wd->horizontal) pos = posx; else pos = posy; rtl = elm_widget_mirrored_get(obj); if ((!rtl && wd->inverted) || (rtl && - ((!wd->horizontal && wd->inverted) || - (wd->horizontal && !wd->inverted)))) pos = 1.0 - pos; + ((!wd->horizontal && wd->inverted) || + (wd->horizontal && !wd->inverted)))) pos = 1.0 - pos; val = (pos * (wd->val_max - wd->val_min)) + wd->val_min; if (val != wd->val) { - wd->val = val; - evas_object_smart_callback_call(obj, SIG_CHANGED, NULL); - if (wd->delay) ecore_timer_del(wd->delay); - wd->delay = ecore_timer_add(0.2, _delay_change, obj); + wd->val = val; + evas_object_smart_callback_call(obj, SIG_CHANGED, NULL); + if (wd->delay) ecore_timer_del(wd->delay); + wd->delay = ecore_timer_add(0.2, _delay_change, obj); } } @@ -350,8 +350,8 @@ _val_set(Evas_Object *obj) rtl = elm_widget_mirrored_get(obj); if ((!rtl && wd->inverted) || (rtl && - ((!wd->horizontal && wd->inverted) || - (wd->horizontal && !wd->inverted)))) pos = 1.0 - pos; + ((!wd->horizontal && wd->inverted) || + (wd->horizontal && !wd->inverted)))) pos = 1.0 - pos; edje_object_part_drag_value_set(wd->slider, "elm.dragable.slider", pos, pos); } @@ -362,10 +362,10 @@ _units_set(Evas_Object *obj) if (!wd) return; if (wd->units) { - char buf[1024]; + char buf[1024]; - snprintf(buf, sizeof(buf), wd->units, wd->val); - edje_object_part_text_set(wd->slider, "elm.units", buf); + snprintf(buf, sizeof(buf), wd->units, wd->val); + edje_object_part_text_set(wd->slider, "elm.units", buf); } else edje_object_part_text_set(wd->slider, "elm.units", NULL); @@ -378,15 +378,15 @@ _indicator_set(Evas_Object *obj) if (!wd) return; if (wd->indicator_format_func) { - const char *buf; - buf = wd->indicator_format_func(wd->val); - edje_object_part_text_set(wd->slider, "elm.dragable.slider:elm.indicator", buf); + const char *buf; + buf = wd->indicator_format_func(wd->val); + edje_object_part_text_set(wd->slider, "elm.dragable.slider:elm.indicator", buf); } else if (wd->indicator) { - char buf[1024]; - snprintf(buf, sizeof(buf), wd->indicator, wd->val); - edje_object_part_text_set(wd->slider, "elm.dragable.slider:elm.indicator", buf); + char buf[1024]; + snprintf(buf, sizeof(buf), wd->indicator, wd->val); + edje_object_part_text_set(wd->slider, "elm.dragable.slider:elm.indicator", buf); } else edje_object_part_text_set(wd->slider, "elm.dragable.slider:elm.indicator", NULL); @@ -463,7 +463,7 @@ _spacer_cb(void *data, Evas *e, Evas_Object *obj __UNUSED__, void *event_info) Evas_Event_Mouse_Down *ev = event_info; Evas_Coord x, y, w, h; double button_x, button_y; - + evas_object_geometry_get(wd->spacer, &x, &y, &w, &h); edje_object_part_drag_value_get(wd->slider, "elm.dragable.slider", &button_x, &button_y); if (wd->horizontal) @@ -472,7 +472,7 @@ _spacer_cb(void *data, Evas *e, Evas_Object *obj __UNUSED__, void *event_info) if (button_x > 1) button_x = 1; if (button_x < 0) button_x = 0; } - else + else { button_y = ((double)ev->output.y - (double)y) / (double)h; if (button_y > 1) button_y = 1; @@ -480,7 +480,7 @@ _spacer_cb(void *data, Evas *e, Evas_Object *obj __UNUSED__, void *event_info) } edje_object_part_drag_value_set(wd->slider, "elm.dragable.slider", button_x, button_y); evas_event_feed_mouse_cancel(e, 0, NULL); - evas_event_feed_mouse_down(e, 1, EVAS_BUTTON_NONE, 0, NULL); + evas_event_feed_mouse_down(e, 1, EVAS_BUTTON_NONE, 0, NULL); } /** @@ -499,7 +499,7 @@ elm_slider_add(Evas_Object *parent) Widget_Data *wd; ELM_WIDGET_STANDARD_SETUP(wd, Widget_Data, parent, e, obj, NULL); - + ELM_SET_WIDTYPE(widtype, "slider"); elm_widget_type_set(obj, "slider"); elm_widget_sub_object_add(parent, obj); @@ -525,7 +525,7 @@ elm_slider_add(Evas_Object *parent) edje_object_signal_callback_add(wd->slider, "drag,stop", "*", _drag_stop, obj); edje_object_signal_callback_add(wd->slider, "drag,step", "*", _drag_step, obj); edje_object_signal_callback_add(wd->slider, "drag,page", "*", _drag_stop, obj); -// edje_object_signal_callback_add(wd->slider, "drag,set", "*", _drag_stop, obj); + // edje_object_signal_callback_add(wd->slider, "drag,set", "*", _drag_stop, obj); edje_object_part_drag_value_set(wd->slider, "elm.dragable.slider", 0.0, 0.0); wd->spacer = evas_object_rectangle_add(e); @@ -562,13 +562,13 @@ elm_slider_label_set(Evas_Object *obj, const char *label) eina_stringshare_replace(&wd->label, label); if (label) { - edje_object_signal_emit(wd->slider, "elm,state,text,visible", "elm"); - edje_object_message_signal_process(wd->slider); + edje_object_signal_emit(wd->slider, "elm,state,text,visible", "elm"); + edje_object_message_signal_process(wd->slider); } else { - edje_object_signal_emit(wd->slider, "elm,state,text,hidden", "elm"); - edje_object_message_signal_process(wd->slider); + edje_object_signal_emit(wd->slider, "elm,state,text,hidden", "elm"); + edje_object_message_signal_process(wd->slider); } edje_object_part_text_set(wd->slider, "elm.text", label); _sizing_eval(obj); @@ -617,12 +617,12 @@ elm_slider_icon_set(Evas_Object *obj, Evas_Object *icon) wd->icon = icon; if (icon) { - elm_widget_sub_object_add(obj, icon); - evas_object_event_callback_add(icon, EVAS_CALLBACK_CHANGED_SIZE_HINTS, - _changed_size_hints, obj); - edje_object_part_swallow(wd->slider, "elm.swallow.icon", icon); - edje_object_signal_emit(wd->slider, "elm,state,icon,visible", "elm"); - edje_object_message_signal_process(wd->slider); + elm_widget_sub_object_add(obj, icon); + evas_object_event_callback_add(icon, EVAS_CALLBACK_CHANGED_SIZE_HINTS, + _changed_size_hints, obj); + edje_object_part_swallow(wd->slider, "elm.swallow.icon", icon); + edje_object_signal_emit(wd->slider, "elm,state,icon,visible", "elm"); + edje_object_message_signal_process(wd->slider); } _sizing_eval(obj); } @@ -648,12 +648,12 @@ elm_slider_icon_unset(Evas_Object *obj) if (!wd) return NULL; if (wd->icon) { - elm_widget_sub_object_del(obj, wd->icon); - ret = wd->icon; - edje_object_part_unswallow(wd->slider, wd->icon); - edje_object_signal_emit(wd->slider, "elm,state,icon,hidden", "elm"); - wd->icon = NULL; - _sizing_eval(obj); + elm_widget_sub_object_del(obj, wd->icon); + ret = wd->icon; + edje_object_part_unswallow(wd->slider, wd->icon); + edje_object_signal_emit(wd->slider, "elm,state,icon,hidden", "elm"); + wd->icon = NULL; + _sizing_eval(obj); } return ret; } @@ -702,9 +702,9 @@ elm_slider_span_size_set(Evas_Object *obj, Evas_Coord size) else evas_object_size_hint_min_set(wd->spacer, 1, (double)wd->size * elm_widget_scale_get(obj) * _elm_config->scale); if (wd->indicator_show) - edje_object_signal_emit(wd->slider, "elm,state,val,show", "elm"); + edje_object_signal_emit(wd->slider, "elm,state,val,show", "elm"); else - edje_object_signal_emit(wd->slider, "elm,state,val,hide", "elm"); + edje_object_signal_emit(wd->slider, "elm,state,val,hide", "elm"); edje_object_part_swallow(wd->slider, "elm.swallow.bar", wd->spacer); _sizing_eval(obj); } @@ -753,13 +753,13 @@ elm_slider_unit_format_set(Evas_Object *obj, const char *units) eina_stringshare_replace(&wd->units, units); if (units) { - edje_object_signal_emit(wd->slider, "elm,state,units,visible", "elm"); - edje_object_message_signal_process(wd->slider); + edje_object_signal_emit(wd->slider, "elm,state,units,visible", "elm"); + edje_object_message_signal_process(wd->slider); } else { - edje_object_signal_emit(wd->slider, "elm,state,units,hidden", "elm"); - edje_object_message_signal_process(wd->slider); + edje_object_signal_emit(wd->slider, "elm,state,units,hidden", "elm"); + edje_object_message_signal_process(wd->slider); } _units_set(obj); _sizing_eval(obj); @@ -1053,12 +1053,12 @@ elm_slider_end_set(Evas_Object *obj, Evas_Object *end) wd->end = end; if (end) { - elm_widget_sub_object_add(obj, end); - evas_object_event_callback_add(end, EVAS_CALLBACK_CHANGED_SIZE_HINTS, - _changed_size_hints, obj); - edje_object_part_swallow(wd->slider, "elm.swallow.end", end); - edje_object_signal_emit(wd->slider, "elm,state,end,visible", "elm"); - edje_object_message_signal_process(wd->slider); + elm_widget_sub_object_add(obj, end); + evas_object_event_callback_add(end, EVAS_CALLBACK_CHANGED_SIZE_HINTS, + _changed_size_hints, obj); + edje_object_part_swallow(wd->slider, "elm.swallow.end", end); + edje_object_signal_emit(wd->slider, "elm,state,end,visible", "elm"); + edje_object_message_signal_process(wd->slider); } _sizing_eval(obj); } @@ -1084,12 +1084,12 @@ elm_slider_end_unset(Evas_Object *obj) if (!wd) return NULL; if (wd->end) { - elm_widget_sub_object_del(obj, wd->end); - ret = wd->end; - edje_object_part_unswallow(wd->slider, wd->end); - edje_object_signal_emit(wd->slider, "elm,state,end,hidden", "elm"); - wd->end = NULL; - _sizing_eval(obj); + elm_widget_sub_object_del(obj, wd->end); + ret = wd->end; + edje_object_part_unswallow(wd->slider, wd->end); + edje_object_signal_emit(wd->slider, "elm,state,end,hidden", "elm"); + wd->end = NULL; + _sizing_eval(obj); } return ret; } @@ -1130,12 +1130,12 @@ elm_slider_indicator_show_set(Evas_Object *obj, Eina_Bool show) ELM_CHECK_WIDTYPE(obj, widtype); Widget_Data *wd = elm_widget_data_get(obj); if (show) { - wd->indicator_show = EINA_TRUE; - edje_object_signal_emit(wd->slider, "elm,state,val,show", "elm"); + wd->indicator_show = EINA_TRUE; + edje_object_signal_emit(wd->slider, "elm,state,val,show", "elm"); } else { - wd->indicator_show = EINA_FALSE; - edje_object_signal_emit(wd->slider, "elm,state,val,hide", "elm"); + wd->indicator_show = EINA_FALSE; + edje_object_signal_emit(wd->slider, "elm,state,val,hide", "elm"); } } diff --git a/src/lib/elm_slideshow.c b/src/lib/elm_slideshow.c index 8d32121..779e032 100644 --- a/src/lib/elm_slideshow.c +++ b/src/lib/elm_slideshow.c @@ -45,8 +45,8 @@ struct _Widget_Data Eina_Bool loop:1; struct { - const char *current; - Eina_List *list; //list of const char * + const char *current; + Eina_List *list; //list of const char * } layout; }; @@ -112,7 +112,7 @@ _del_hook(Evas_Object *obj) elm_widget_stringlist_free(wd->transitions); if (wd->timer) ecore_timer_del(wd->timer); EINA_LIST_FREE(wd->layout.list, layout) - eina_stringshare_del(layout); + eina_stringshare_del(layout); free(wd); } @@ -123,13 +123,13 @@ _on_focus_hook(void *data __UNUSED__, Evas_Object *obj) if (!wd) return; if (elm_widget_focus_get(obj)) { - edje_object_signal_emit(wd->slideshow, "elm,action,focus", "elm"); - evas_object_focus_set(wd->slideshow, EINA_TRUE); + edje_object_signal_emit(wd->slideshow, "elm,action,focus", "elm"); + evas_object_focus_set(wd->slideshow, EINA_TRUE); } else { - edje_object_signal_emit(wd->slideshow, "elm,action,unfocus", "elm"); - evas_object_focus_set(wd->slideshow, EINA_FALSE); + edje_object_signal_emit(wd->slideshow, "elm,action,unfocus", "elm"); + evas_object_focus_set(wd->slideshow, EINA_FALSE); } } @@ -168,20 +168,20 @@ _sizing_eval(Evas_Object *obj) static Elm_Slideshow_Item* _item_prev_get(Elm_Slideshow_Item* item) { - Widget_Data *wd = elm_widget_data_get(item->base.widget); - Elm_Slideshow_Item* prev = eina_list_data_get(eina_list_prev(item->l)); - if((!prev) && (wd->loop)) - prev = eina_list_data_get(eina_list_last(item->l)); - return prev; + Widget_Data *wd = elm_widget_data_get(item->base.widget); + Elm_Slideshow_Item* prev = eina_list_data_get(eina_list_prev(item->l)); + if((!prev) && (wd->loop)) + prev = eina_list_data_get(eina_list_last(item->l)); + return prev; } static Elm_Slideshow_Item* _item_next_get(Elm_Slideshow_Item* item) { - Widget_Data *wd = elm_widget_data_get(item->base.widget); - Elm_Slideshow_Item* next = eina_list_data_get(eina_list_next(item->l)); - if((!next) && (wd->loop)) - next = eina_list_data_get(wd->items); - return next; + Widget_Data *wd = elm_widget_data_get(item->base.widget); + Elm_Slideshow_Item* next = eina_list_data_get(eina_list_next(item->l)); + if((!next) && (wd->loop)) + next = eina_list_data_get(wd->items); + return next; } @@ -256,28 +256,28 @@ _item_realize(Elm_Slideshow_Item *item) static void _end(void *data, Evas_Object *obj __UNUSED__, const char *emission __UNUSED__, const char *source __UNUSED__) { - Elm_Slideshow_Item *item; - Widget_Data *wd = elm_widget_data_get(data); - if (!wd) return; + Elm_Slideshow_Item *item; + Widget_Data *wd = elm_widget_data_get(data); + if (!wd) return; - item = wd->previous; - if(item) - { - edje_object_part_unswallow(NULL, item->base.view); - evas_object_hide(item->base.view); - wd->previous = NULL; - } + item = wd->previous; + if(item) + { + edje_object_part_unswallow(NULL, item->base.view); + evas_object_hide(item->base.view); + wd->previous = NULL; + } - item = wd->current; - if ((!item) || (!item->base.view)) return; + item = wd->current; + if ((!item) || (!item->base.view)) return; - _item_realize(item); - edje_object_part_unswallow(NULL, item->base.view); - evas_object_show(item->base.view); + _item_realize(item); + edje_object_part_unswallow(NULL, item->base.view); + evas_object_show(item->base.view); - edje_object_signal_emit(wd->slideshow, "anim,end", "slideshow"); - edje_object_part_swallow(wd->slideshow, "elm.swallow.1", item->base.view); + edje_object_signal_emit(wd->slideshow, "anim,end", "slideshow"); + edje_object_part_swallow(wd->slideshow, "elm.swallow.1", item->base.view); } @@ -310,7 +310,7 @@ elm_slideshow_add(Evas_Object *parent) Widget_Data *wd; ELM_WIDGET_STANDARD_SETUP(wd, Widget_Data, parent, e, obj, NULL); - + ELM_SET_WIDTYPE(widtype, "slideshow"); elm_widget_type_set(obj, "slideshow"); elm_widget_sub_object_add(parent, obj); @@ -336,7 +336,7 @@ elm_slideshow_add(Evas_Object *parent) wd->layout.list = elm_widget_stringlist_get(edje_object_data_get(wd->slideshow, "layouts")); if (eina_list_count(wd->layout.list) > 0) - wd->layout.current = eina_list_data_get(wd->layout.list); + wd->layout.current = eina_list_data_get(wd->layout.list); edje_object_signal_callback_add(wd->slideshow, "end", "slideshow", _end, obj); @@ -404,7 +404,7 @@ elm_slideshow_show(Elm_Slideshow_Item *item) if (wd->timer) ecore_timer_del(wd->timer); if (wd->timeout > 0.0) - wd->timer = ecore_timer_add(wd->timeout, _timer_cb, item->base.widget); + wd->timer = ecore_timer_add(wd->timeout, _timer_cb, item->base.widget); _item_realize(next); edje_object_part_swallow(wd->slideshow, "elm.swallow.2", next->base.view); evas_object_show(next->base.view); @@ -431,9 +431,9 @@ elm_slideshow_next(Evas_Object *obj) Widget_Data *wd = elm_widget_data_get(obj); if (!wd) return; - + if (wd->current) - next = _item_next_get(wd->current); + next = _item_next_get(wd->current); if ((!next) || (next == wd->current)) return; @@ -441,7 +441,7 @@ elm_slideshow_next(Evas_Object *obj) if (wd->timer) ecore_timer_del(wd->timer); if (wd->timeout > 0.0) - wd->timer = ecore_timer_add(wd->timeout, _timer_cb, obj); + wd->timer = ecore_timer_add(wd->timeout, _timer_cb, obj); _item_realize(next); @@ -482,7 +482,7 @@ elm_slideshow_previous(Evas_Object *obj) if (wd->timer) ecore_timer_del(wd->timer); if (wd->timeout > 0.0) - wd->timer = ecore_timer_add(wd->timeout, _timer_cb, obj); + wd->timer = ecore_timer_add(wd->timeout, _timer_cb, obj); _item_realize(prev); @@ -686,24 +686,24 @@ elm_slideshow_loop_get(const Evas_Object *obj) EAPI void elm_slideshow_clear(Evas_Object *obj) { - Elm_Slideshow_Item *item; - ELM_CHECK_WIDTYPE(obj, widtype); - Widget_Data *wd = elm_widget_data_get(obj); - if (!wd) return; - wd->previous = NULL; - wd->current = NULL; - EINA_LIST_FREE(wd->items_built, item) - { - if (item->itc->func.del) - item->itc->func.del((void*)item->base.data, item->base.view); - evas_object_del(item->base.view); - item->base.view = NULL; - } - - EINA_LIST_FREE(wd->items, item) - { - elm_widget_item_del(item); - } + Elm_Slideshow_Item *item; + ELM_CHECK_WIDTYPE(obj, widtype); + Widget_Data *wd = elm_widget_data_get(obj); + if (!wd) return; + wd->previous = NULL; + wd->current = NULL; + EINA_LIST_FREE(wd->items_built, item) + { + if (item->itc->func.del) + item->itc->func.del((void*)item->base.data, item->base.view); + evas_object_del(item->base.view); + item->base.view = NULL; + } + + EINA_LIST_FREE(wd->items, item) + { + elm_widget_item_del(item); + } } @@ -718,28 +718,28 @@ EAPI void elm_slideshow_item_del(Elm_Slideshow_Item *item) { ELM_WIDGET_ITEM_WIDTYPE_CHECK_OR_RETURN(item); - Widget_Data *wd = elm_widget_data_get(item->base.widget); - if (!wd) return; - if (wd->previous == item) wd->previous = NULL; - if (wd->current == item) - { - Eina_List *l = eina_list_data_find_list(wd->items, item); - Eina_List *l2 = eina_list_next(l); - wd->current = NULL; - if (!l2) - l2 = eina_list_nth_list(wd->items, eina_list_count(wd->items) - 1); - if (l2) - elm_slideshow_show(eina_list_data_get(l2)); - } - - wd->items = eina_list_remove_list(wd->items, item->l); - wd->items_built = eina_list_remove_list(wd->items_built, item->l_built); - - if ((item->base.view) && (item->itc->func.del)) - item->itc->func.del((void*)item->base.data, item->base.view); - if (item->base.view) - evas_object_del(item->base.view); - free(item); + Widget_Data *wd = elm_widget_data_get(item->base.widget); + if (!wd) return; + if (wd->previous == item) wd->previous = NULL; + if (wd->current == item) + { + Eina_List *l = eina_list_data_find_list(wd->items, item); + Eina_List *l2 = eina_list_next(l); + wd->current = NULL; + if (!l2) + l2 = eina_list_nth_list(wd->items, eina_list_count(wd->items) - 1); + if (l2) + elm_slideshow_show(eina_list_data_get(l2)); + } + + wd->items = eina_list_remove_list(wd->items, item->l); + wd->items_built = eina_list_remove_list(wd->items_built, item->l_built); + + if ((item->base.view) && (item->itc->func.del)) + item->itc->func.del((void*)item->base.data, item->base.view); + if (item->base.view) + evas_object_del(item->base.view); + free(item); } /** diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c index d7e8def..57da674 100644 --- a/src/lib/elm_spinner.c +++ b/src/lib/elm_spinner.c @@ -150,13 +150,13 @@ _on_focus_hook(void *data __UNUSED__, Evas_Object *obj) if (!wd) return; if (elm_widget_focus_get(obj)) { - edje_object_signal_emit(wd->spinner, "elm,action,focus", "elm"); - evas_object_focus_set(wd->spinner, EINA_TRUE); + edje_object_signal_emit(wd->spinner, "elm,action,focus", "elm"); + evas_object_focus_set(wd->spinner, EINA_TRUE); } else { - edje_object_signal_emit(wd->spinner, "elm,action,unfocus", "elm"); - evas_object_focus_set(wd->spinner, EINA_FALSE); + edje_object_signal_emit(wd->spinner, "elm,action,unfocus", "elm"); + evas_object_focus_set(wd->spinner, EINA_FALSE); } } @@ -183,31 +183,31 @@ _entry_show(Widget_Data *wd) const char *start = strchr(wd->label, '%'); while (start) { - /* handle %% */ - if (start[1] != '%') - break; - else - start = strchr(start + 2, '%'); + /* handle %% */ + if (start[1] != '%') + break; + else + start = strchr(start + 2, '%'); } if (start) { - const char *itr, *end = NULL; - for (itr = start + 1; *itr != '\0'; itr++) - { - /* allowing '%d' is quite dangerous, remove it? */ - if ((*itr == 'd') || (*itr == 'f')) - { - end = itr + 1; - break; - } - } - - if ((end) && ((size_t)(end - start + 1) < sizeof(fmt))) - { - memcpy(fmt, start, end - start); - fmt[end - start] = '\0'; - } + const char *itr, *end = NULL; + for (itr = start + 1; *itr != '\0'; itr++) + { + /* allowing '%d' is quite dangerous, remove it? */ + if ((*itr == 'd') || (*itr == 'f')) + { + end = itr + 1; + break; + } + } + + if ((end) && ((size_t)(end - start + 1) < sizeof(fmt))) + { + memcpy(fmt, start, end - start); + fmt[end - start] = '\0'; + } } } snprintf(buf, sizeof(buf), fmt, wd->val); @@ -240,7 +240,7 @@ apply: if (wd->entry_visible) _entry_show(wd); } -static Eina_Bool +static Eina_Bool _value_set(Evas_Object *obj, double delta) { Widget_Data *wd = elm_widget_data_get(obj); @@ -286,12 +286,12 @@ _sizing_eval(Evas_Object *obj) } /* -static void -_changed_size_hints(void *data, Evas *e, Evas_Object *obj, void *event_info) -{ + static void + _changed_size_hints(void *data, Evas *e, Evas_Object *obj, void *event_info) + { _sizing_eval(data); -} -*/ + } + */ static void _val_set(Evas_Object *obj) @@ -303,7 +303,7 @@ _val_set(Evas_Object *obj) pos = ((wd->val - wd->val_min) / (wd->val_max - wd->val_min)); if (pos < 0.0) pos = 0.0; else if (pos > 1.0) pos = 1.0; - edje_object_part_drag_value_set(wd->spinner, "elm.dragable.slider", + edje_object_part_drag_value_set(wd->spinner, "elm.dragable.slider", pos, pos); } @@ -316,7 +316,7 @@ _drag(void *data, Evas_Object *_obj __UNUSED__, const char *emission __UNUSED__, if (!wd) return; if (wd->entry_visible) return; edje_object_part_drag_value_get(wd->spinner, "elm.dragable.slider", - &pos, NULL); + &pos, NULL); offset = wd->step; delta = (pos - wd->drag_start_pos) * offset; /* If we are on rtl mode, change the delta to be negative on such changes */ @@ -334,7 +334,7 @@ _drag_start(void *data, Evas_Object *obj __UNUSED__, const char *emission __UNUS double pos; if (!wd) return; edje_object_part_drag_value_get(wd->spinner, "elm.dragable.slider", - &pos, NULL); + &pos, NULL); wd->drag_start_pos = pos; } @@ -372,7 +372,7 @@ _apply_entry_value(Evas_Object *obj) const char *str; char *end; double val; - + if (!wd) return; _hide_entry(obj); str = elm_entry_entry_get(wd->ent); @@ -398,10 +398,10 @@ _toggle_entry(void *data, Evas_Object *obj __UNUSED__, const char *emission __UN else { wd->orig_val = wd->val; - edje_object_signal_emit(wd->spinner, "elm,state,active", "elm"); + edje_object_signal_emit(wd->spinner, "elm,state,active", "elm"); _entry_show(wd); elm_entry_select_all(wd->ent); - elm_widget_focus_set(wd->ent, 1); + elm_widget_focus_set(wd->ent, 1); wd->entry_visible = 1; } } @@ -551,13 +551,13 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty || !strcmp(ev->keyname, "Up") || !strcmp(ev->keyname, "KP_Up")) _val_inc_stop(obj); else if (!strcmp(ev->keyname, "Left") || !strcmp(ev->keyname, "KP_Left") - || !strcmp(ev->keyname, "Down") || !strcmp(ev->keyname, "KP_Down")) + || !strcmp(ev->keyname, "Down") || !strcmp(ev->keyname, "KP_Down")) _val_dec_stop(obj); else return EINA_FALSE; ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD; return EINA_TRUE; } - return EINA_FALSE; + return EINA_FALSE; } /** @@ -576,7 +576,7 @@ elm_spinner_add(Evas_Object *parent) Widget_Data *wd; ELM_WIDGET_STANDARD_SETUP(wd, Widget_Data, parent, e, obj, NULL); - + ELM_SET_WIDTYPE(widtype, "spinner"); elm_widget_type_set(obj, "spinner"); elm_widget_sub_object_add(parent, obj); @@ -605,31 +605,31 @@ elm_spinner_add(Evas_Object *parent) _elm_theme_object_set(obj, wd->spinner, "spinner", "base", "default"); elm_widget_resize_object_set(obj, wd->spinner); edje_object_signal_callback_add(wd->spinner, "drag", "*", _drag, obj); - edje_object_signal_callback_add(wd->spinner, "drag,start", "*", + edje_object_signal_callback_add(wd->spinner, "drag,start", "*", _drag_start, obj); - edje_object_signal_callback_add(wd->spinner, "drag,stop", "*", + edje_object_signal_callback_add(wd->spinner, "drag,stop", "*", _drag_stop, obj); - edje_object_signal_callback_add(wd->spinner, "drag,step", "*", + edje_object_signal_callback_add(wd->spinner, "drag,step", "*", _drag_stop, obj); - edje_object_signal_callback_add(wd->spinner, "drag,page", "*", + edje_object_signal_callback_add(wd->spinner, "drag,page", "*", _drag_stop, obj); - edje_object_signal_callback_add(wd->spinner, "elm,action,increment,start", + edje_object_signal_callback_add(wd->spinner, "elm,action,increment,start", "*", _button_inc_start, obj); - edje_object_signal_callback_add(wd->spinner, "elm,action,increment,stop", + edje_object_signal_callback_add(wd->spinner, "elm,action,increment,stop", "*", _button_inc_stop, obj); - edje_object_signal_callback_add(wd->spinner, "elm,action,decrement,start", + edje_object_signal_callback_add(wd->spinner, "elm,action,decrement,start", "*", _button_dec_start, obj); - edje_object_signal_callback_add(wd->spinner, "elm,action,decrement,stop", + edje_object_signal_callback_add(wd->spinner, "elm,action,decrement,stop", "*", _button_dec_stop, obj); - edje_object_part_drag_value_set(wd->spinner, "elm.dragable.slider", + edje_object_part_drag_value_set(wd->spinner, "elm.dragable.slider", 0.0, 0.0); wd->ent = elm_entry_add(obj); elm_entry_single_line_set(wd->ent, 1); evas_object_smart_callback_add(wd->ent, "activated", _entry_activated, obj); edje_object_part_swallow(wd->spinner, "elm.swallow.entry", wd->ent); - edje_object_signal_callback_add(wd->spinner, "elm,action,entry,toggle", + edje_object_signal_callback_add(wd->spinner, "elm,action,entry,toggle", "*", _toggle_entry, obj); _mirrored_set(obj, elm_widget_mirrored_get(obj)); @@ -847,18 +847,18 @@ elm_spinner_wrap_get(const Evas_Object *obj) EAPI void elm_spinner_special_value_add(Evas_Object *obj, double value, const char *label) { - Elm_Spinner_Special_Value *sv; - ELM_CHECK_WIDTYPE(obj, widtype); - Widget_Data *wd = elm_widget_data_get(obj); - if (!wd) return; + Elm_Spinner_Special_Value *sv; + ELM_CHECK_WIDTYPE(obj, widtype); + Widget_Data *wd = elm_widget_data_get(obj); + if (!wd) return; - sv = calloc(1, sizeof(*sv)); - if (!sv) return; - sv->value = value; - sv->label = eina_stringshare_add(label); + sv = calloc(1, sizeof(*sv)); + if (!sv) return; + sv->value = value; + sv->label = eina_stringshare_add(label); - wd->special_values = eina_list_append(wd->special_values, sv); - _write_label(obj); + wd->special_values = eina_list_append(wd->special_values, sv); + _write_label(obj); } /** diff --git a/src/lib/elm_store.c b/src/lib/elm_store.c index dba552b..5f401b6 100644 --- a/src/lib/elm_store.c +++ b/src/lib/elm_store.c @@ -3,7 +3,7 @@ #include "elm_priv.h" #ifndef EFL_HAVE_THREADS -# error "No thread support. Required." +# error "No thread support. Required." #endif #ifdef EFL_HAVE_POSIX_THREADS @@ -78,15 +78,15 @@ struct _Elm_Store_Item struct _Elm_Store_Filesystem { - Elm_Store base; - EINA_MAGIC; - const char *dir; + Elm_Store base; + EINA_MAGIC; + const char *dir; }; struct _Elm_Store_Item_Filesystem { - Elm_Store_Item base; - const char *path; + Elm_Store_Item base; + const char *path; }; static Elm_Genlist_Item_Class _store_item_class; @@ -94,68 +94,68 @@ static Elm_Genlist_Item_Class _store_item_class; static void _store_cache_trim(Elm_Store *st) { - while ((st->realized ) && - (((int)eina_list_count(st->realized) - st->realized_count) + while ((st->realized ) && + (((int)eina_list_count(st->realized) - st->realized_count) > st->cache_max)) - { - Elm_Store_Item *sti = st->realized->data; - if (sti->realized) - { - st->realized = eina_list_remove_list(st->realized, st->realized); - sti->realized = EINA_FALSE; - } - LKL(sti->lock); - if (!sti->fetched) - { - LKU(sti->lock); - if (sti->fetch_th) - { - ecore_thread_cancel(sti->fetch_th); - sti->fetch_th = NULL; - } - LKL(sti->lock); - } - sti->fetched = EINA_FALSE; - LKU(sti->lock); - if (st->cb.unfetch.func) - st->cb.unfetch.func(st->cb.unfetch.data, sti); - LKL(sti->lock); - sti->data = NULL; - LKU(sti->lock); - } -} - -static void + { + Elm_Store_Item *sti = st->realized->data; + if (sti->realized) + { + st->realized = eina_list_remove_list(st->realized, st->realized); + sti->realized = EINA_FALSE; + } + LKL(sti->lock); + if (!sti->fetched) + { + LKU(sti->lock); + if (sti->fetch_th) + { + ecore_thread_cancel(sti->fetch_th); + sti->fetch_th = NULL; + } + LKL(sti->lock); + } + sti->fetched = EINA_FALSE; + LKU(sti->lock); + if (st->cb.unfetch.func) + st->cb.unfetch.func(st->cb.unfetch.data, sti); + LKL(sti->lock); + sti->data = NULL; + LKU(sti->lock); + } +} + +static void _store_genlist_del(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) { - Elm_Store *st = data; - st->genlist = NULL; - if (st->list_th) - { - ecore_thread_cancel(st->list_th); - st->list_th = NULL; - } - eina_list_free(st->realized); - while (st->items) - { - Elm_Store_Item *sti = (Elm_Store_Item *)st->items; - if (sti->eval_job) ecore_job_del(sti->eval_job); - if (sti->fetch_th) - { - ecore_thread_cancel(sti->fetch_th); - sti->fetch_th = NULL; - } - if (sti->store->item.free) sti->store->item.free(sti); - if (sti->data) - { - if (st->cb.unfetch.func) - st->cb.unfetch.func(st->cb.unfetch.data, sti); - sti->data = NULL; - } - LKD(sti->lock); - free(sti); - } - // FIXME: kill threads and more + Elm_Store *st = data; + st->genlist = NULL; + if (st->list_th) + { + ecore_thread_cancel(st->list_th); + st->list_th = NULL; + } + eina_list_free(st->realized); + while (st->items) + { + Elm_Store_Item *sti = (Elm_Store_Item *)st->items; + if (sti->eval_job) ecore_job_del(sti->eval_job); + if (sti->fetch_th) + { + ecore_thread_cancel(sti->fetch_th); + sti->fetch_th = NULL; + } + if (sti->store->item.free) sti->store->item.free(sti); + if (sti->data) + { + if (st->cb.unfetch.func) + st->cb.unfetch.func(st->cb.unfetch.data, sti); + sti->data = NULL; + } + LKD(sti->lock); + free(sti); + } + // FIXME: kill threads and more } ////// **** WARNING *********************************************************** @@ -165,22 +165,22 @@ _store_genlist_del(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, static void _store_filesystem_fetch_do(void *data, Ecore_Thread *th __UNUSED__) { - Elm_Store_Item *sti = data; - LKL(sti->lock); - if (sti->data) - { - LKU(sti->lock); - return; - } - if (!sti->fetched) - { - LKU(sti->lock); - if (sti->store->cb.fetch.func) - sti->store->cb.fetch.func(sti->store->cb.fetch.data, sti); - LKL(sti->lock); - sti->fetched = EINA_TRUE; - } - LKU(sti->lock); + Elm_Store_Item *sti = data; + LKL(sti->lock); + if (sti->data) + { + LKU(sti->lock); + return; + } + if (!sti->fetched) + { + LKU(sti->lock); + if (sti->store->cb.fetch.func) + sti->store->cb.fetch.func(sti->store->cb.fetch.data, sti); + LKL(sti->lock); + sti->fetched = EINA_TRUE; + } + LKU(sti->lock); } // ************************************************************************ //// * End of separate thread function. * @@ -189,184 +189,184 @@ _store_filesystem_fetch_do(void *data, Ecore_Thread *th __UNUSED__) static void _store_filesystem_fetch_end(void *data, Ecore_Thread *th) { - Elm_Store_Item *sti = data; - LKL(sti->lock); - if (sti->data) elm_genlist_item_update(sti->item); - LKU(sti->lock); - if (th == sti->fetch_th) sti->fetch_th = NULL; + Elm_Store_Item *sti = data; + LKL(sti->lock); + if (sti->data) elm_genlist_item_update(sti->item); + LKU(sti->lock); + if (th == sti->fetch_th) sti->fetch_th = NULL; } /* TODO: refactor lock part into core? this does not depend on filesystm part */ static void _store_filesystem_fetch_cancel(void *data, Ecore_Thread *th) { - Elm_Store_Item *sti = data; - LKL(sti->lock); - if (th == sti->fetch_th) sti->fetch_th = NULL; - if (sti->data) elm_genlist_item_update(sti->item); - LKU(sti->lock); + Elm_Store_Item *sti = data; + LKL(sti->lock); + if (th == sti->fetch_th) sti->fetch_th = NULL; + if (sti->data) elm_genlist_item_update(sti->item); + LKU(sti->lock); } static void _store_item_eval(void *data) { - Elm_Store_Item *sti = data; - sti->eval_job = NULL; - if (sti->live == sti->was_live) return; - sti->was_live = sti->live; - if (sti->live) - { - _store_cache_trim(sti->store); - if (sti->realized) - sti->store->realized = eina_list_remove(sti->store->realized, sti); - sti->store->realized = eina_list_append(sti->store->realized, sti); - sti->realized = EINA_TRUE; - if ((sti->store->fetch_thread) && (!sti->fetch_th)) - sti->fetch_th = ecore_thread_run(_store_filesystem_fetch_do, - _store_filesystem_fetch_end, - _store_filesystem_fetch_cancel, - sti); - else if ((!sti->store->fetch_thread)) - { - _store_filesystem_fetch_do(sti, NULL); - _store_filesystem_fetch_end(sti, NULL); - } - } - else - { - if (sti->fetch_th) - { - ecore_thread_cancel(sti->fetch_th); - sti->fetch_th = NULL; - } - _store_cache_trim(sti->store); - } + Elm_Store_Item *sti = data; + sti->eval_job = NULL; + if (sti->live == sti->was_live) return; + sti->was_live = sti->live; + if (sti->live) + { + _store_cache_trim(sti->store); + if (sti->realized) + sti->store->realized = eina_list_remove(sti->store->realized, sti); + sti->store->realized = eina_list_append(sti->store->realized, sti); + sti->realized = EINA_TRUE; + if ((sti->store->fetch_thread) && (!sti->fetch_th)) + sti->fetch_th = ecore_thread_run(_store_filesystem_fetch_do, + _store_filesystem_fetch_end, + _store_filesystem_fetch_cancel, + sti); + else if ((!sti->store->fetch_thread)) + { + _store_filesystem_fetch_do(sti, NULL); + _store_filesystem_fetch_end(sti, NULL); + } + } + else + { + if (sti->fetch_th) + { + ecore_thread_cancel(sti->fetch_th); + sti->fetch_th = NULL; + } + _store_cache_trim(sti->store); + } } static void _store_genlist_item_realized(void *data, Evas_Object *obj __UNUSED__, void *event_info) { - Elm_Store *st = data; - Elm_Genlist_Item *gli = event_info; - Elm_Store_Item *sti = elm_genlist_item_data_get(gli); - if (!sti) return; - st->realized_count++; - sti->live = EINA_TRUE; - if (sti->eval_job) ecore_job_del(sti->eval_job); - sti->eval_job = ecore_job_add(_store_item_eval, sti); + Elm_Store *st = data; + Elm_Genlist_Item *gli = event_info; + Elm_Store_Item *sti = elm_genlist_item_data_get(gli); + if (!sti) return; + st->realized_count++; + sti->live = EINA_TRUE; + if (sti->eval_job) ecore_job_del(sti->eval_job); + sti->eval_job = ecore_job_add(_store_item_eval, sti); } static void _store_genlist_item_unrealized(void *data, Evas_Object *obj __UNUSED__, void *event_info) { - Elm_Store *st = data; - Elm_Genlist_Item *gli = event_info; - Elm_Store_Item *sti = elm_genlist_item_data_get(gli); - if (!sti) return; - st->realized_count--; - sti->live = EINA_FALSE; - if (sti->eval_job) ecore_job_del(sti->eval_job); - sti->eval_job = ecore_job_add(_store_item_eval, sti); + Elm_Store *st = data; + Elm_Genlist_Item *gli = event_info; + Elm_Store_Item *sti = elm_genlist_item_data_get(gli); + if (!sti) return; + st->realized_count--; + sti->live = EINA_FALSE; + if (sti->eval_job) ecore_job_del(sti->eval_job); + sti->eval_job = ecore_job_add(_store_item_eval, sti); } static const Elm_Store_Item_Mapping * _store_item_mapping_find(Elm_Store_Item *sti, const char *part) { - const Elm_Store_Item_Mapping *m; - - for (m = sti->mapping; m; m ++) - { - if (m->type == ELM_STORE_ITEM_MAPPING_NONE) break; - if (!strcmp(part, m->part)) return m; - } - return NULL; + const Elm_Store_Item_Mapping *m; + + for (m = sti->mapping; m; m ++) + { + if (m->type == ELM_STORE_ITEM_MAPPING_NONE) break; + if (!strcmp(part, m->part)) return m; + } + return NULL; } static char * _store_item_label_get(void *data, Evas_Object *obj __UNUSED__, const char *part) { - Elm_Store_Item *sti = data; - const char *s = ""; - LKL(sti->lock); - if (sti->data) - { - const Elm_Store_Item_Mapping *m = _store_item_mapping_find(sti, part); - if (m) - { - switch (m->type) - { - case ELM_STORE_ITEM_MAPPING_LABEL: - s = *(char **)(((unsigned char *)sti->data) + m->offset); - break; - case ELM_STORE_ITEM_MAPPING_CUSTOM: - if (m->details.custom.func) - s = m->details.custom.func(sti->data, sti, part); - break; - default: - break; - } - } - } - LKU(sti->lock); - return strdup(s); + Elm_Store_Item *sti = data; + const char *s = ""; + LKL(sti->lock); + if (sti->data) + { + const Elm_Store_Item_Mapping *m = _store_item_mapping_find(sti, part); + if (m) + { + switch (m->type) + { + case ELM_STORE_ITEM_MAPPING_LABEL: + s = *(char **)(((unsigned char *)sti->data) + m->offset); + break; + case ELM_STORE_ITEM_MAPPING_CUSTOM: + if (m->details.custom.func) + s = m->details.custom.func(sti->data, sti, part); + break; + default: + break; + } + } + } + LKU(sti->lock); + return strdup(s); } static Evas_Object * _store_item_icon_get(void *data, Evas_Object *obj, const char *part) { - Elm_Store_Item *sti = data; - LKL(sti->lock); - if (sti->data) - { - const Elm_Store_Item_Mapping *m = _store_item_mapping_find(sti, part); - if (m) - { - Evas_Object *ic = NULL; - const char *s = NULL; - - switch (m->type) - { - case ELM_STORE_ITEM_MAPPING_ICON: - ic = elm_icon_add(obj); - s = *(char **)(((unsigned char *)sti->data) + m->offset); - elm_icon_order_lookup_set(ic, m->details.icon.lookup_order); - evas_object_size_hint_aspect_set(ic, - EVAS_ASPECT_CONTROL_VERTICAL, - m->details.icon.w, - m->details.icon.h); - elm_icon_smooth_set(ic, m->details.icon.smooth); - elm_icon_no_scale_set(ic, m->details.icon.no_scale); - elm_icon_scale_set(ic, - m->details.icon.scale_up, - m->details.icon.scale_down); - if (s) - { - if (m->details.icon.standard_name) - elm_icon_standard_set(ic, s); - else - elm_icon_file_set(ic, s, NULL); - } - break; - case ELM_STORE_ITEM_MAPPING_PHOTO: - ic = elm_icon_add(obj); - s = *(char **)(((unsigned char *)sti->data) + m->offset); - elm_photo_size_set(ic, m->details.photo.size); - if (s) - elm_photo_file_set(ic, s); - break; - case ELM_STORE_ITEM_MAPPING_CUSTOM: - if (m->details.custom.func) - ic = m->details.custom.func(sti->data, sti, part); - break; - default: - break; - } - LKU(sti->lock); - return ic; - } - } - LKU(sti->lock); - return NULL; + Elm_Store_Item *sti = data; + LKL(sti->lock); + if (sti->data) + { + const Elm_Store_Item_Mapping *m = _store_item_mapping_find(sti, part); + if (m) + { + Evas_Object *ic = NULL; + const char *s = NULL; + + switch (m->type) + { + case ELM_STORE_ITEM_MAPPING_ICON: + ic = elm_icon_add(obj); + s = *(char **)(((unsigned char *)sti->data) + m->offset); + elm_icon_order_lookup_set(ic, m->details.icon.lookup_order); + evas_object_size_hint_aspect_set(ic, + EVAS_ASPECT_CONTROL_VERTICAL, + m->details.icon.w, + m->details.icon.h); + elm_icon_smooth_set(ic, m->details.icon.smooth); + elm_icon_no_scale_set(ic, m->details.icon.no_scale); + elm_icon_scale_set(ic, + m->details.icon.scale_up, + m->details.icon.scale_down); + if (s) + { + if (m->details.icon.standard_name) + elm_icon_standard_set(ic, s); + else + elm_icon_file_set(ic, s, NULL); + } + break; + case ELM_STORE_ITEM_MAPPING_PHOTO: + ic = elm_icon_add(obj); + s = *(char **)(((unsigned char *)sti->data) + m->offset); + elm_photo_size_set(ic, m->details.photo.size); + if (s) + elm_photo_file_set(ic, s); + break; + case ELM_STORE_ITEM_MAPPING_CUSTOM: + if (m->details.custom.func) + ic = m->details.custom.func(sti->data, sti, part); + break; + default: + break; + } + LKU(sti->lock); + return ic; + } + } + LKU(sti->lock); + return NULL; } static void @@ -380,58 +380,58 @@ _store_item_del(void *data __UNUSED__, Evas_Object *obj __UNUSED__) static int _store_filesystem_sort_cb(void *d1, void *d2) { - Elm_Store_Item_Info *info1 = d1, *info2 = d2; - if ((!info1->sort_id) || (!info2->sort_id)) return 0; - return strcoll(info1->sort_id, info2->sort_id); + Elm_Store_Item_Info *info1 = d1, *info2 = d2; + if ((!info1->sort_id) || (!info2->sort_id)) return 0; + return strcoll(info1->sort_id, info2->sort_id); } static void _store_filesystem_list_do(void *data, Ecore_Thread *th __UNUSED__) { - Elm_Store_Filesystem *st = data; - Eina_Iterator *it; - const Eina_File_Direct_Info *finf; - Eina_List *sorted = NULL; - Elm_Store_Item_Info_Filesystem *info; - - // FIXME: need a way to abstract the open, list, feed items from list - // and maybe get initial sortable key vals etc. - it = eina_file_stat_ls(st->dir); - if (!it) return; - EINA_ITERATOR_FOREACH(it, finf) - { - Eina_Bool ok; - size_t pathsz = finf->path_length + 1; - - info = calloc(1, sizeof(Elm_Store_Item_Info_Filesystem) + pathsz); - if (!info) continue; - info->path = ((char *)info) + sizeof(Elm_Store_Item_Info_Filesystem); - memcpy(info->path, finf->path, pathsz); - ok = EINA_TRUE; - if (st->base.cb.list.func) - ok = st->base.cb.list.func(st->base.cb.list.data, &info->base); - if (ok) - { - if (!st->base.sorted) ecore_thread_feedback(th, info); - else sorted = eina_list_append(sorted, info); - } - else - { - if (info->base.sort_id) free(info->base.sort_id); - free(info); - } - if (ecore_thread_check(th)) break; - } - eina_iterator_free(it); - if (sorted) - { - sorted = eina_list_sort(sorted, 0, - EINA_COMPARE_CB(_store_filesystem_sort_cb)); - EINA_LIST_FREE(sorted, info) - { - if (!ecore_thread_check(th)) ecore_thread_feedback(th, info); - } - } + Elm_Store_Filesystem *st = data; + Eina_Iterator *it; + const Eina_File_Direct_Info *finf; + Eina_List *sorted = NULL; + Elm_Store_Item_Info_Filesystem *info; + + // FIXME: need a way to abstract the open, list, feed items from list + // and maybe get initial sortable key vals etc. + it = eina_file_stat_ls(st->dir); + if (!it) return; + EINA_ITERATOR_FOREACH(it, finf) + { + Eina_Bool ok; + size_t pathsz = finf->path_length + 1; + + info = calloc(1, sizeof(Elm_Store_Item_Info_Filesystem) + pathsz); + if (!info) continue; + info->path = ((char *)info) + sizeof(Elm_Store_Item_Info_Filesystem); + memcpy(info->path, finf->path, pathsz); + ok = EINA_TRUE; + if (st->base.cb.list.func) + ok = st->base.cb.list.func(st->base.cb.list.data, &info->base); + if (ok) + { + if (!st->base.sorted) ecore_thread_feedback(th, info); + else sorted = eina_list_append(sorted, info); + } + else + { + if (info->base.sort_id) free(info->base.sort_id); + free(info); + } + if (ecore_thread_check(th)) break; + } + eina_iterator_free(it); + if (sorted) + { + sorted = eina_list_sort(sorted, 0, + EINA_COMPARE_CB(_store_filesystem_sort_cb)); + EINA_LIST_FREE(sorted, info) + { + if (!ecore_thread_check(th)) ecore_thread_feedback(th, info); + } + } } // ************************************************************************ //// * End of separate thread function. * @@ -440,88 +440,88 @@ _store_filesystem_list_do(void *data, Ecore_Thread *th __UNUSED__) static void _store_filesystem_list_end(void *data, Ecore_Thread *th) { - Elm_Store *st = data; - if (th == st->list_th) st->list_th = NULL; + Elm_Store *st = data; + if (th == st->list_th) st->list_th = NULL; } static void _store_filesystem_list_cancel(void *data, Ecore_Thread *th) { - Elm_Store *st = data; - if (th == st->list_th) st->list_th = NULL; + Elm_Store *st = data; + if (th == st->list_th) st->list_th = NULL; } static void _store_filesystem_list_update(void *data, Ecore_Thread *th __UNUSED__, void *msg) { - Elm_Store *st = data; - Elm_Store_Item_Filesystem *sti; - Elm_Genlist_Item_Class *itc; - Elm_Store_Item_Info_Filesystem *info = msg; - - sti = calloc(1, sizeof(Elm_Store_Item_Filesystem)); - if (!sti) goto done; - LKI(sti->base.lock); - EINA_MAGIC_SET(&(sti->base), ELM_STORE_ITEM_MAGIC); - sti->base.store = st; - sti->base.data = info->base.data; - sti->base.mapping = info->base.mapping; - sti->path = eina_stringshare_add(info->path); - - itc = info->base.item_class; - if (!itc) itc = &_store_item_class; - else - { - itc->func.label_get = _store_item_label_get; - itc->func.icon_get = _store_item_icon_get; - itc->func.state_get = NULL; // FIXME: support state gets later - itc->func.del = _store_item_del; - } - - // FIXME: handle being a parent (tree) - sti->base.item = elm_genlist_item_append(st->genlist, itc, - sti/* item data */, - NULL/* parent */, - ELM_GENLIST_ITEM_NONE, - NULL/* func */, - NULL/* func data */); - st->items = eina_inlist_append(st->items, (Eina_Inlist *)sti); + Elm_Store *st = data; + Elm_Store_Item_Filesystem *sti; + Elm_Genlist_Item_Class *itc; + Elm_Store_Item_Info_Filesystem *info = msg; + + sti = calloc(1, sizeof(Elm_Store_Item_Filesystem)); + if (!sti) goto done; + LKI(sti->base.lock); + EINA_MAGIC_SET(&(sti->base), ELM_STORE_ITEM_MAGIC); + sti->base.store = st; + sti->base.data = info->base.data; + sti->base.mapping = info->base.mapping; + sti->path = eina_stringshare_add(info->path); + + itc = info->base.item_class; + if (!itc) itc = &_store_item_class; + else + { + itc->func.label_get = _store_item_label_get; + itc->func.icon_get = _store_item_icon_get; + itc->func.state_get = NULL; // FIXME: support state gets later + itc->func.del = _store_item_del; + } + + // FIXME: handle being a parent (tree) + sti->base.item = elm_genlist_item_append(st->genlist, itc, + sti/* item data */, + NULL/* parent */, + ELM_GENLIST_ITEM_NONE, + NULL/* func */, + NULL/* func data */); + st->items = eina_inlist_append(st->items, (Eina_Inlist *)sti); done: - if (info->base.sort_id) free(info->base.sort_id); - free(info); + if (info->base.sort_id) free(info->base.sort_id); + free(info); } // public api calls static Elm_Store * _elm_store_new(size_t size) { - Elm_Store *st = calloc(1, size); - EINA_SAFETY_ON_NULL_RETURN_VAL(st, NULL); - - // TODO: BEGIN - move to elm_store_init() - eina_magic_string_set(ELM_STORE_MAGIC, "Elm_Store"); - eina_magic_string_set(ELM_STORE_FILESYSTEM_MAGIC, "Elm_Store_Filesystem"); - eina_magic_string_set(ELM_STORE_ITEM_MAGIC, "Elm_Store_Item"); - // setup default item class (always the same) if list cb doesnt provide one - _store_item_class.item_style = "default"; - _store_item_class.func.label_get = _store_item_label_get; - _store_item_class.func.icon_get = _store_item_icon_get; - _store_item_class.func.state_get = NULL; // FIXME: support state gets later - _store_item_class.func.del = _store_item_del; - // TODO: END - move to elm_store_init() - - EINA_MAGIC_SET(st, ELM_STORE_MAGIC); - st->cache_max = 128; - st->fetch_thread = EINA_TRUE; - return st; + Elm_Store *st = calloc(1, size); + EINA_SAFETY_ON_NULL_RETURN_VAL(st, NULL); + + // TODO: BEGIN - move to elm_store_init() + eina_magic_string_set(ELM_STORE_MAGIC, "Elm_Store"); + eina_magic_string_set(ELM_STORE_FILESYSTEM_MAGIC, "Elm_Store_Filesystem"); + eina_magic_string_set(ELM_STORE_ITEM_MAGIC, "Elm_Store_Item"); + // setup default item class (always the same) if list cb doesnt provide one + _store_item_class.item_style = "default"; + _store_item_class.func.label_get = _store_item_label_get; + _store_item_class.func.icon_get = _store_item_icon_get; + _store_item_class.func.state_get = NULL; // FIXME: support state gets later + _store_item_class.func.del = _store_item_del; + // TODO: END - move to elm_store_init() + + EINA_MAGIC_SET(st, ELM_STORE_MAGIC); + st->cache_max = 128; + st->fetch_thread = EINA_TRUE; + return st; } #define elm_store_new(type) (type*)_elm_store_new(sizeof(type)) static void _elm_store_filesystem_free(Elm_Store *store) { - Elm_Store_Filesystem *st = (Elm_Store_Filesystem *)store; - eina_stringshare_del(st->dir); + Elm_Store_Filesystem *st = (Elm_Store_Filesystem *)store; + eina_stringshare_del(st->dir); } static void @@ -534,221 +534,221 @@ _elm_store_filesystem_item_free(Elm_Store_Item *item) EAPI Elm_Store * elm_store_filesystem_new(void) { - Elm_Store_Filesystem *st = elm_store_new(Elm_Store_Filesystem); - EINA_SAFETY_ON_NULL_RETURN_VAL(st, NULL); + Elm_Store_Filesystem *st = elm_store_new(Elm_Store_Filesystem); + EINA_SAFETY_ON_NULL_RETURN_VAL(st, NULL); - EINA_MAGIC_SET(st, ELM_STORE_FILESYSTEM_MAGIC); - st->base.free = _elm_store_filesystem_free; - st->base.item.free = _elm_store_filesystem_item_free; + EINA_MAGIC_SET(st, ELM_STORE_FILESYSTEM_MAGIC); + st->base.free = _elm_store_filesystem_free; + st->base.item.free = _elm_store_filesystem_item_free; - return &st->base; + return &st->base; } EAPI void elm_store_free(Elm_Store *st) { - void (*item_free)(Elm_Store_Item *); - if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; - if (st->list_th) - { - ecore_thread_cancel(st->list_th); - st->list_th = NULL; - } - eina_list_free(st->realized); - item_free = st->item.free; - while (st->items) - { - Elm_Store_Item *sti = (Elm_Store_Item *)st->items; - if (sti->eval_job) ecore_job_del(sti->eval_job); - if (sti->fetch_th) - { - ecore_thread_cancel(sti->fetch_th); - sti->fetch_th = NULL; - } - if (item_free) item_free(sti); - if (sti->data) - { - if (st->cb.unfetch.func) - st->cb.unfetch.func(st->cb.unfetch.data, sti); - sti->data = NULL; - } - LKD(sti->lock); - free(sti); - } - if (st->genlist) - { - evas_object_event_callback_del_full(st->genlist, EVAS_CALLBACK_DEL, _store_genlist_del, st); - evas_object_smart_callback_del(st->genlist, "realized", _store_genlist_item_realized); - evas_object_smart_callback_del(st->genlist, "unrealized", _store_genlist_item_unrealized); - elm_genlist_clear(st->genlist); - st->genlist = NULL; - } - if (st->free) st->free(st); - free(st); + void (*item_free)(Elm_Store_Item *); + if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; + if (st->list_th) + { + ecore_thread_cancel(st->list_th); + st->list_th = NULL; + } + eina_list_free(st->realized); + item_free = st->item.free; + while (st->items) + { + Elm_Store_Item *sti = (Elm_Store_Item *)st->items; + if (sti->eval_job) ecore_job_del(sti->eval_job); + if (sti->fetch_th) + { + ecore_thread_cancel(sti->fetch_th); + sti->fetch_th = NULL; + } + if (item_free) item_free(sti); + if (sti->data) + { + if (st->cb.unfetch.func) + st->cb.unfetch.func(st->cb.unfetch.data, sti); + sti->data = NULL; + } + LKD(sti->lock); + free(sti); + } + if (st->genlist) + { + evas_object_event_callback_del_full(st->genlist, EVAS_CALLBACK_DEL, _store_genlist_del, st); + evas_object_smart_callback_del(st->genlist, "realized", _store_genlist_item_realized); + evas_object_smart_callback_del(st->genlist, "unrealized", _store_genlist_item_unrealized); + elm_genlist_clear(st->genlist); + st->genlist = NULL; + } + if (st->free) st->free(st); + free(st); } EAPI void elm_store_target_genlist_set(Elm_Store *st, Evas_Object *obj) { - if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; - if (st->genlist == obj) return; - if (st->genlist) - { - evas_object_event_callback_del_full(st->genlist, EVAS_CALLBACK_DEL, _store_genlist_del, st); - evas_object_smart_callback_del(st->genlist, "realized", _store_genlist_item_realized); - evas_object_smart_callback_del(st->genlist, "unrealized", _store_genlist_item_unrealized); - elm_genlist_clear(st->genlist); - } - st->genlist = obj; - if (!st->genlist) return; - evas_object_smart_callback_add(st->genlist, "realized", _store_genlist_item_realized, st); - evas_object_smart_callback_add(st->genlist, "unrealized", _store_genlist_item_unrealized, st); - evas_object_event_callback_add(st->genlist, EVAS_CALLBACK_DEL, _store_genlist_del, st); - elm_genlist_clear(st->genlist); + if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; + if (st->genlist == obj) return; + if (st->genlist) + { + evas_object_event_callback_del_full(st->genlist, EVAS_CALLBACK_DEL, _store_genlist_del, st); + evas_object_smart_callback_del(st->genlist, "realized", _store_genlist_item_realized); + evas_object_smart_callback_del(st->genlist, "unrealized", _store_genlist_item_unrealized); + elm_genlist_clear(st->genlist); + } + st->genlist = obj; + if (!st->genlist) return; + evas_object_smart_callback_add(st->genlist, "realized", _store_genlist_item_realized, st); + evas_object_smart_callback_add(st->genlist, "unrealized", _store_genlist_item_unrealized, st); + evas_object_event_callback_add(st->genlist, EVAS_CALLBACK_DEL, _store_genlist_del, st); + elm_genlist_clear(st->genlist); } EAPI void elm_store_filesystem_directory_set(Elm_Store *store, const char *dir) { Elm_Store_Filesystem *st = (Elm_Store_Filesystem *)store; - if (!EINA_MAGIC_CHECK(store, ELM_STORE_MAGIC)) return; - if (!EINA_MAGIC_CHECK(st, ELM_STORE_FILESYSTEM_MAGIC)) return; - if (store->list_th) - { - ecore_thread_cancel(store->list_th); - store->list_th = NULL; - } - if (!eina_stringshare_replace(&st->dir, dir)) return; - store->list_th = ecore_thread_feedback_run(_store_filesystem_list_do, - _store_filesystem_list_update, - _store_filesystem_list_end, - _store_filesystem_list_cancel, - st, EINA_TRUE); + if (!EINA_MAGIC_CHECK(store, ELM_STORE_MAGIC)) return; + if (!EINA_MAGIC_CHECK(st, ELM_STORE_FILESYSTEM_MAGIC)) return; + if (store->list_th) + { + ecore_thread_cancel(store->list_th); + store->list_th = NULL; + } + if (!eina_stringshare_replace(&st->dir, dir)) return; + store->list_th = ecore_thread_feedback_run(_store_filesystem_list_do, + _store_filesystem_list_update, + _store_filesystem_list_end, + _store_filesystem_list_cancel, + st, EINA_TRUE); } EAPI const char * elm_store_filesystem_directory_get(const Elm_Store *store) { - const Elm_Store_Filesystem *st = (const Elm_Store_Filesystem *)store; - if (!EINA_MAGIC_CHECK(store, ELM_STORE_MAGIC)) return NULL; - if (!EINA_MAGIC_CHECK(st, ELM_STORE_FILESYSTEM_MAGIC)) return NULL; - return st->dir; + const Elm_Store_Filesystem *st = (const Elm_Store_Filesystem *)store; + if (!EINA_MAGIC_CHECK(store, ELM_STORE_MAGIC)) return NULL; + if (!EINA_MAGIC_CHECK(st, ELM_STORE_FILESYSTEM_MAGIC)) return NULL; + return st->dir; } EAPI void elm_store_cache_set(Elm_Store *st, int max) { - if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; - if (max < 0) max = 0; - st->cache_max = max; - _store_cache_trim(st); + if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; + if (max < 0) max = 0; + st->cache_max = max; + _store_cache_trim(st); } EAPI int elm_store_cache_get(const Elm_Store *st) { - if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return 0; - return st->cache_max; + if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return 0; + return st->cache_max; } EAPI void elm_store_list_func_set(Elm_Store *st, Elm_Store_Item_List_Cb func, const void *data) { - if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; - st->cb.list.func = func; - st->cb.list.data = (void *)data; + if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; + st->cb.list.func = func; + st->cb.list.data = (void *)data; } EAPI void elm_store_fetch_func_set(Elm_Store *st, Elm_Store_Item_Fetch_Cb func, const void *data) { - if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; - st->cb.fetch.func = func; - st->cb.fetch.data = (void *)data; + if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; + st->cb.fetch.func = func; + st->cb.fetch.data = (void *)data; } EAPI void elm_store_fetch_thread_set(Elm_Store *st, Eina_Bool use_thread) { - if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; - st->fetch_thread = !!use_thread; + if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; + st->fetch_thread = !!use_thread; } EAPI Eina_Bool elm_store_fetch_thread_get(const Elm_Store *st) { - if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return EINA_FALSE; - return st->fetch_thread; + if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return EINA_FALSE; + return st->fetch_thread; } EAPI void elm_store_unfetch_func_set(Elm_Store *st, Elm_Store_Item_Unfetch_Cb func, const void *data) { - if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; - st->cb.unfetch.func = func; - st->cb.unfetch.data = (void *)data; + if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; + st->cb.unfetch.func = func; + st->cb.unfetch.data = (void *)data; } EAPI void elm_store_sorted_set(Elm_Store *st, Eina_Bool sorted) { - if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; - st->sorted = sorted; + if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return; + st->sorted = sorted; } EAPI Eina_Bool elm_store_sorted_get(const Elm_Store *st) { - if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return EINA_FALSE; - return st->sorted; + if (!EINA_MAGIC_CHECK(st, ELM_STORE_MAGIC)) return EINA_FALSE; + return st->sorted; } EAPI void elm_store_item_data_set(Elm_Store_Item *sti, void *data) { - if (!EINA_MAGIC_CHECK(sti, ELM_STORE_ITEM_MAGIC)) return; - LKL(sti->lock); - sti->data = data; - LKU(sti->lock); + if (!EINA_MAGIC_CHECK(sti, ELM_STORE_ITEM_MAGIC)) return; + LKL(sti->lock); + sti->data = data; + LKU(sti->lock); } EAPI void * elm_store_item_data_get(Elm_Store_Item *sti) { - if (!EINA_MAGIC_CHECK(sti, ELM_STORE_ITEM_MAGIC)) return NULL; - void *d; - LKL(sti->lock); - d = sti->data; - LKU(sti->lock); - return d; + if (!EINA_MAGIC_CHECK(sti, ELM_STORE_ITEM_MAGIC)) return NULL; + void *d; + LKL(sti->lock); + d = sti->data; + LKU(sti->lock); + return d; } EAPI const Elm_Store * elm_store_item_store_get(const Elm_Store_Item *sti) { - if (!EINA_MAGIC_CHECK(sti, ELM_STORE_ITEM_MAGIC)) return NULL; - // dont need lock - return sti->store; + if (!EINA_MAGIC_CHECK(sti, ELM_STORE_ITEM_MAGIC)) return NULL; + // dont need lock + return sti->store; } EAPI const Elm_Genlist_Item * elm_store_item_genlist_item_get(const Elm_Store_Item *sti) { - if (!EINA_MAGIC_CHECK(sti, ELM_STORE_ITEM_MAGIC)) return NULL; - // dont need lock - return sti->item; + if (!EINA_MAGIC_CHECK(sti, ELM_STORE_ITEM_MAGIC)) return NULL; + // dont need lock + return sti->item; } EAPI const char * elm_store_item_filesystem_path_get(const Elm_Store_Item *item) { - Elm_Store_Item_Filesystem *sti = (Elm_Store_Item_Filesystem *)item; - Elm_Store_Filesystem *st; - if (!EINA_MAGIC_CHECK(item, ELM_STORE_ITEM_MAGIC)) return NULL; - if (!EINA_MAGIC_CHECK(item->store, ELM_STORE_MAGIC)) return NULL; - /* ensure we're dealing with filesystem item */ - st = (Elm_Store_Filesystem *)item->store; - if (!EINA_MAGIC_CHECK(st, ELM_STORE_FILESYSTEM_MAGIC)) return NULL; - // dont need lock - return sti->path; + Elm_Store_Item_Filesystem *sti = (Elm_Store_Item_Filesystem *)item; + Elm_Store_Filesystem *st; + if (!EINA_MAGIC_CHECK(item, ELM_STORE_ITEM_MAGIC)) return NULL; + if (!EINA_MAGIC_CHECK(item->store, ELM_STORE_MAGIC)) return NULL; + /* ensure we're dealing with filesystem item */ + st = (Elm_Store_Filesystem *)item->store; + if (!EINA_MAGIC_CHECK(st, ELM_STORE_FILESYSTEM_MAGIC)) return NULL; + // dont need lock + return sti->path; } -- 2.7.4