EFL migration revision 67547
[framework/uifw/elementary.git] / tests / src / lib / elm_imageslider.h
1    /**
2     * @defgroup Imageslider Imageslider
3     * @ingroup Elementary
4     * @addtogroup Imageslider
5     * @{
6     *
7     * By flicking images on the screen,
8     * you can see the images in specific path.
9     */
10    typedef struct _Imageslider_Item Elm_Imageslider_Item;
11    typedef void (*Elm_Imageslider_Cb)(void *data, Evas_Object *obj, void *event_info);
12
13    /**
14     * Add an Image Slider widget
15     *
16     * @param        parent  The parent object
17     * @return       The new Image slider object or NULL if it cannot be created
18     */
19    EAPI Evas_Object           *elm_imageslider_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
20    /**
21     * Append an Image Slider item
22     *
23     * @param        obj          The Image Slider object
24     * @param        photo_file   photo file path
25     * @param        func         callback function
26     * @param        data         callback data
27     * @return       The Image Slider item handle or NULL
28     */
29    EAPI Elm_Imageslider_Item  *elm_imageslider_item_append(Evas_Object *obj, const char *photo_file, Elm_Imageslider_Cb func, void *data) EINA_ARG_NONNULL(1);
30    /**
31     * Insert an Image Slider item into the Image Slider Widget by using the given index.
32     *
33     * @param        obj                     The Image Slider object
34     * @param        photo_file      photo file path
35     * @param        func            callback function
36     * @param        index           required position
37     * @param        data            callback data
38     * @return       The Image Slider item handle or NULL
39     */
40    EAPI Elm_Imageslider_Item  *elm_imageslider_item_append_relative(Evas_Object *obj, const char *photo_file, Elm_Imageslider_Cb func, unsigned int index, void *data) EINA_ARG_NONNULL(1);
41    /**
42     * Prepend Image Slider item
43     *
44     * @param        obj          The Image Slider object
45     * @param        photo_file   photo file path
46     * @param        func         callback function
47     * @param        data         callback data
48     * @return       The imageslider item handle or NULL
49     */
50    EAPI Elm_Imageslider_Item  *elm_imageslider_item_prepend(Evas_Object *obj, const char *photo_file, Elm_Imageslider_Cb func, void *data) EINA_ARG_NONNULL(1);
51    /**
52     * Delete the selected Image Slider item
53     *
54     * @param it             The selected Image Slider item handle
55     */
56    EAPI void                   elm_imageslider_item_del(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
57    /**
58     * Get the selected Image Slider item
59     *
60     * @param obj            The Image Slider object
61     * @return The selected Image Slider item or NULL
62     */
63    EAPI Elm_Imageslider_Item  *elm_imageslider_selected_item_get(Evas_Object *obj) EINA_ARG_NONNULL(1);
64    /**
65     * Get whether an Image Slider item is selected or not
66     *
67     * @param it              the selected Image Slider item
68     * @return EINA_TRUE or EINA_FALSE
69     */
70    EAPI Eina_Bool              elm_imageslider_item_selected_get(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
71    /**
72     * Set the selected Image Slider item
73     *
74     * @param it             The Imaga Slider item
75     */
76    EAPI void                   elm_imageslider_item_selected_set(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
77    /**
78     * Get the photo file path of given Image Slider item
79     *
80     * @param it             The Image Slider item
81     * @return The photo file path or NULL;
82     */
83    EAPI const char            *elm_imageslider_item_photo_file_get(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
84    /**
85     * Sets the photo file path of given Image Slider item
86     *
87     * @param it         The Image Slider item
88     * @param photo_file The photo file path or NULL;
89     */
90    EAPI Elm_Imageslider_Item  *elm_imageslider_item_prev(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
91    /**
92     * Get the previous Image Slider item
93     *
94     * @param it             The Image Slider item
95     * @return The previous Image Slider item or NULL
96     */
97    EAPI Elm_Imageslider_Item  *elm_imageslider_item_next(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
98    /**
99     * Get the next Image Slider item
100     *
101     * @param it             The Image Slider item
102     * @return The next Image Slider item or NULL
103     */
104    EAPI void                   elm_imageslider_prev(Evas_Object *obj) EINA_ARG_NONNULL(1);
105    /**
106     * Move to the previous Image Slider item
107     *
108     * @param obj    The Image Slider object
109     */
110    EAPI void                   elm_imageslider_next(Evas_Object *obj) EINA_ARG_NONNULL(1);
111    /**
112     * Move to the next Image Slider item
113     *
114     * @param obj The Image Slider object
115     */
116    EAPI void                   elm_imageslider_item_photo_file_set(Elm_Imageslider_Item *it, const char *photo_file) EINA_ARG_NONNULL(1,2);
117    /**
118     * Updates an Image Slider item
119     *
120     * @param it The Image Slider item
121     */
122    EAPI void                   elm_imageslider_item_update(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
123    /**
124     * @}
125     */
126