/**
* @defgroup Imageslider Imageslider
* @ingroup Elementary
+*
+* By flicking images on the screen,
+* you can see the images in specific path.
*/
typedef struct _Widget_Data Widget_Data;
Eina_List *cur;
Evas_Coord x, y, w, h;
Evas_Object *obj;
+ Ecore_Idler *queue_idler;
+ Ecore_Timer *anim_timer;
Evas_Coord_Point down_pos;
Evas_Coord move_x;
wd->its = NULL;
}
+ if (wd->queue_idler) {
+ ecore_idler_del(wd->queue_idler);
+ wd->queue_idler = NULL;
+ }
+
+ if (wd->anim_timer) {
+ ecore_timer_del(wd->anim_timer);
+ wd->anim_timer = NULL;
+ }
+
if (wd) free(wd);
}
ret = _check_drag(BLOCK_RIGHT, wd);
_check_zoom(wd);
- ecore_idler_add(_icon_to_image, wd);
+
+ if (wd->queue_idler) {
+ ecore_idler_del(wd->queue_idler);
+ wd->queue_idler = NULL;
+ }
+
+ if (!wd->queue_idler) wd->queue_idler = ecore_idler_add(_icon_to_image, wd);
return 0;
}
w = wd->move_x;
gettimeofday(&wd->tv, NULL);
- ecore_timer_add(ANI_TIME, _timer_cb, wd);
+
+ if (wd->anim_timer) {
+ ecore_timer_del(wd->anim_timer);
+ wd->anim_timer = NULL;
+ }
+
+ if (!wd->anim_timer) wd->anim_timer = ecore_timer_add(ANI_TIME, _timer_cb, wd);
+
}
static void _imageslider_update(Widget_Data *wd)
/**
-* Add imageslider widget
+* Add an Image Slider widget
*
-* @param obj The parent object
-* @return The new object or NULL if it cannot be created
+* @param parent The parent object
+* @return The new Image slider object or NULL if it cannot be created
*
* @ingroup Imageslider
*/
/**
-* Append imageslider item
+* Append an Image Slider item
*
-* @param obj The photoslider object
+* @param obj The Image Slider object
* @param photo_file photo file path
* @param func callback function
* @param data callback data
-* @return The photoslider item handle or NULL
+* @return The Image Slider item handle or NULL
*
* @ingroup Imageslider
*/
/**
-* Prepend imageslider item
+* Prepend Image Slider item
*
-* @param obj The imageslider object
+* @param obj The Image Slider object
* @param photo_file photo file path
* @param func callback function
* @param data callback data
/**
-* Delete imageslider item
+* Delete the selected Image Slider item
*
-* @param it imageslider item handle
+* @param it The selected Image Slider item handle
*
* @ingroup Imageslider
*/
/**
-* Get selected item
+* Get the selected Image Slider item
*
-* @param obj The imageslider object
-* @return The selected item or NULL
+* @param obj The Image Slider object
+* @return The selected Image Slider item or NULL
*
* @ingroup Imageslider
*/
}
/**
-* Get whether item is selected or not
+* Get whether an Image Slider item is selected or not
*
-* @param it the item
+* @param it the selected Image Slider item
* @return EINA_TRUE or EINA_FALSE
*
* @ingroup Imageslider
}
/**
-* Set selected item
+* Set the selected Image Slider item
*
-* @param it the item
+* @param it The Imaga Slider item
*
* @ingroup Imageslider
*/
/**
-* Get photo file path of give item
+* Get the photo file path of given Image Slider item
*
-* @param it item
+* @param it The Image Slider item
* @return The photo file path or NULL;
*
* @ingroup Imageslider
/**
-* Get the previous imageslider item
+* Get the previous Image Slider item
*
-* @param it item
-* @return The previous item or NULL
+* @param it The Image Slider item
+* @return The previous Image Slider item or NULL
*
* @ingroup Imageslider
*/
/**
-* Get the next imageslider item
+* Get the next Image Slider item
*
-* @param it item
-* @return The next item or NULL
+* @param it The Image Slider item
+* @return The next Image Slider item or NULL
*
* @ingroup Imageslider
*/
/**
-* Move to the previous imageslider item
+* Move to the previous Image Slider item
*
-* @param obj imageslider object
+* @param obj The Image Slider object
*
* @ingroup Imageslider
*/
/**
-* Move to the next imageslider item
+* Move to the next Image Slider item
*
-* @param obj imageslider object
+* @param obj The Image Slider object
*
* @ingroup Imageslider
*/