int count;
evas_object_geometry_get(wd->pan_smart, NULL, NULL, &cvw, &cvh);
- if ((wd->horizontal) && (wd->item_height > 0))
- nmax = cvh / wd->item_height;
- else if (wd->item_width > 0)
- nmax = cvw / wd->item_width;
+ if ((cvw != 0) || (cvh != 0))
+ {
+ if ((wd->horizontal) && (wd->item_height > 0))
+ nmax = cvh / wd->item_height;
+ else if (wd->item_width > 0)
+ nmax = cvw / wd->item_width;
- if (nmax < 1)
- nmax = 1;
+ if (nmax < 1)
+ nmax = 1;
- count = wd->count;
- if (wd->horizontal)
- {
- minw = ceil(count / (float)nmax) * wd->item_width;
- minh = nmax * wd->item_height;
- }
- else
- {
- minw = nmax * wd->item_width;
- minh = ceil(count / (float)nmax) * wd->item_height;
- }
+ count = wd->count;
+ if (wd->horizontal)
+ {
+ minw = ceil(count / (float)nmax) * wd->item_width;
+ minh = nmax * wd->item_height;
+ }
+ else
+ {
+ minw = nmax * wd->item_width;
+ minh = ceil(count / (float)nmax) * wd->item_height;
+ }
- if ((minw != wd->minw) || (minh != wd->minh))
- {
- wd->minh = minh;
- wd->minw = minw;
- evas_object_smart_callback_call(wd->pan_smart, "changed", NULL);
- }
+ if ((minw != wd->minw) || (minh != wd->minh))
+ {
+ wd->minh = minh;
+ wd->minw = minw;
+ evas_object_smart_callback_call(wd->pan_smart, "changed", NULL);
+ }
- wd->nmax = nmax;
- wd->calc_job = NULL;
- evas_object_smart_changed(wd->pan_smart);
+ wd->nmax = nmax;
+ wd->calc_job = NULL;
+ evas_object_smart_changed(wd->pan_smart);
+ }
}
static void
ELM_WIDGET_ITEM_WIDTYPE_CHECK_OR_RETURN(item);
Widget_Data *wd = item->wd;
if (!wd) return;
- if ((!item) || (item->delete_me)) return;
+ if (item->delete_me) return;
selected = !!selected;
if (item->selected == selected) return;
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data *wd = elm_widget_data_get(obj);
+ if (!wd) return NULL;
if (!wd->items) return NULL;
Elm_Gengrid_Item *item = ELM_GENGRID_ITEM_FROM_INLIST(wd->items->last);
- if (!wd) return NULL;
+
while ((item) && (item->delete_me))
item = ELM_GENGRID_ITEM_FROM_INLIST(EINA_INLIST_GET(item)->prev);
return item;