diff --git a/legacy/elementary/src/lib/Elementary.h.in b/legacy/elementary/src/lib/Elementary.h.in index 1bfc43aaaa..47b1b90dec 100644 --- a/legacy/elementary/src/lib/Elementary.h.in +++ b/legacy/elementary/src/lib/Elementary.h.in @@ -5777,6 +5777,17 @@ extern "C" { w, /**< Anchor geometry, relative to canvas */ h; /**< Anchor geometry, relative to canvas */ }; + /** + * @typedef Elm_Entry_Filter_Cb + * This callback type is used by entry filters to modify text. + * @param data The data specified as the last param when adding the filter + * @param entry The entry object + * @param text A pointer to the location of the text being filtered. This data can be modified, + * but any additional allocations must be managed by the user. + * @see elm_entry_text_filter_append + * @see elm_entry_text_filter_prepend + */ + typedef void (*Elm_Entry_Filter_Cb)(void *data, Evas_Object *entry, char **text); /** * This adds an entry to @p parent object. @@ -6210,7 +6221,7 @@ extern "C" { * @param func The function to use as text filter * @param data User data to pass to @p func */ - EAPI void elm_entry_text_filter_append(Evas_Object *obj, void (*func) (void *data, Evas_Object *entry, char **text), void *data) EINA_ARG_NONNULL(1, 2); + EAPI void elm_entry_text_filter_append(Evas_Object *obj, Elm_Entry_Filter_Cb func, void *data) EINA_ARG_NONNULL(1, 2); /** * Prepend a filter function for text insdrted in the entry * @@ -6221,7 +6232,7 @@ extern "C" { * @param func The function to use as text filter * @param data User data to pass to @p func */ - EAPI void elm_entry_text_filter_prepend(Evas_Object *obj, void (*func) (void *data, Evas_Object *entry, char **text), void *data) EINA_ARG_NONNULL(1, 2); + EAPI void elm_entry_text_filter_prepend(Evas_Object *obj, Elm_Entry_Filter_Cb func, void *data) EINA_ARG_NONNULL(1, 2); /** * Remove a filter from the list * @@ -6232,7 +6243,7 @@ extern "C" { * @param func The filter function to remove * @param data The user data passed when adding the function */ - EAPI void elm_entry_text_filter_remove(Evas_Object *obj, void (*func) (void *data, Evas_Object *entry, char **text), void *data) EINA_ARG_NONNULL(1, 2); + EAPI void elm_entry_text_filter_remove(Evas_Object *obj, Elm_Entry_Filter_Cb func, void *data) EINA_ARG_NONNULL(1, 2); /** * This converts a markup (HTML-like) string into UTF-8. * diff --git a/legacy/elementary/src/lib/elm_entry.c b/legacy/elementary/src/lib/elm_entry.c index 8977fcbdd6..870afee6e5 100644 --- a/legacy/elementary/src/lib/elm_entry.c +++ b/legacy/elementary/src/lib/elm_entry.c @@ -83,7 +83,7 @@ struct _Elm_Entry_Item_Provider struct _Elm_Entry_Text_Filter { - void (*func) (void *data, Evas_Object *entry, char **text); + Elm_Entry_Filter_Cb func; void *data; }; @@ -340,7 +340,7 @@ _delay_write(void *data) } static Elm_Entry_Text_Filter * -_filter_new(void (*func) (void *data, Evas_Object *entry, char **text), void *data) +_filter_new(Elm_Entry_Filter_Cb func, void *data) { Elm_Entry_Text_Filter *tf = ELM_NEW(Elm_Entry_Text_Filter); if (!tf) return NULL; @@ -2585,7 +2585,7 @@ elm_entry_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (void *dat } EAPI void -elm_entry_text_filter_append(Evas_Object *obj, void (*func) (void *data, Evas_Object *entry, char **text), void *data) +elm_entry_text_filter_append(Evas_Object *obj, Elm_Entry_Filter_Cb func, void *data) { Widget_Data *wd; Elm_Entry_Text_Filter *tf; @@ -2602,7 +2602,7 @@ elm_entry_text_filter_append(Evas_Object *obj, void (*func) (void *data, Evas_Ob } EAPI void -elm_entry_text_filter_prepend(Evas_Object *obj, void (*func) (void *data, Evas_Object *entry, char **text), void *data) +elm_entry_text_filter_prepend(Evas_Object *obj, Elm_Entry_Filter_Cb func, void *data) { Widget_Data *wd; Elm_Entry_Text_Filter *tf; @@ -2619,7 +2619,7 @@ elm_entry_text_filter_prepend(Evas_Object *obj, void (*func) (void *data, Evas_O } EAPI void -elm_entry_text_filter_remove(Evas_Object *obj, void (*func) (void *data, Evas_Object *entry, char **text), void *data) +elm_entry_text_filter_remove(Evas_Object *obj, Elm_Entry_Filter_Cb func, void *data) { Widget_Data *wd; Eina_List *l;