280 lines
8.6 KiB
C
280 lines
8.6 KiB
C
/**
|
|
* Add a new gengrid widget to the given parent Elementary
|
|
* (container) object
|
|
*
|
|
* @param parent The parent object
|
|
* @return a new gengrid widget handle or @c NULL, on errors
|
|
*
|
|
* This function inserts a new gengrid widget on the canvas.
|
|
*
|
|
* @see elm_gengrid_item_size_set()
|
|
* @see elm_gengrid_group_item_size_set()
|
|
* @see elm_gengrid_horizontal_set()
|
|
* @see elm_gengrid_item_append()
|
|
* @see elm_object_item_del()
|
|
* @see elm_gengrid_clear()
|
|
*
|
|
* @ingroup Elm_Gengrid
|
|
*/
|
|
EAPI Evas_Object *elm_gengrid_add(Evas_Object *parent);
|
|
|
|
/**
|
|
* Get the nth item, in a given gengrid widget, placed at position @p nth, in
|
|
* its internal items list
|
|
*
|
|
* @param obj The gengrid object
|
|
* @param nth The number of the item to grab (0 being the first)
|
|
*
|
|
* @return The item stored in @p obj at position @p nth or @c NULL, if there's
|
|
* no item with that index (and on errors)
|
|
*
|
|
* @ingroup Genilst
|
|
* @since 1.8
|
|
*/
|
|
EAPI Elm_Object_Item *elm_gengrid_nth_item_get(const Evas_Object *obj, unsigned int nth);
|
|
|
|
/**
|
|
* Show a specific virtual region within the gengrid content object by page number.
|
|
*
|
|
* @param obj The gengrid object
|
|
* @param h_pagenumber The horizontal page number
|
|
* @param v_pagenumber The vertical page number
|
|
*
|
|
* 0, 0 of the indicated page is located at the top-left of the viewport.
|
|
* This will jump to the page directly without animation.
|
|
*
|
|
* Example of usage:
|
|
*
|
|
* @code
|
|
* sc = elm_gengrid_add(win);
|
|
* elm_gengrid_content_set(sc, content);
|
|
* elm_gengrid_page_relative_set(sc, 1, 0);
|
|
* elm_gengrid_current_page_get(sc, &h_page, &v_page);
|
|
* elm_gengrid_page_show(sc, h_page + 1, v_page);
|
|
* @endcode
|
|
*
|
|
* @deprecated Use elm_scroller_page_show() instead.
|
|
*
|
|
* @see elm_scroller_page_bring_in()
|
|
*/
|
|
EINA_DEPRECATED EAPI void elm_gengrid_page_show(const Evas_Object *obj, int h_pagenumber, int v_pagenumber);
|
|
|
|
/**
|
|
* Set the scrollbar policy
|
|
*
|
|
* @param obj The gengrid object
|
|
* @param policy_h Horizontal scrollbar policy.
|
|
* @param policy_v Vertical scrollbar policy.
|
|
*
|
|
* This sets the scrollbar visibility policy for the given gengrid
|
|
* scroller. #ELM_SCROLLER_POLICY_AUTO means the scrollbar is made
|
|
* visible if it is needed, and otherwise kept
|
|
* hidden. #ELM_SCROLLER_POLICY_ON turns it on all the time, and
|
|
* #ELM_SCROLLER_POLICY_OFF always keeps it off. This applies
|
|
* respectively for the horizontal and vertical scrollbars. Default
|
|
* is #ELM_SCROLLER_POLICY_AUTO.
|
|
*
|
|
* @deprecated Use elm_scroller_policy_set() instead.
|
|
*
|
|
* @see elm_scroller_policy_set()
|
|
*
|
|
* @see elm_gengrid_scroller_policy_get()
|
|
*
|
|
* @ingroup Elm_Gengrid
|
|
*/
|
|
EINA_DEPRECATED EAPI void elm_gengrid_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy policy_h, Elm_Scroller_Policy policy_v);
|
|
|
|
/**
|
|
* Get the scrollbar policy
|
|
*
|
|
* @param obj The gengrid object
|
|
* @param policy_h Pointer to store the horizontal scrollbar policy.
|
|
* @param policy_v Pointer to store the vertical scrollbar policy.
|
|
*
|
|
* @deprecated Use elm_scroller_policy_get() instead.
|
|
*
|
|
* @see elm_scroller_policy_get()
|
|
*
|
|
* @see elm_gengrid_scroller_policy_set()
|
|
*
|
|
* @ingroup Elm_Gengrid
|
|
*/
|
|
EINA_DEPRECATED EAPI void elm_gengrid_scroller_policy_get(const Evas_Object *obj, Elm_Scroller_Policy *policy_h, Elm_Scroller_Policy *policy_v);
|
|
|
|
/**
|
|
* Enable or disable bouncing effect for a given gengrid widget
|
|
*
|
|
* @param obj The gengrid object
|
|
* @param h_bounce @c EINA_TRUE, to enable @b horizontal bouncing,
|
|
* @c EINA_FALSE to disable it
|
|
* @param v_bounce @c EINA_TRUE, to enable @b vertical bouncing,
|
|
* @c EINA_FALSE to disable it
|
|
*
|
|
* The bouncing effect occurs whenever one reaches the gengrid's
|
|
* edge's while panning it -- it will scroll past its limits a
|
|
* little bit and return to the edge again, in a animated for,
|
|
* automatically.
|
|
*
|
|
* @note By default, gengrids have bouncing enabled on both axis
|
|
*
|
|
* @deprecated Use elm_scroller_bounce_set() instead.
|
|
*
|
|
* @see elm_scroller_bounce_set()
|
|
*
|
|
* @ingroup Elm_Gengrid
|
|
*/
|
|
EINA_DEPRECATED EAPI void elm_gengrid_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
|
|
|
|
/**
|
|
* Get whether bouncing effects are enabled or disabled, for a
|
|
* given gengrid widget, on each axis
|
|
*
|
|
* @param obj The gengrid object
|
|
* @param h_bounce Pointer to a variable where to store the
|
|
* horizontal bouncing flag.
|
|
* @param v_bounce Pointer to a variable where to store the
|
|
* vertical bouncing flag.
|
|
*
|
|
* @deprecated Use elm_scroller_bounce_get() instead.
|
|
*
|
|
* @see elm_scroller_bounce_get()
|
|
*
|
|
* @ingroup Elm_Gengrid
|
|
*/
|
|
EINA_DEPRECATED EAPI void elm_gengrid_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce);
|
|
|
|
/**
|
|
* @brief Get gengrid current page number.
|
|
*
|
|
* @param obj The gengrid object
|
|
* @param h_pagenumber The horizontal page number
|
|
* @param v_pagenumber The vertical page number
|
|
*
|
|
* The page number starts from 0. 0 is the first page.
|
|
* Current page means the page which meet the top-left of the viewport.
|
|
* If there are two or more pages in the viewport, it returns the number of page
|
|
* which meet the top-left of the viewport.
|
|
*
|
|
* @deprecated Use elm_scroller_current_page_set() instead.
|
|
*
|
|
* @see elm_scroller_current_page_set()
|
|
*
|
|
* @see elm_gengrid_last_page_get()
|
|
* @see elm_scroller_page_show()
|
|
* @see elm_scroller_page_bring_in()
|
|
*/
|
|
EINA_DEPRECATED EAPI void elm_gengrid_current_page_get(const Evas_Object *obj, int *h_pagenumber, int *v_pagenumber);
|
|
|
|
/**
|
|
* @brief Get gengrid last page number.
|
|
*
|
|
* @param obj The gengrid object
|
|
* @param h_pagenumber The horizontal page number
|
|
* @param v_pagenumber The vertical page number
|
|
*
|
|
* The page number starts from 0. 0 is the first page.
|
|
* This returns the last page number among the pages.
|
|
*
|
|
* @deprecated Use elm_scroller_last_page_set() instead.
|
|
*
|
|
* @see elm_scroller_last_page_set()
|
|
*
|
|
* @see elm_gengrid_current_page_get()
|
|
* @see elm_scroller_page_show()
|
|
* @see elm_scroller_page_bring_in()
|
|
*/
|
|
EINA_DEPRECATED EAPI void elm_gengrid_last_page_get(const Evas_Object *obj, int *h_pagenumber, int *v_pagenumber);
|
|
|
|
/**
|
|
* Show a specific virtual region within the gengrid content object by page number.
|
|
*
|
|
* @param obj The gengrid object
|
|
* @param h_pagenumber The horizontal page number
|
|
* @param v_pagenumber The vertical page number
|
|
*
|
|
* 0, 0 of the indicated page is located at the top-left of the viewport.
|
|
* This will slide to the page with animation.
|
|
*
|
|
* Example of usage:
|
|
*
|
|
* @code
|
|
* sc = elm_gengrid_add(win);
|
|
* elm_gengrid_content_set(sc, content);
|
|
* elm_gengrid_page_relative_set(sc, 1, 0);
|
|
* elm_gengrid_last_page_get(sc, &h_page, &v_page);
|
|
* elm_gengrid_page_bring_in(sc, h_page, v_page);
|
|
* @endcode
|
|
*
|
|
* @deprecated Use elm_scroller_page_bring_in() instead.
|
|
*
|
|
* @see elm_scroller_page_show()
|
|
*/
|
|
EINA_DEPRECATED EAPI void elm_gengrid_page_bring_in(const Evas_Object *obj, int h_pagenumber, int v_pagenumber);
|
|
|
|
/**
|
|
* @brief Set a given gengrid widget's scrolling page size.
|
|
*
|
|
* @param[in] obj The object.
|
|
* @param[in] h_pagesize Page size horizontal
|
|
* @param[in] v_pagesize Page size vertical
|
|
*
|
|
* @ingroup Elm_Gengrid
|
|
*/
|
|
EAPI void elm_gengrid_page_size_set(Evas_Object *obj, int h_pagesize, int v_pagesize);
|
|
|
|
/**
|
|
* @brief Control a given gengrid widget's scrolling page size, relative to
|
|
* its viewport size.
|
|
*
|
|
* @param[in] obj The object.
|
|
* @param[in] h_pagerel Page relation horizontal
|
|
* @param[in] v_pagerel Page relation vertical
|
|
*
|
|
* @ingroup Elm_Gengrid
|
|
*/
|
|
EAPI void elm_gengrid_page_relative_set(Evas_Object *obj, double h_pagerel, double v_pagerel);
|
|
|
|
/**
|
|
* @brief Control a given gengrid widget's scrolling page size, relative to
|
|
* its viewport size.
|
|
*
|
|
* @param[in] obj The object.
|
|
* @param[out] h_pagerel Page relation horizontal
|
|
* @param[out] v_pagerel Page relation vertical
|
|
*
|
|
* @ingroup Elm_Gengrid
|
|
*/
|
|
EAPI void elm_gengrid_page_relative_get(const Evas_Object *obj, double *h_pagerel, double *v_pagerel);
|
|
|
|
|
|
/**
|
|
* @brief Enable or disable mouse wheel to be used to scroll the gengrid.
|
|
*
|
|
* Mouse wheel can be used for the user to scroll up and down the gengrid.
|
|
*
|
|
* Wheel is enabled by default.
|
|
*
|
|
* @param[in] obj The object.
|
|
* @param[in] disabled Use @c true to disable mouse wheel or @c false to enable
|
|
* it.
|
|
*
|
|
* @ingroup Elm_Gengrid
|
|
*/
|
|
EAPI void elm_gengrid_wheel_disabled_set(Evas_Object *obj, Eina_Bool disabled);
|
|
|
|
/**
|
|
* @brief Get a value whether mouse wheel is enabled or not.
|
|
*
|
|
* Mouse wheel can be used for the user to scroll up and down the gengrid.
|
|
*
|
|
* @param[in] obj The object.
|
|
*
|
|
* @return Use @c true to disable mouse wheel or @c false to enable it.
|
|
*
|
|
* @ingroup Elm_Gengrid
|
|
*/
|
|
EAPI Eina_Bool elm_gengrid_wheel_disabled_get(const Evas_Object *obj);
|
|
|
|
#include "elm_gengrid_item_eo.legacy.h"
|
|
#include "elm_gengrid_eo.legacy.h"
|