* so any data attached to the item (e.g. its data parameter on creation)
* can be deleted. See #GenlistItemDelFunc.
*
+ * available item styles:
+ * - default
+ * - default_style - The text part is a textblock
+ * - double_label
+ * - icon_top_text_bottom
+ *
* @section Genlist_Items Structure of items
*
* An item in a genlist can have 0 or more text labels (they can be regular
};
/**
- * Add a new Genlist object
+ * Add a new genlist widget to the given parent Elementary
+ * (container) object
*
* @param parent The parent object
- * @return The new object or NULL if it cannot be created
+ * @return a new genlist widget handle or @c NULL, on errors
+ *
+ * This function inserts a new genlist widget on the canvas.
+ *
+ * @see elm_genlist_item_append()
+ * @see elm_genlist_item_del()
+ * @see elm_genlist_clear()
*
* @ingroup Genlist
*/
EAPI Evas_Object *elm_genlist_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
/**
- * Clear the genlist
- *
- * This clears all items in the list, leaving it empty.
+ * Remove all items from a given genlist widget.
*
* @param obj The genlist object
*
+ * This removes (and deletes) all items in @p obj, leaving it empty.
+ *
+ * @see elm_genlist_item_del(), to remove just one item.
+ *
* @ingroup Genlist
*/
EAPI void elm_genlist_clear(Evas_Object *obj) EINA_ARG_NONNULL(1);
* @ingroup Genlist
*/
EAPI double elm_genlist_longpress_timeout_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
- /* operations to add items */
+ /**
+ * Append a new item in a given genlist widget.
+ *
+ * @param obj The genlist object
+ * @param itc The item class for the item
+ * @param data The item data
+ * @param parent The parent item, or NULL if none
+ * @param flags Item flags
+ * @param func Convenience function called when the item is selected
+ * @param func_data Data passed to @p func above.
+ * @return A handle to the item added or @c NULL if not possible
+ *
+ * This adds the given item to the end of the list or the end of
+ * the children list if the @p parent is given.
+ *
+ * @see elm_genlist_item_prepend()
+ * @see elm_genlist_item_insert_before()
+ * @see elm_genlist_item_insert_after()
+ * @see elm_genlist_item_del()
+ *
+ * @ingroup Genlist
+ */
EAPI Elm_Genlist_Item *elm_genlist_item_append(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *parent, Elm_Genlist_Item_Flags flags, Evas_Smart_Cb func, const void *func_data) EINA_ARG_NONNULL(1);
+ /**
+ * Prepend a new item in a given genlist widget.
+ *
+ * @param obj The genlist object
+ * @param itc The item class for the item
+ * @param data The item data
+ * @param parent The parent item, or NULL if none
+ * @param flags Item flags
+ * @param func Convenience function called when the item is selected
+ * @param func_data Data passed to @p func above.
+ * @return A handle to the item added or NULL if not possible
+ *
+ * This adds an item to the beginning of the list or beginning of the
+ * children of the parent if given.
+ *
+ * @see elm_genlist_item_append()
+ * @see elm_genlist_item_insert_before()
+ * @see elm_genlist_item_insert_after()
+ * @see elm_genlist_item_del()
+ *
+ * @ingroup Genlist
+ */
EAPI Elm_Genlist_Item *elm_genlist_item_prepend(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *parent, Elm_Genlist_Item_Flags flags, Evas_Smart_Cb func, const void *func_data) EINA_ARG_NONNULL(1);
+ /**
+ * Insert an item before another in a genlist widget
+ *
+ * @param obj The genlist object
+ * @param itc The item class for the item
+ * @param data The item data
+ * @param before The item to place this new one before.
+ * @param flags Item flags
+ * @param func Convenience function called when the item is selected
+ * @param func_data Data passed to @p func above.
+ * @return A handle to the item added or @c NULL if not possible
+ *
+ * This inserts an item before another in the list. It will be in the
+ * same tree level or group as the item it is inserted before.
+ *
+ * @see elm_genlist_item_append()
+ * @see elm_genlist_item_prepend()
+ * @see elm_genlist_item_insert_after()
+ * @see elm_genlist_item_del()
+ *
+ * @ingroup Genlist
+ */
EAPI Elm_Genlist_Item *elm_genlist_item_insert_before(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *parent, Elm_Genlist_Item *before, Elm_Genlist_Item_Flags flags, Evas_Smart_Cb func, const void *func_data) EINA_ARG_NONNULL(1, 5);
+ /**
+ * Insert an item after another in a genlist widget
+ *
+ * @param obj The genlist object
+ * @param itc The item class for the item
+ * @param data The item data
+ * @param after The item to place this new one after.
+ * @param flags Item flags
+ * @param func Convenience function called when the item is selected
+ * @param func_data Data passed to @p func above.
+ * @return A handle to the item added or @c NULL if not possible
+ *
+ * This inserts an item after another in the list. It will be in the
+ * same tree level or group as the item it is inserted after.
+ *
+ * @see elm_genlist_item_append()
+ * @see elm_genlist_item_prepend()
+ * @see elm_genlist_item_insert_before()
+ * @see elm_genlist_item_del()
+ *
+ * @ingroup Genlist
+ */
EAPI Elm_Genlist_Item *elm_genlist_item_insert_after(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *parent, Elm_Genlist_Item *after, Elm_Genlist_Item_Flags flags, Evas_Smart_Cb func, const void *func_data) EINA_ARG_NONNULL(1, 5);
+ /**
+ * Insert a new item into the sorted genlist object
+ *
+ * @param obj The genlist object
+ * @param itc The item class for the item
+ * @param data The item data
+ * @param parent The parent item, or NULL if none
+ * @param flags Item flags
+ * @param comp The function called for the sort
+ * @param func Convenience function called when item selected
+ * @param func_data Data passed to @p func above.
+ * @return A handle to the item added or NULL if not possible
+ *
+ * @ingroup Genlist
+ */
EAPI Elm_Genlist_Item *elm_genlist_item_sorted_insert(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *parent, Elm_Genlist_Item_Flags flags, Eina_Compare_Cb comp, Evas_Smart_Cb func,const void *func_data);
EAPI Elm_Genlist_Item *elm_genlist_item_direct_sorted_insert(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *parent, Elm_Genlist_Item_Flags flags, Eina_Compare_Cb comp, Evas_Smart_Cb func, const void *func_data);
/* operations to retrieve existing items */
* @ingroup Genlist
*/
EAPI Elm_Genlist_Item *elm_genlist_at_xy_item_get(const Evas_Object *obj, Evas_Coord x, Evas_Coord y, int *posret) EINA_ARG_NONNULL(1);
+ /**
+ * Get the first item in the genlist
+ *
+ * This returns the first item in the list.
+ *
+ * @param obj The genlist object
+ * @return The first item, or NULL if none
+ *
+ * @ingroup Genlist
+ */
EAPI Elm_Genlist_Item *elm_genlist_first_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /**
+ * Get the last item in the genlist
+ *
+ * This returns the last item in the list.
+ *
+ * @return The last item, or NULL if none
+ *
+ * @ingroup Genlist
+ */
EAPI Elm_Genlist_Item *elm_genlist_last_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
/**
* Set the scrollbar policy
* @ingroup Genlist
*/
EAPI void elm_genlist_scroller_policy_get(const Evas_Object *obj, Elm_Scroller_Policy *policy_h, Elm_Scroller_Policy *policy_v) EINA_ARG_NONNULL(1);
- /* available item styles:
- * default
- * default_style - The text part is a textblock
- * double_label
- * icon_top_text_bottom
+ /**
+ * Get the @b next item in a genlist widget's internal list of items,
+ * given a handle to one of those items.
+ *
+ * @param item The genlist item to fetch next from
+ * @return The item after @p item, or @c NULL if there's none (and
+ * on errors)
+ *
+ * This returns the item placed after the @p item, on the container
+ * genlist.
+ *
+ * @see elm_genlist_item_prev_get()
+ *
+ * @ingroup Genlist
*/
- /* Genlist Item operation */
EAPI Elm_Genlist_Item *elm_genlist_item_next_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Get the @b previous item in a genlist widget's internal list of items,
+ * given a handle to one of those items.
+ *
+ * @param item The genlist item to fetch previous from
+ * @return The item before @p item, or @c NULL if there's none (and
+ * on errors)
+ *
+ * This returns the item placed before the @p item, on the container
+ * genlist.
+ *
+ * @see elm_genlist_item_next_get()
+ *
+ * @ingroup Genlist
+ */
EAPI Elm_Genlist_Item *elm_genlist_item_prev_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Get the genlist object's handle which contains a given genlist
+ * item
+ *
+ * @param item The item to fetch the container from
+ * @return The genlist (parent) object
+ *
+ * This returns the genlist object itself that an item belongs to.
+ *
+ * @ingroup Genlist
+ */
EAPI Evas_Object *elm_genlist_item_genlist_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Get the parent item of the given item
+ *
+ * @param it The item
+ * @return The parent of the item or @c NULL if it has no parent.
+ *
+ * This returns the item that was specified as parent of the item @p it on
+ * elm_genlist_item_append() and insertion related functions.
+ *
+ * @ingroup Genlist
+ */
EAPI Elm_Genlist_Item *elm_genlist_item_parent_get(const Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * Remove all sub-items (children) of the given item
+ *
+ * @param it The item
+ *
+ * This removes all items that are children (and their descendants) of the
+ * given item @p it.
+ *
+ * @see elm_genlist_clear()
+ * @see elm_genlist_item_del()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_subitems_clear(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Set whether a given genlist item is selected or not
+ *
+ * @param it The item
+ * @param selected Use @c EINA_TRUE, to make it selected, @c
+ * EINA_FALSE to make it unselected
+ *
+ * This sets the selected state of an item. If multi selection is
+ * not enabled on the containing genlist and @p selected is @c
+ * EINA_TRUE, any other previously selected items will get
+ * unselected in favor of this new one.
+ *
+ * @see elm_genlist_item_selected_get()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_selected_set(Elm_Genlist_Item *item, Eina_Bool selected) EINA_ARG_NONNULL(1);
+ /**
+ * Get whether a given genlist item is selected or not
+ *
+ * @param it The item
+ * @return @c EINA_TRUE, if it's selected, @c EINA_FALSE otherwise
+ *
+ * @see elm_genlist_item_selected_set() for more details
+ *
+ * @ingroup Genlist
+ */
EAPI Eina_Bool elm_genlist_item_selected_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Sets the expanded state of an item.
+ *
+ * @param it The item
+ * @param expanded The expanded state (@c EINA_TRUE expanded, @c EINA_FALSE not expanded).
+ *
+ * This function flags the item of type #ELM_GENLIST_ITEM_SUBITEMS as
+ * expanded or not.
+ *
+ * The theme will respond to this change visually, and a signal "expanded" or
+ * "contracted" will be sent from the genlist with a pointer to the item that
+ * has been expanded/contracted.
+ *
+ * Calling this function won't show or hide any child of this item (if it is
+ * a parent). You must manually delete and create them on the callbacks fo
+ * the "expanded" or "contracted" signals.
+ *
+ * @see elm_genlist_item_expanded_get()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_expanded_set(Elm_Genlist_Item *item, Eina_Bool expanded) EINA_ARG_NONNULL(1);
+ /**
+ * Get the expanded state of an item
+ *
+ * @param it The item
+ * @return The expanded state
+ *
+ * This gets the expanded state of an item.
+ *
+ * @see elm_genlist_item_expanded_set()
+ *
+ * @ingroup Genlist
+ */
EAPI Eina_Bool elm_genlist_item_expanded_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Get the depth of expanded item
+ *
+ * @param it The genlist item object
+ * @return The depth of expanded item
+ *
+ * @ingroup Genlist
+ */
EAPI int elm_genlist_item_expanded_depth_get(const Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * Set whether a given genlist item is disabled or not.
+ *
+ * @param it The item
+ * @param disabled Use @c EINA_TRUE, true disable it, @c EINA_FALSE
+ * to enable it back.
+ *
+ * A disabled item cannot be selected or unselected. It will also
+ * change its appearance, to signal the user it's disabled.
+ *
+ * @see elm_genlist_item_disabled_get()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_disabled_set(Elm_Genlist_Item *item, Eina_Bool disabled) EINA_ARG_NONNULL(1);
+ /**
+ * Get whether a given genlist item is disabled or not.
+ *
+ * @param it The item
+ * @return @c EINA_TRUE, if it's disabled, @c EINA_FALSE otherwise
+ * (and on errors).
+ *
+ * @see elm_genlist_item_disabled_set() for more details
+ *
+ * @ingroup Genlist
+ */
EAPI Eina_Bool elm_genlist_item_disabled_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Sets the display only state of an item.
+ *
+ * @param it The item
+ * @param display_only @c EINA_TRUE if the item is display only, @c
+ * EINA_FALSE otherwise.
+ *
+ * A display only item cannot be selected or unselected. It is for
+ * display only and not selecting or otherwise clicking, dragging
+ * etc. by the user, thus finger size rules will not be applied to
+ * this item.
+ *
+ * It's good to set group index items to display only state.
+ *
+ * @see elm_genlist_item_display_only_get()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_display_only_set(Elm_Genlist_Item *it, Eina_Bool display_only) EINA_ARG_NONNULL(1);
+ /**
+ * Get the display only state of an item
+ *
+ * @param it The item
+ * @return @c EINA_TRUE if the item is display only, @c
+ * EINA_FALSE otherwise.
+ *
+ * @see elm_genlist_item_display_only_set()
+ *
+ * @ingroup Genlist
+ */
EAPI Eina_Bool elm_genlist_item_display_only_get(const Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * Show the portion of a genlist's internal list containing a given
+ * item, immediately.
+ *
+ * @param it The item to display
+ *
+ * This causes genlist to jump to the given item @p it and show it (by
+ * immediately scrolling to that position), if it is not fully visible.
+ *
+ * @see elm_genlist_item_bring_in()
+ * @see elm_genlist_item_top_show()
+ * @see elm_genlist_item_middle_show()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_show(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Animatedly bring in, to the visible are of a genlist, a given
+ * item on it.
+ *
+ * @param it The item to display
+ *
+ * This causes genlist to jump to the given item @p it and show it (by
+ * animatedly scrolling), if it is not fully visible. This may use animation
+ * to do so and take a period of time
+ *
+ * @see elm_genlist_item_show()
+ * @see elm_genlist_item_top_bring_in()
+ * @see elm_genlist_item_middle_bring_in()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_bring_in(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Show the portion of a genlist's internal list containing a given
+ * item, immediately.
+ *
+ * @param it The item to display
+ *
+ * This causes genlist to jump to the given item @p it and show it (by
+ * immediately scrolling to that position), if it is not fully visible.
+ *
+ * The item will be positioned at the top of the genlist viewport.
+ *
+ * @see elm_genlist_item_show()
+ * @see elm_genlist_item_top_bring_in()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_top_show(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Animatedly bring in, to the visible are of a genlist, a given
+ * item on it.
+ *
+ * @param it The item
+ *
+ * This causes genlist to jump to the given item @p it and show it (by
+ * animatedly scrolling), if it is not fully visible. This may use animation
+ * to do so and take a period of time
+ *
+ * The item will be positioned at the top of the genlist viewport.
+ *
+ * @see elm_genlist_item_bring_in()
+ * @see elm_genlist_item_top_show()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_top_bring_in(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Show the portion of a genlist's internal list containing a given
+ * item, immediately.
+ *
+ * @param it The item to display
+ *
+ * This causes genlist to jump to the given item @p it and show it (by
+ * immediately scrolling to that position), if it is not fully visible.
+ *
+ * The item will be positioned at the middle of the genlist viewport.
+ *
+ * @see elm_genlist_item_show()
+ * @see elm_genlist_item_middle_bring_in()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_middle_show(Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * Animatedly bring in, to the visible are of a genlist, a given
+ * item on it.
+ *
+ * @param it The item
+ *
+ * This causes genlist to jump to the given item @p it and show it (by
+ * animatedly scrolling), if it is not fully visible. This may use animation
+ * to do so and take a period of time
+ *
+ * The item will be positioned at the middle of the genlist viewport.
+ *
+ * @see elm_genlist_item_bring_in()
+ * @see elm_genlist_item_middle_show()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_middle_bring_in(Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * Remove a genlist item from the its parent, deleting it.
+ *
+ * @param item The item to be removed.
+ * @return @c EINA_TRUE on success or @c EINA_FALSE, otherwise.
+ *
+ * @see elm_genlist_clear(), to remove all items in a genlist at
+ * once.
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_del(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Return the data associated to a given genlist item
+ *
+ * @param item The genlist item.
+ * @return the data associated to this item.
+ *
+ * This returns the @c data value passed on the
+ * elm_genlist_item_append() and related item addition calls.
+ *
+ * @see elm_genlist_item_append()
+ * @see elm_genlist_item_data_set()
+ *
+ * @ingroup Genlist
+ */
EAPI void *elm_genlist_item_data_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Set the data associated to a given genlist item
+ *
+ * @param item The genlist item
+ * @param data The new data pointer to set on it
+ *
+ * This @b overrides the @c data value passed on the
+ * elm_genlist_item_append() and related item addition calls. This
+ * function @b won't call elm_genlist_item_update() automatically,
+ * so you'd issue it afterwards if you want to hove the item
+ * updated to reflect the that new data.
+ *
+ * @see elm_genlist_item_data_get()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_data_set(Elm_Genlist_Item *it, const void *data) EINA_ARG_NONNULL(1);
+ /**
+ * Tells genlist to "orphan" icons fetchs by the item class
+ *
+ * @param it The item
+ *
+ * This instructs genlist to release references to icons in the item,
+ * meaning that they will no longer be managed by genlist and are
+ * floating "orphans" that can be re-used elsewhere if the user wants
+ * to.
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_icons_orphan(Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * Get the real Evas object created to implement the view of a
+ * given genlist item
+ *
+ * @param item The genlist item.
+ * @return the Evas object implementing this item's view.
+ *
+ * This returns the actual Evas object used to implement the
+ * specified genlist item's view. This may be @c NULL, as it may
+ * not have been created or may have been deleted, at any time, by
+ * the genlist. <b>Do not modify this object</b> (move, resize,
+ * show, hide, etc.), as the genlist is controlling it. This
+ * function is for querying, emitting custom signals or hooking
+ * lower level callbacks for events on that object. Do not delete
+ * this object under any circumstances.
+ *
+ * @see elm_genlist_item_data_get()
+ *
+ * @ingroup Genlist
+ */
EAPI const Evas_Object *elm_genlist_item_object_get(const Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * Update the contents of an item
+ *
+ * @param it The item
+ *
+ * This updates an item by calling all the item class functions again
+ * to get the icons, labels and states. Use this when the original
+ * item data has changed and the changes are desired to be reflected.
+ *
+ * Use elm_genlist_realized_items_update() to update all already realized
+ * items.
+ *
+ * @see elm_genlist_realized_items_update()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_update(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Update the item class of an item
+ *
+ * @param it The item
+ * @parem itc The item class for the item
+ *
+ * This sets another class fo the item, changing the way that it is
+ * displayed. After changing the item class, elm_genlist_item_update() is
+ * called on the item @p it.
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_item_class_update(Elm_Genlist_Item *it, const Elm_Genlist_Item_Class *itc) EINA_ARG_NONNULL(1, 2);
EAPI const Elm_Genlist_Item_Class *elm_genlist_item_item_class_get(const Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * Set the text to be shown in a given genlist item's tooltips.
+ *
+ * @param item The genlist item
+ * @param text The text to set in the content
+ *
+ * This call will setup the text to be used as tooltip to that item
+ * (analogous to elm_object_tooltip_text_set(), but being item
+ * tooltips with higher precedence than object tooltips). It can
+ * have only one tooltip at a time, so any previous tooltip data
+ * will get removed.
+ *
+ * In order to set an icon or something else as a tooltip, look at
+ * elm_genlist_item_tooltip_content_cb_set().
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_tooltip_text_set(Elm_Genlist_Item *item, const char *text) EINA_ARG_NONNULL(1);
+ /**
+ * Set the content to be shown in a given genlist item's tooltips
+ *
+ * @param item The genlist item.
+ * @param func The function returning the tooltip contents.
+ * @param data What to provide to @a func as callback data/context.
+ * @param del_cb Called when data is not needed anymore, either when
+ * another callback replaces @func, the tooltip is unset with
+ * elm_genlist_item_tooltip_unset() or the owner @p item
+ * dies. This callback receives as its first parameter the
+ * given @p data, being @c event_info the item handle.
+ *
+ * This call will setup the tooltip's contents to @p item
+ * (analogous to elm_object_tooltip_content_cb_set(), but being
+ * item tooltips with higher precedence than object tooltips). It
+ * can have only one tooltip at a time, so any previous tooltip
+ * content will get removed. @p func (with @p data) will be called
+ * every time Elementary needs to show the tooltip and it should
+ * return a valid Evas object, which will be fully managed by the
+ * tooltip system, getting deleted when the tooltip is gone.
+ *
+ * In order to set just a text as a tooltip, look at
+ * elm_genlist_item_tooltip_text_set().
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_tooltip_content_cb_set(Elm_Genlist_Item *item, Elm_Tooltip_Item_Content_Cb func, const void *data, Evas_Smart_Cb del_cb) EINA_ARG_NONNULL(1);
+ /**
+ * Unset a tooltip from a given genlist item
+ *
+ * @param item genlist item to remove a previously set tooltip from.
+ *
+ * This call removes any tooltip set on @p item. The callback
+ * provided as @c del_cb to
+ * elm_genlist_item_tooltip_content_cb_set() will be called to
+ * notify it is not used anymore (and have resources cleaned, if
+ * need be).
+ *
+ * @see elm_genlist_item_tooltip_content_cb_set()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_tooltip_unset(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Set a different @b style for a given genlist item's tooltip.
+ *
+ * @param item genlist item with tooltip set
+ * @param style the <b>theme style</b> to use on tooltips (e.g. @c
+ * "default", @c "transparent", etc)
+ *
+ * Tooltips can have <b>alternate styles</b> to be displayed on,
+ * which are defined by the theme set on Elementary. This function
+ * works analogously as elm_object_tooltip_style_set(), but here
+ * applied only to genlist item objects. The default style for
+ * tooltips is @c "default".
+ *
+ * @note before you set a style you should define a tooltip with
+ * elm_genlist_item_tooltip_content_cb_set() or
+ * elm_genlist_item_tooltip_text_set()
+ *
+ * @see elm_genlist_item_tooltip_style_get()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_tooltip_style_set(Elm_Genlist_Item *item, const char *style) EINA_ARG_NONNULL(1);
+ /**
+ * Get the style set a given genlist item's tooltip.
+ *
+ * @param item genlist item with tooltip already set on.
+ * @return style the theme style in use, which defaults to
+ * "default". If the object does not have a tooltip set,
+ * then @c NULL is returned.
+ *
+ * @see elm_genlist_item_tooltip_style_set() for more details
+ *
+ * @ingroup Genlist
+ */
EAPI const char *elm_genlist_item_tooltip_style_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
/**
* @brief Disable size restrictions on an object's tooltip
* It will instead be limited only by the size of the display.
*/
EAPI Eina_Bool elm_genlist_item_tooltip_size_restrict_disabled_get(const Elm_Genlist_Item *item);
+ /**
+ * Set the type of mouse pointer/cursor decoration to be shown,
+ * when the mouse pointer is over the given genlist widget item
+ *
+ * @param item genlist item to customize cursor on
+ * @param cursor the cursor type's name
+ *
+ * This function works analogously as elm_object_cursor_set(), but
+ * here the cursor's changing area is restricted to the item's
+ * area, and not the whole widget's. Note that that item cursors
+ * have precedence over widget cursors, so that a mouse over @p
+ * item will always show cursor @p type.
+ *
+ * If this function is called twice for an object, a previously set
+ * cursor will be unset on the second call.
+ *
+ * @see elm_object_cursor_set()
+ * @see elm_genlist_item_cursor_get()
+ * @see elm_genlist_item_cursor_unset()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_cursor_set(Elm_Genlist_Item *item, const char *cursor) EINA_ARG_NONNULL(1);
+ /**
+ * Get the type of mouse pointer/cursor decoration set to be shown,
+ * when the mouse pointer is over the given genlist widget item
+ *
+ * @param item genlist item with custom cursor set
+ * @return the cursor type's name or @c NULL, if no custom cursors
+ * were set to @p item (and on errors)
+ *
+ * @see elm_object_cursor_get()
+ * @see elm_genlist_item_cursor_set() for more details
+ * @see elm_genlist_item_cursor_unset()
+ *
+ * @ingroup Genlist
+ */
EAPI const char *elm_genlist_item_cursor_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Unset any custom mouse pointer/cursor decoration set to be
+ * shown, when the mouse pointer is over the given genlist widget
+ * item, thus making it show the @b default cursor again.
+ *
+ * @param item a genlist item
+ *
+ * Use this call to undo any custom settings on this item's cursor
+ * decoration, bringing it back to defaults (no custom style set).
+ *
+ * @see elm_object_cursor_unset()
+ * @see elm_genlist_item_cursor_set() for more details
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_cursor_unset(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Set a different @b style for a given custom cursor set for a
+ * genlist item.
+ *
+ * @param item genlist item with custom cursor set
+ * @param style the <b>theme style</b> to use (e.g. @c "default",
+ * @c "transparent", etc)
+ *
+ * This function only makes sense when one is using custom mouse
+ * cursor decorations <b>defined in a theme file</b> , which can
+ * have, given a cursor name/type, <b>alternate styles</b> on
+ * it. It works analogously as elm_object_cursor_style_set(), but
+ * here applied only to genlist item objects.
+ *
+ * @warning Before you set a cursor style you should have defined a
+ * custom cursor previously on the item, with
+ * elm_genlist_item_cursor_set()
+ *
+ * @see elm_genlist_item_cursor_engine_only_set()
+ * @see elm_genlist_item_cursor_style_get()
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_cursor_style_set(Elm_Genlist_Item *item, const char *style) EINA_ARG_NONNULL(1);
+ /**
+ * Get the current @b style set for a given genlist item's custom
+ * cursor
+ *
+ * @param item genlist item with custom cursor set.
+ * @return style the cursor style in use. If the object does not
+ * have a cursor set, then @c NULL is returned.
+ *
+ * @see elm_genlist_item_cursor_style_set() for more details
+ *
+ * @ingroup Genlist
+ */
EAPI const char *elm_genlist_item_cursor_style_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
+ /**
+ * Set if the (custom) cursor for a given genlist item should be
+ * searched in its theme, also, or should only rely on the
+ * rendering engine.
+ *
+ * @param item item with custom (custom) cursor already set on
+ * @param engine_only Use @c EINA_TRUE to have cursors looked for
+ * only on those provided by the rendering engine, @c EINA_FALSE to
+ * have them searched on the widget's theme, as well.
+ *
+ * @note This call is of use only if you've set a custom cursor
+ * for genlist items, with elm_genlist_item_cursor_set().
+ *
+ * @note By default, cursors will only be looked for between those
+ * provided by the rendering engine.
+ *
+ * @ingroup Genlist
+ */
EAPI void elm_genlist_item_cursor_engine_only_set(Elm_Genlist_Item *item, Eina_Bool engine_only) EINA_ARG_NONNULL(1);
+ /**
+ * Get if the (custom) cursor for a given genlist item is being
+ * searched in its theme, also, or is only relying on the rendering
+ * engine.
+ *
+ * @param item a genlist item
+ * @return @c EINA_TRUE, if cursors are being looked for only on
+ * those provided by the rendering engine, @c EINA_FALSE if they
+ * are being searched on the widget's theme, as well.
+ *
+ * @see elm_genlist_item_cursor_engine_only_set(), for more details
+ *
+ * @ingroup Genlist
+ */
EAPI Eina_Bool elm_genlist_item_cursor_engine_only_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
/**
* Update the contents of all realized items.
* to get the icons, labels and states. Use this when the original
* item data has changed and the changes are desired to be reflected.
*
+ * To update just one item, use elm_genlist_item_update().
+ *
* @see elm_genlist_realized_items_get()
+ * @see elm_genlist_item_update()
*
* @ingroup Genlist
*/
it->itc->func.moved(it->base.widget, it, before, EINA_FALSE);
}
-/**
- * Add item to the end of the genlist
- *
- * This adds the given item to the end of the list or the end of
- * the children if the parent is given.
- *
- * @param obj The genlist object
- * @param itc The item class for the item
- * @param data The item data
- * @param parent The parent item, or NULL if none
- * @param flags Item flags
- * @param func Convenience function called when item selected
- * @param func_data Data passed to @p func above.
- * @return A handle to the item added or NULL if not possible
- *
- * @ingroup Genlist
- */
EAPI Elm_Genlist_Item *
elm_genlist_item_append(Evas_Object *obj,
const Elm_Genlist_Item_Class *itc,
return it;
}
-/**
- * Add item at start of the genlist
- *
- * This adds an item to the beginning of the list or beginning of the
- * children of the parent if given.
- *
- * @param obj The genlist object
- * @param itc The item class for the item
- * @param data The item data
- * @param parent The parent item, or NULL if none
- * @param flags Item flags
- * @param func Convenience function called when item selected
- * @param func_data Data passed to @p func above.
- * @return A handle to the item added or NULL if not possible
- *
- * @ingroup Genlist
- */
EAPI Elm_Genlist_Item *
elm_genlist_item_prepend(Evas_Object *obj,
const Elm_Genlist_Item_Class *itc,
return it;
}
-/**
- * Insert item before another in the genlist
- *
- * This inserts an item before another in the list. It will be in the
- * same tree level or group as the item it is inseted before.
- *
- * @param obj The genlist object
- * @param itc The item class for the item
- * @param data The item data
- * @param before The item to insert before
- * @param flags Item flags
- * @param func Convenience function called when item selected
- * @param func_data Data passed to @p func above.
- * @return A handle to the item added or NULL if not possible
- *
- * @ingroup Genlist
- */
EAPI Elm_Genlist_Item *
elm_genlist_item_insert_before(Evas_Object *obj,
const Elm_Genlist_Item_Class *itc,
return it;
}
-/**
- * Insert a new item into the sorted genlist object
- *
- * @param obj The genlist object
- * @param itc The item class for the item
- * @param data The item data
- * @param parent The parent item, or NULL if none
- * @param flags Item flags
- * @param comp The function called for the sort
- * @param func Convenience function called when item selected
- * @param func_data Data passed to @p func above.
- * @return A handle to the item added or NULL if not possible
- *
- * @ingroup Genlist
- */
EAPI Elm_Genlist_Item *
elm_genlist_item_sorted_insert(Evas_Object *obj,
const Elm_Genlist_Item_Class *itc,
_elm_genlist_item_compare_data, func, func_data);
}
-/**
- * Insert an item after another in the genlst
- *
- * This inserts an item after another in the list. It will be in the
- * same tree level or group as the item it is inseted after.
- *
- * @param obj The genlist object
- * @param itc The item class for the item
- * @param data The item data
- * @param after The item to insert after
- * @param flags Item flags
- * @param func Convenience function called when item selected
- * @param func_data Data passed to @p func above.
- * @return A handle to the item added or NULL if not possible
- *
- * @ingroup Genlist
- */
EAPI Elm_Genlist_Item *
elm_genlist_item_insert_after(Evas_Object *obj,
const Elm_Genlist_Item_Class *itc,
return NULL;
}
-/**
- * Get the first item in the genlist
- *
- * This returns the first item in the list.
- *
- * @param obj The genlist object
- * @return The first item, or NULL if none
- *
- * @ingroup Genlist
- */
EAPI Elm_Genlist_Item *
elm_genlist_first_item_get(const Evas_Object *obj)
{
return it;
}
-/**
- * Get the last item in the genlist
- *
- * This returns the last item in the list.
- *
- * @return The last item, or NULL if none
- *
- * @ingroup Genlist
- */
EAPI Elm_Genlist_Item *
elm_genlist_last_item_get(const Evas_Object *obj)
{
return it;
}
-/**
- * Get the next item in the genlist
- *
- * This returns the item after the item @p it.
- *
- * @param it The item
- * @return The item after @p it, or NULL if none
- *
- * @ingroup Genlist
- */
EAPI Elm_Genlist_Item *
elm_genlist_item_next_get(const Elm_Genlist_Item *it)
{
return (Elm_Genlist_Item *)it;
}
-/**
- * Get the previous item in the genlist
- *
- * This returns the item before the item @p it.
- *
- * @param it The item
- * @return The item before @p it, or NULL if none
- *
- * @ingroup Genlist
- */
EAPI Elm_Genlist_Item *
elm_genlist_item_prev_get(const Elm_Genlist_Item *it)
{
return (Elm_Genlist_Item *)it;
}
-/**
- * Get the genlist object from an item
- *
- * This returns the genlist object itself that an item belongs to.
- *
- * @param it The item
- * @return The genlist object
- *
- * @ingroup Genlist
- */
EAPI Evas_Object *
elm_genlist_item_genlist_get(const Elm_Genlist_Item *it)
{
return it->base.widget;
}
-/**
- * Get the parent item of the given item
- *
- * This returns the parent item of the item @p it given.
- *
- * @param it The item
- * @return The parent of the item or NULL if none
- *
- * @ingroup Genlist
- */
EAPI Elm_Genlist_Item *
elm_genlist_item_parent_get(const Elm_Genlist_Item *it)
{
return it->parent;
}
-/**
- * Clear all sub-items (children) of the given item
- *
- * This clears all items that are children (or their descendants) of the
- * given item @p it.
- *
- * @param it The item
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_subitems_clear(Elm_Genlist_Item *it)
{
elm_genlist_item_del(it2);
}
-/**
- * Set the selected state of an item
- *
- * This sets the selected state (1 selected, 0 not selected) of the given
- * item @p it.
- *
- * @param it The item
- * @param selected The selected state
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_selected_set(Elm_Genlist_Item *it,
Eina_Bool selected)
}
}
-/**
- * Get the selected state of an item
- *
- * This gets the selected state of an item (1 selected, 0 not selected).
- *
- * @param it The item
- * @return The selected state
- *
- * @ingroup Genlist
- */
EAPI Eina_Bool
elm_genlist_item_selected_get(const Elm_Genlist_Item *it)
{
return it->selected;
}
-/**
- * Sets the expanded state of an item (if it's a parent)
- *
- * This expands or contracts a parent item (thus showing or hiding the
- * children).
- *
- * @param it The item
- * @param expanded The expanded state (1 expanded, 0 not expanded).
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_expanded_set(Elm_Genlist_Item *it,
Eina_Bool expanded)
}
}
-/**
- * Get the expanded state of an item
- *
- * This gets the expanded state of an item
- *
- * @param it The item
- * @return Thre expanded state
- *
- * @ingroup Genlist
- */
EAPI Eina_Bool
elm_genlist_item_expanded_get(const Elm_Genlist_Item *it)
{
return it->expanded;
}
-/**
- * Get the depth of expanded item
- *
- * @param it The genlist item object
- * @return The depth of expanded item
- *
- * @ingroup Genlist
- */
EAPI int
elm_genlist_item_expanded_depth_get(const Elm_Genlist_Item *it)
{
return it->expanded_depth;
}
-/**
- * Sets the disabled state of an item.
- *
- * A disabled item cannot be selected or unselected. It will also
- * change appearance to appear disabled. This sets the disabled state
- * (1 disabled, 0 not disabled).
- *
- * @param it The item
- * @param disabled The disabled state
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_disabled_set(Elm_Genlist_Item *it,
Eina_Bool disabled)
}
}
-/**
- * Get the disabled state of an item
- *
- * This gets the disabled state of the given item.
- *
- * @param it The item
- * @return The disabled state
- *
- * @ingroup Genlist
- */
EAPI Eina_Bool
elm_genlist_item_disabled_get(const Elm_Genlist_Item *it)
{
return it->disabled;
}
-/**
- * Sets the display only state of an item.
- *
- * A display only item cannot be selected or unselected. It is for
- * display only and not selecting or otherwise clicking, dragging
- * etc. by the user, thus finger size rules will not be applied to
- * this item.
- *
- * @param it The item
- * @param display_only The display only state
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_display_only_set(Elm_Genlist_Item *it,
Eina_Bool display_only)
it->wd->update_job = ecore_job_add(_update_job, it->wd);
}
-/**
- * Get the display only state of an item
- *
- * This gets the display only state of the given item.
- *
- * @param it The item
- * @return The display only state
- *
- * @ingroup Genlist
- */
EAPI Eina_Bool
elm_genlist_item_display_only_get(const Elm_Genlist_Item *it)
{
return it->display_only;
}
-/**
- * Show the given item
- *
- * This causes genlist to jump to the given item @p it and show it (by
- * scrolling), if it is not fully visible.
- *
- * @param it The item
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_show(Elm_Genlist_Item *it)
{
it->block->w, it->h);
}
-/**
- * Bring in the given item
- *
- * This causes genlist to jump to the given item @p it and show it (by
- * scrolling), if it is not fully visible. This may use animation to
- * do so and take a period of time
- *
- * @param it The item
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_bring_in(Elm_Genlist_Item *it)
{
it->block->w, it->h);
}
-/**
- * Show the given item at the top
- *
- * This causes genlist to jump to the given item @p it and show it (by
- * scrolling), if it is not fully visible.
- *
- * @param it The item
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_top_show(Elm_Genlist_Item *it)
{
it->block->w, oh);
}
-/**
- * Bring in the given item at the top
- *
- * This causes genlist to jump to the given item @p it and show it (by
- * scrolling), if it is not fully visible. This may use animation to
- * do so and take a period of time
- *
- * @param it The item
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_top_bring_in(Elm_Genlist_Item *it)
{
it->block->w, oh);
}
-/**
- * Show the given item at the middle
- *
- * This causes genlist to jump to the given item @p it and show it (by
- * scrolling), if it is not fully visible.
- *
- * @param it The item
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_middle_show(Elm_Genlist_Item *it)
{
it->h / 2, it->block->w, oh);
}
-/**
- * Bring in the given item at the middle
- *
- * This causes genlist to jump to the given item @p it and show it (by
- * scrolling), if it is not fully visible. This may use animation to
- * do so and take a period of time
- *
- * @param it The item
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_middle_bring_in(Elm_Genlist_Item *it)
{
it->block->w, oh);
}
-/**
- * Delete a given item
- *
- * This deletes the item from genlist and calls the genlist item del
- * class callback defined in the item class, if it is set. This clears all
- * subitems if it is a tree.
- *
- * @param it The item
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_del(Elm_Genlist_Item *it)
{
_item_del(it);
}
-/**
- * Set the data item from the genlist item
- *
- * This sets the data value passed on the elm_genlist_item_append() and
- * related item addition calls. This function will not call
- * elm_genlist_item_update() anymore. So call elm_genlist_item_update()
- * manually only when it's needed.
- *
- * @param it The item
- * @param data The new data pointer to set
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_data_set(Elm_Genlist_Item *it,
const void *data)
elm_widget_item_data_set(it, data);
}
-/**
- * Get the data item from the genlist item
- *
- * This returns the data value passed on the elm_genlist_item_append()
- * and related item addition calls and elm_genlist_item_data_set().
- *
- * @param it The item
- * @return The data pointer provided when created
- *
- * @ingroup Genlist
- */
EAPI void *
elm_genlist_item_data_get(const Elm_Genlist_Item *it)
{
return elm_widget_item_data_get(it);
}
-/**
- * Tells genlist to "orphan" icons fetchs by the item class
- *
- * This instructs genlist to release references to icons in the item,
- * meaning that they will no longer be managed by genlist and are
- * floating "orphans" that can be re-used elsewhere if the user wants
- * to.
- *
- * @param it The item
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_icons_orphan(Elm_Genlist_Item *it)
{
}
}
-/**
- * Get the real evas object of the genlist item
- *
- * This returns the actual evas object used for the specified genlist
- * item. This may be NULL as it may not be created, and may be deleted
- * at any time by genlist. Do not modify this object (move, resize,
- * show, hide etc.) as genlist is controlling it. This function is for
- * querying, emitting custom signals or hooking lower level callbacks
- * for events. Do not delete this object under any circumstances.
- *
- * @param it The item
- * @return The object pointer
- *
- * @ingroup Genlist
- */
EAPI const Evas_Object *
elm_genlist_item_object_get(const Elm_Genlist_Item *it)
{
return it->base.view;
}
-/**
- * Update the contents of an item
- *
- * This updates an item by calling all the item class functions again
- * to get the icons, labels and states. Use this when the original
- * item data has changed and the changes are desired to be reflected.
- *
- * @param it The item
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_update(Elm_Genlist_Item *it)
{
it->wd->update_job = ecore_job_add(_update_job, it->wd);
}
-/**
- * Update the item class of an item
- *
- * @param it The item
- * @parem itc The item class for the item
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_item_class_update(Elm_Genlist_Item *it,
const Elm_Genlist_Item_Class *itc)
eina_stringshare_del(data);
}
-/**
- * Set the text to be shown in the genlist item.
- *
- * @param item Target item
- * @param text The text to set in the content
- *
- * Setup the text as tooltip to object. The item can have only one
- * tooltip, so any previous tooltip data is removed.
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_tooltip_text_set(Elm_Genlist_Item *item,
const char *text)
_elm_genlist_item_label_del_cb);
}
-/**
- * Set the content to be shown in the tooltip item
- *
- * Setup the tooltip to item. The item can have only one tooltip, so
- * any previous tooltip data is removed. @p func(with @p data) will be
- * called every time that need to show the tooltip and it should return a
- * valid Evas_Object. This object is then managed fully by tooltip
- * system and is deleted when the tooltip is gone.
- *
- * @param item the genlist item being attached by a tooltip.
- * @param func the function used to create the tooltip contents.
- * @param data what to provide to @a func as callback data/context.
- * @param del_cb called when data is not needed anymore, either when
- * another callback replaces @func, the tooltip is unset with
- * elm_genlist_item_tooltip_unset() or the owner @a item
- * dies. This callback receives as the first parameter the
- * given @a data, and @c event_info is the item.
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_tooltip_content_cb_set(Elm_Genlist_Item *item,
Elm_Tooltip_Item_Content_Cb func,
if (del_cb) del_cb((void *)data, NULL, NULL);
}
-/**
- * Unset tooltip from item
- *
- * @param item genlist item to remove previously set tooltip.
- *
- * Remove tooltip from item. The callback provided as del_cb to
- * elm_genlist_item_tooltip_content_cb_set() will be called to notify
- * it is not used anymore.
- *
- * @see elm_genlist_item_tooltip_content_cb_set()
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_tooltip_unset(Elm_Genlist_Item *item)
{
elm_genlist_item_tooltip_style_set(item, NULL);
}
-/**
- * Sets a different style for this item tooltip.
- *
- * @note before you set a style you should define a tooltip with
- * elm_genlist_item_tooltip_content_cb_set() or
- * elm_genlist_item_tooltip_text_set()
- *
- * @param item genlist item with tooltip already set.
- * @param style the theme style to use (default, transparent, ...)
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_tooltip_style_set(Elm_Genlist_Item *item,
const char *style)
if (item->base.view) elm_widget_item_tooltip_style_set(item, style);
}
-/**
- * Get the style for this item tooltip.
- *
- * @param item genlist item with tooltip already set.
- * @return style the theme style in use, defaults to "default". If the
- * object does not have a tooltip set, then NULL is returned.
- *
- * @ingroup Genlist
- */
EAPI const char *
elm_genlist_item_tooltip_style_get(const Elm_Genlist_Item *item)
{
return item->tooltip.free_size;
}
-/**
- * Set the cursor to be shown when mouse is over the genlist item
- *
- * @param item Target item
- * @param cursor the cursor name to be used.
- *
- * @see elm_object_cursor_set()
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_cursor_set(Elm_Genlist_Item *item,
const char *cursor)
if (item->base.view) elm_widget_item_cursor_set(item, cursor);
}
-/**
- * Get the cursor to be shown when mouse is over the genlist item
- *
- * @param item genlist item with cursor already set.
- * @return the cursor name.
- *
- * @ingroup Genlist
- */
EAPI const char *
elm_genlist_item_cursor_get(const Elm_Genlist_Item *item)
{
return elm_widget_item_cursor_get(item);
}
-/**
- * Unset the cursor to be shown when mouse is over the genlist item
- *
- * @param item Target item
- *
- * @see elm_object_cursor_unset()
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_cursor_unset(Elm_Genlist_Item *item)
{
item->mouse_cursor = NULL;
}
-/**
- * Sets a different style for this item cursor.
- *
- * @note before you set a style you should define a cursor with
- * elm_genlist_item_cursor_set()
- *
- * @param item genlist item with cursor already set.
- * @param style the theme style to use (default, transparent, ...)
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_cursor_style_set(Elm_Genlist_Item *item,
const char *style)
elm_widget_item_cursor_style_set(item, style);
}
-/**
- * Get the style for this item cursor.
- *
- * @param item genlist item with cursor already set.
- * @return style the theme style in use, defaults to "default". If the
- * object does not have a cursor set, then NULL is returned.
- *
- * @ingroup Genlist
- */
EAPI const char *
elm_genlist_item_cursor_style_get(const Elm_Genlist_Item *item)
{
return elm_widget_item_cursor_style_get(item);
}
-/**
- * Set if the cursor set should be searched on the theme or should use
- * the provided by the engine, only.
- *
- * @note before you set if should look on theme you should define a
- * cursor with elm_object_cursor_set(). By default it will only look
- * for cursors provided by the engine.
- *
- * @param item widget item with cursor already set.
- * @param engine_only boolean to define it cursors should be looked
- * only between the provided by the engine or searched on widget's
- * theme as well.
- *
- * @ingroup Genlist
- */
EAPI void
elm_genlist_item_cursor_engine_only_set(Elm_Genlist_Item *item,
Eina_Bool engine_only)
elm_widget_item_cursor_engine_only_set(item, engine_only);
}
-/**
- * Get the cursor engine only usage for this item cursor.
- *
- * @param item widget item with cursor already set.
- * @return engine_only boolean to define it cursors should be looked
- * only between the provided by the engine or searched on widget's
- * theme as well. If the object does not have a cursor set, then
- * EINA_FALSE is returned.
- *
- * @ingroup Genlist
- */
EAPI Eina_Bool
elm_genlist_item_cursor_engine_only_get(const Elm_Genlist_Item *item)
{