More documentation, simplification and grouping. Some of these changes are themselves going to require polishing, but the docs are now a little bit more organised.

SVN revision: 11235
This commit is contained in:
ncn 2004-08-16 05:13:25 +00:00 committed by ncn
parent a0e8259d56
commit e8ab7668e0
8 changed files with 273 additions and 142 deletions

View File

@ -84,6 +84,12 @@ evas_object_clippers_was_visible(Evas_Object *obj)
/* public functions */
/**
* @defgroup Evas_Clip_Group Clip Functions
*
* Functions that manage the clipping of objects by other objects.
*/
/**
* Clip one object to another.
* @param obj The object to be clipped
@ -129,6 +135,8 @@ evas_object_clippers_was_visible(Evas_Object *obj)
* evas_object_clip_set(obj, clipper);
* evas_object_show(clipper);
* @endcode
*
* @ingroup Evas_Clip_Group
*/
void
evas_object_clip_set(Evas_Object *obj, Evas_Object *clip)
@ -192,6 +200,7 @@ evas_object_clip_set(Evas_Object *obj, Evas_Object *clip)
* if (clipper) evas_object_show(clipper);
* @endcode
*
* @ingroup Evas_Clip_Group
*/
Evas_Object *
evas_object_clip_get(Evas_Object *obj)
@ -227,6 +236,7 @@ evas_object_clip_get(Evas_Object *obj)
* }
* @endcode
*
* @ingroup Evas_Clip_Group
*/
void
evas_object_clip_unset(Evas_Object *obj)
@ -296,7 +306,7 @@ evas_object_clip_unset(Evas_Object *obj)
* }
* }
* @endcode
*
* @ingroup Evas_Clip_Group
*/
const Evas_List *
evas_object_clipees_get(Evas_Object *obj)

View File

@ -60,6 +60,12 @@ evas_event_list_copy(Evas_List *list)
}
/* public functions */
/**
* @defgroup Evas_Event_Freezing_Group Evas Event Freezing Functions
*
* Functions that deal with the freezing of event processing of an evas.
*/
/**
* Freeze alll event processing
* @param e The canvas to freeze event processing on
@ -79,6 +85,7 @@ evas_event_list_copy(Evas_List *list)
* evas_object_resize(object, 200, 200);
* evas_event_thaw(evas);
* @endcode
* @ingroup Evas_Event_Freezing_Group
*/
void
evas_event_freeze(Evas *e)
@ -99,7 +106,7 @@ evas_event_freeze(Evas *e)
* to be evaluated.
*
* See evas_event_freeze() for an example.
*
* @ingroup Evas_Event_Freezing_Group
*/
void
evas_event_thaw(Evas *e)
@ -128,6 +135,7 @@ evas_event_thaw(Evas *e)
*
* while (evas_event_freeze_get(evas) > 0) evas_event_thaw(evas);
* @endcode
* @ingroup Evas_Event_Freezing_Group
*/
int
evas_event_freeze_get(Evas *e)

View File

@ -126,7 +126,8 @@ evas_object_gradient_color_add(Evas_Object *obj, int r, int g, int b, int a, int
/**
* Deletes all colours set for the given evas gradient object.
* @param obj The given evas gradient object.
* @param obj The given evas gradient object.
* @ingroup Evas_Object_Gradient_Group
*/
void
evas_object_gradient_colors_clear(Evas_Object *obj)
@ -153,7 +154,7 @@ evas_object_gradient_colors_clear(Evas_Object *obj)
* from vertical.
* @param obj The given evas gradient object.
* @param angle Angle in degrees. Can be negative.
* @ingroup Evas_Object_Gradient
* @ingroup Evas_Object_Gradient_Group
*/
void
evas_object_gradient_angle_set(Evas_Object *obj, Evas_Angle angle)
@ -178,7 +179,7 @@ evas_object_gradient_angle_set(Evas_Object *obj, Evas_Angle angle)
* clockwise from the vertical.
* @param obj The given evas gradient object.
* @return The current angle if successful. @c 0.0 otherwise.
* @ingroup Evas_Object_Gradient
* @ingroup Evas_Object_Gradient_Group
*/
Evas_Angle
evas_object_gradient_angle_get(Evas_Object *obj)

View File

@ -62,10 +62,16 @@ static Evas_Object_Func object_func =
/* it has no other api calls as all properties are standard */
/**
* To be documented.
* @defgroup Evas_Line_Group Line Functions
*
* FIXME: To be fixed.
*
* Functions used to deal with evas line objects.
*/
/**
* Adds a new evas line object to the given evas.
* @param e The given evas.
* @return The new evas line object.
* @ingroup Evas_Line_Group
*/
Evas_Object *
evas_object_line_add(Evas *e)
@ -82,10 +88,13 @@ evas_object_line_add(Evas *e)
}
/**
* To be documented.
*
* FIXME: To be fixed.
*
* Sets the coordinates of the end points of the given evas line object.
* @param obj The given evas line object.
* @param x1 The X coordinate of the first point.
* @param y1 The Y coordinate of the first point.
* @param x2 The X coordinate of the second point.
* @param y2 The Y coordinate of the second point.
* @ingroup Evas_Line_Group
*/
void
evas_object_line_xy_set(Evas_Object *obj, Evas_Coord x1, Evas_Coord y1, Evas_Coord x2, Evas_Coord y2)
@ -154,10 +163,17 @@ evas_object_line_xy_set(Evas_Object *obj, Evas_Coord x1, Evas_Coord y1, Evas_Coo
}
/**
* To be documented.
*
* FIXME: To be fixed.
*
* Retrieves the coordinates of the end points of the given evas line object.
* @param obj The given line object.
* @param x1 Pointer to an integer in which to store the X coordinate of the
* first end point.
* @param y1 Pointer to an integer in which to store the Y coordinate of the
* first end point.
* @param x2 Pointer to an integer in which to store the X coordinate of the
* second end point.
* @param y2 Pointer to an integer in which to store the Y coordinate of the
* second end point.
* @ingroup Evas_Line_Group
*/
void
evas_object_line_xy_get(Evas_Object *obj, Evas_Coord *x1, Evas_Coord *y1, Evas_Coord *x2, Evas_Coord *y2)

View File

@ -396,7 +396,7 @@ evas_object_was_opaque(Evas_Object *obj)
/* routines apps will call */
/**
* @defgroup Evas_Object Evas Object Functions
* @defgroup Evas_Object_Group Generic Object Functions
*
* Functions that manipulate generic evas objects.
*/
@ -408,7 +408,8 @@ evas_object_was_opaque(Evas_Object *obj)
* If the object currently has the focus, its 'focus out' callback is
* also called.
*
* @param obj The given evas object.
* @param obj The given evas object.
* @ingroup Evas_Object_Group
*/
void
evas_object_del(Evas_Object *obj)
@ -444,7 +445,7 @@ evas_object_del(Evas_Object *obj)
* @param obj The given evas object.
* @param x X position to move the object to, in canvas units.
* @param y Y position to move the object to, in canvas units.
* @ingroup Evas_Object
* @ingroup Evas_Object_Group
*/
void
evas_object_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
@ -497,7 +498,7 @@ evas_object_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
* @param obj The given evas object.
* @param w The new width of the evas object.
* @param h The new height of the evas object.
* @ingroup Evas_Object
* @ingroup Evas_Object_Group
*/
void
evas_object_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h)
@ -546,10 +547,21 @@ evas_object_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h)
}
/**
* To be documented.
* Retrieves the position and rectangular size of the given evas object.
*
* FIXME: To be fixed.
* Note that if any of @p x, @p y, @p w or @p h are @c NULL, the @c NULL
* parameters are ignored.
*
* @param obj The given evas object.
* @param x Pointer to an integer in which to store the X coordinate of
* the object.
* @param y Pointer to an integer in which to store the Y coordinate of
* the object.
* @param w Pointer to an integer in which to store the width of the
* object.
* @param h Pointer to an integer in which to store the height of the
* object.
* @ingroup Evas_Object_Group
*/
void
evas_object_geometry_get(Evas_Object *obj, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h)
@ -570,10 +582,15 @@ evas_object_geometry_get(Evas_Object *obj, Evas_Coord *x, Evas_Coord *y, Evas_Co
}
/**
* To be documented.
* @defgroup Evas_Object_Visibility_Group Generic Object Visibility Functions
*
* FIXME: To be fixed.
*
* Functions that deal with the visibility of evas objects.
*/
/**
* Makes the given evas object visible.
* @param obj The given evas object.
* @ingroup Evas_Object_Visibility_Group
*/
void
evas_object_show(Evas_Object *obj)
@ -612,10 +629,9 @@ evas_object_show(Evas_Object *obj)
}
/**
* To be documented.
*
* FIXME: To be fixed.
*
* Makes the given evas object invisible.
* @param obj The given evas object.
* @ingroup Evas_Object_Visibility_Group
*/
void
evas_object_hide(Evas_Object *obj)
@ -675,10 +691,10 @@ evas_object_hide(Evas_Object *obj)
}
/**
* To be documented.
*
* FIXME: To be fixed.
*
* Retrieves whether or not the given evas object is visible.
* @param obj The given evas object.
* @return @c 1 if the object is visible. @c 0 otherwise.
* @ingroup Evas_Object_Visibility_Group
*/
Evas_Bool
evas_object_visible_get(Evas_Object *obj)
@ -691,10 +707,13 @@ evas_object_visible_get(Evas_Object *obj)
}
/**
* To be documented.
*
* FIXME: To be fixed.
*
* Sets the general colour of the given evas object to the given colour.
* @param obj The given evas object.
* @param r The red component of the given colour.
* @param g The green component of the given colour.
* @param b The blue component of the given colour.
* @param a The alpha component of the given colour.
* @ingroup Evas_Object_Group
*/
void
evas_object_color_set(Evas_Object *obj, int r, int g, int b, int a)
@ -725,10 +744,21 @@ evas_object_color_set(Evas_Object *obj, int r, int g, int b, int a)
}
/**
* To be documented.
* Retrieves the general colour of the given evas object.
*
* FIXME: To be fixed.
*
* Note that if any of @p r, @p g, @p b or @p a are @c NULL, then the
* @c NULL parameters are ignored.
*
* @param obj The given evas object.
* @param r Pointer to an integer in which to store the red component of
* the colour.
* @param g Pointer to an integer in which to store the green component of
* the colour.
* @param b Pointer to an integer in which to store the blue component of
* the colour.
* @param a Pointer to an integer in which to store the alpha component of
* the colour.
* @ingroup Evas_Object_Group
*/
void
evas_object_color_get(Evas_Object *obj, int *r, int *g, int *b, int *a)
@ -749,10 +779,10 @@ evas_object_color_get(Evas_Object *obj, int *r, int *g, int *b, int *a)
}
/**
* To be documented.
*
* FIXME: To be fixed.
*
* Retrieves the evas that the given evas object is on.
* @param obj The given evas object.
* @return The evas that the object is on.
* @ingroup Evas_Object_Group
*/
Evas *
evas_object_evas_get(Evas_Object *obj)
@ -764,11 +794,18 @@ evas_object_evas_get(Evas_Object *obj)
return obj->layer->evas;
}
/**
* @defgroup Evas_Object_Finders Object Finder Functions
*
* Functions that determine what evas objects are at a given location
* or within a given region of an evas.
*/
/**
* To be documented.
*
* FIXME: To be fixed.
*
* @ingroup Evas_Object_Finders
*/
Evas_Object *
evas_object_top_at_xy_get(Evas *e, Evas_Coord x, Evas_Coord y, Evas_Bool include_pass_events_objects, Evas_Bool include_hidden_objects)
@ -808,7 +845,7 @@ evas_object_top_at_xy_get(Evas *e, Evas_Coord x, Evas_Coord y, Evas_Bool include
* To be documented.
*
* FIXME: To be fixed.
*
* @ingroup Evas_Object_Finders
*/
Evas_Object *
evas_object_top_at_pointer_get(Evas *e)
@ -820,7 +857,7 @@ evas_object_top_at_pointer_get(Evas *e)
* To be documented.
*
* FIXME: To be fixed.
*
* @ingroup Evas_Object_Finders
*/
Evas_Object *
evas_object_top_in_rectangle_get(Evas *e, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h, Evas_Bool include_pass_events_objects, Evas_Bool include_hidden_objects)
@ -864,7 +901,7 @@ evas_object_top_in_rectangle_get(Evas *e, Evas_Coord x, Evas_Coord y, Evas_Coord
* To be documented.
*
* FIXME: To be fixed.
*
* @ingroup Evas_Object_Finders
*/
Evas_List *
evas_objects_at_xy_get(Evas *e, Evas_Coord x, Evas_Coord y, Evas_Bool include_pass_events_objects, Evas_Bool include_hidden_objects)
@ -905,7 +942,7 @@ evas_objects_at_xy_get(Evas *e, Evas_Coord x, Evas_Coord y, Evas_Bool include_pa
* To be documented.
*
* FIXME: To be fixed.
*
* @ingroup Evas_Object_Finders
*/
Evas_List *
evas_objects_in_rectangle_get(Evas *e, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h, Evas_Bool include_pass_events_objects, Evas_Bool include_hidden_objects)
@ -947,10 +984,10 @@ evas_objects_in_rectangle_get(Evas *e, Evas_Coord x, Evas_Coord y, Evas_Coord w,
}
/**
* To be documented.
*
* FIXME: To be fixed.
*
* Retrieves the name of the type of the given evas object.
* @param obj The given object.
* @return The name.
* @ingroup Evas_Object_Group
*/
const char *
evas_object_type_get(Evas_Object *obj)

View File

@ -59,10 +59,16 @@ static Evas_Object_Func object_func =
/* it has no other api calls as all properties are standard */
/**
* To be documented.
* @defgroup Evas_Polygon_Group Polygon Functions
*
* FIXME: To be fixed.
*
* Functions that operate on evas polygon objects.
*/
/**
* Adds a new evas polygon object to the given evas.
* @param e The given evas.
* @return A new evas polygon object.
* @ingroup Evas_Polygon_Group
*/
Evas_Object *
evas_object_polygon_add(Evas *e)
@ -79,10 +85,11 @@ evas_object_polygon_add(Evas *e)
}
/**
* To be documented.
*
* FIXME: To be fixed.
*
* Adds the given point to the given evas polygon object.
* @param obj The given evas polygon object.
* @param x The X coordinate of the given point.
* @param y The Y coordinate of the given point.
* @ingroup Evas_Polygon_Group
*/
void
evas_object_polygon_point_add(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
@ -151,10 +158,9 @@ evas_object_polygon_point_add(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
}
/**
* To be documented.
*
* FIXME: To be fixed.
*
* Removes all of the points from the given evas polygon object.
* @param obj The given polygon object.
* @ingroup Evas_Polygon_Group
*/
void
evas_object_polygon_points_clear(Evas_Object *obj)

View File

@ -223,10 +223,17 @@ evas_hash_find(Evas_Hash *hash, const char *key)
return NULL;
}
/**
* @defgroup Evas_Hash_General_Group Hash General Functions
*
* Miscellaneous functions that operate on hash objects.
*/
/**
* Retrieves the number of buckets available in the given hash table.
* @param hash The given hash table.
* @return @c 256 if @p hash is not @c NULL. @c 0 otherwise.
* @ingroup Evas_Hash_General_Group
*/
int
evas_hash_size(Evas_Hash *hash)
@ -235,7 +242,10 @@ evas_hash_size(Evas_Hash *hash)
return 256;
}
/** @todo Complete documenting evas_hash.c */
/**
* @todo Complete polishing documentation for evas_hash.c. The
* functions' docs may be grouped, but they need some simplification.
*/
/**
* Free an entire hash table
@ -254,6 +264,7 @@ evas_hash_size(Evas_Hash *hash)
* evas_hash_free(hash);
* hash = NULL;
* @endcode
* @ingroup Evas_Hash_General_Group
*/
void
evas_hash_free(Evas_Hash *hash)
@ -308,6 +319,7 @@ evas_hash_free(Evas_Hash *hash)
* free(hash_fn_data);
* }
* @endcode
* @ingroup Evas_Hash_General_Group
*/
void
evas_hash_foreach(Evas_Hash *hash, Evas_Bool (*func) (Evas_Hash *hash, const char *key, void *data, void *fdata), const void *fdata)
@ -358,6 +370,7 @@ evas_hash_foreach(Evas_Hash *hash, Evas_Bool (*func) (Evas_Hash *hash, const cha
* printf("My Data inserted and successfully found.\n");
* }
* @endcode
* @ingroup Evas_Hash_General_Group
*/
int
evas_hash_alloc_error(void)

View File

@ -5,20 +5,17 @@
static int _evas_list_alloc_error = 0;
/**
* Append a data pointer to a linked list
* @param list The list handle to append @p data too
* @param data The data pointer to append to list @p list
* @return A new list handle to replace the old one
* @defgroup Evas_List_Data_Group Linked List Creation Functions
*
* Functions that add data to an Evas_List.
*/
/**
* Appends the given data to the given linked list.
*
* This function appends the data pointed to by @p data to the end of the linked
* list @p list, and returns a new list pointer to replace the old one. An
* empty list should start as a NULL pointer.
*
* In the event of a memory allocation failure, the old list pointer will be
* returned and the application should use evas_list_alloc_error() to determine
* if the allocation failed and sensibly recover from this condition.
*
* Example:
* The following example code demonstrates how to ensure that the
* given data has been successfully appended.
*
* @code
* Evas_List *list = NULL;
* extern void *my_data;
@ -30,6 +27,14 @@ static int _evas_list_alloc_error = 0;
* exit(-1);
* }
* @endcode
*
* @param list The given list. If @c NULL is given, then a new list
* is created.
* @param data The data to append.
* @return A new list pointer that should be used in place of the one
* given to this function if successful. Otherwise, the old
* pointer is returned.
* @ingroup Evas_List_Data_Group
*/
Evas_List *
evas_list_append(Evas_List *list, const void *data)
@ -79,18 +84,10 @@ evas_list_append(Evas_List *list, const void *data)
}
/**
* Prepend a data pointer to a linked list
* @param list The list handle to prepend @p data too
* @param data The data pointer to prepend to list @p list
* @return A new list handle to replace the old one
*
* This function prepends the data pointed to by @p data to the start of the linked
* list @p list, and returns a new list pointer to replace the old one. An
* empty list should start as a NULL pointer.
*
* In the event of a memory allocation failur, the old list pointer will be
* returned and the application should use evas_list_alloc_error() to determine
* if the allocation failed and sensibly recover from this condition.
* Prepends the given data to the given linked list.
*
* The following example code demonstrates how to ensure that the
* given data has been successfully prepended.
*
* Example:
* @code
@ -104,6 +101,13 @@ evas_list_append(Evas_List *list, const void *data)
* exit(-1);
* }
* @endcode
*
* @param list The given list.
* @param data The given data.
* @return A new list pointer that should be used in place of the one
* given to this function, if successful. Otherwise, the old
* pointer is returned.
* @ingroup Evas_List_Data_Group
*/
Evas_List *
evas_list_prepend(Evas_List *list, const void *data)
@ -135,27 +139,15 @@ evas_list_prepend(Evas_List *list, const void *data)
}
/**
* Append a data pointer to a linked list after the memeber specified
* @param list The list handle to append @p data too
* @param data The data pointer to append to list @p list after @p relative
* @param relative The data pointer after which to insert @p data
* @return A new list handle to replace the old one
* Inserts the given data into the given linked list after the specified data.
*
* If @p relative is not in the list, @p data is appended to the end of the
* list. If there are multiple instances of @p relative in the list,
* @p data is inserted after the first instance.
*
* This function appends the data pointed to by @p data after the position in
* of the list member whose data pointer is @p relative, in the list @p list,
* and returns a new list pointer to replace the old one. An empty list
* should start as a NULL pointer.
*
* If no member in the list has a data pointer of @p relative, the item is
* appended to the very end of the list. If there are multiple members of the
* list with the data pointer @p relative, the @p data item is inserted after
* the first instance of the member @p relative in the list.
*
* In the event of a memory allocation failure, the old list pointer will be
* returned and the application should use evas_list_alloc_error() to determine
* if the allocation failed and sensibly recover from this condition.
*
* Example:
* The following example code demonstrates how to ensure that the
* given data has been successfully inserted.
*
* @code
* Evas_List *list = NULL;
* extern void *my_data;
@ -174,6 +166,14 @@ evas_list_prepend(Evas_List *list, const void *data)
* exit(-1);
* }
* @endcode
*
* @param list The given linked list.
* @param data The given data.
* @param relative The data to insert after.
* @return A new list pointer that should be used in place of the one
* given to this function if successful. Otherwise, the old pointer
* is returned.
* @ingroup Evas_List_Data_Group
*/
Evas_List *
evas_list_append_relative(Evas_List *list, const void *data, const void *relative)
@ -218,22 +218,17 @@ evas_list_append_relative(Evas_List *list, const void *data, const void *relativ
* @param data The data pointer to prepend to list @p list before @p relative
* @param relative The data pointer before which to insert @p data
* @return A new list handle to replace the old one
* Inserts the given data into the given linked list before the member
* specified.
*
* If @p relative is not in the list, @p data is prepended to the
* start of the list. If there are multiple instances of @p relative
* in the list, @p data is inserted before the first instance.
*
* This function prepends the data pointed to by @p data before the position in
* of the list member whose data pointer is @p relative, in the list @p list,
* and returns a new list pointer to replace the old one. An empty list
* should start as a NULL pointer.
*
* If no member in the list has a data pointer of @p relative, the item is
* prepended to the very start of the list. If there are multiple members of the
* list with the data pointer @p relative, the @p data item is inserted before
* the first instance of the member @p relative in the list.
*
* In the event of a memory allocation failure, the old list pointer will be
* returned and the application should use evas_list_alloc_error() to determine
* if the allocation failed and sensibly recover from this condition.
*
* Example:
* The following code example demonstrates how to ensure that the
* given data has been successfully inserted.
*
* @code
* Evas_List *list = NULL;
* extern void *my_data;
@ -252,6 +247,14 @@ evas_list_append_relative(Evas_List *list, const void *data, const void *relativ
* exit(-1);
* }
* @endcode
*
* @param list The given linked list.
* @param data The given data.
* @param relative The data to insert before.
* @return A new list pointer that should be used in place of the one
* given to this function if successful. Otherwise the old pointer
* is returned.
* @ingroup Evas_List_Data_Group
*/
Evas_List *
evas_list_prepend_relative(Evas_List *list, const void *data, const void *relative)
@ -295,24 +298,21 @@ evas_list_prepend_relative(Evas_List *list, const void *data, const void *relati
}
/**
* Remove a specified member from a list
* @param list The list handle to remove @p data from
* @param data The memebr to find and remove
* @return A new list handle to replace the old one
* @defgroup Evas_List_Remove_Group Linked List Remove Functions
*
* Functions that remove data from linked lists.
*/
/**
* Removes the first instance of the specified data from the given list.
*
* Calling this function finds the first instance of the member whose data
* pointer is @p data in the list @p list and removed that member from the
* the list. An empty list should start as a NULL pointer.
*
* If no member is found that matches, nothing is done.
*
* Example:
* @code
* extern Evas_List *list;
* extern void *my_data;
*
* list = evas_list_remove(list, my_data);
* @endcode
* If the specified data is not in the given list, nothing is done.
*
* @param list The given list.
* @param data The specified data.
* @return A new list pointer that should be used in place of the one
* passed to this functions.
* @ingroup Evas_List_Remove_Group
*/
Evas_List *
evas_list_remove(Evas_List *list, const void *data)
@ -328,6 +328,8 @@ evas_list_remove(Evas_List *list, const void *data)
}
/**
* Removes the specified data
*
* Remove a specified member from a list
* @param list The list handle to remove @p remove_list from
* @param remove_list The list node which is to be removed
@ -351,6 +353,7 @@ evas_list_remove(Evas_List *list, const void *data)
* }
* }
* @endcode
* @ingroup Evas_List_Remove_Group
*/
Evas_List *
evas_list_remove_list(Evas_List *list, Evas_List *remove_list)
@ -377,6 +380,12 @@ evas_list_remove_list(Evas_List *list, Evas_List *remove_list)
return return_l;
}
/**
* @defgroup Evas_List_Find_Group Linked List Find Functions
*
* Functions that find specified data in a linked list.
*/
/**
* Find a member of a list and return the member
* @param list The list handle to search for @p data
@ -397,6 +406,7 @@ evas_list_remove_list(Evas_List *list, Evas_List *remove_list)
* printf("Found member %p\n", my_data);
* }
* @endcode
* @ingroup Evas_List_Find_Group
*/
void *
evas_list_find(Evas_List *list, const void *data)
@ -433,6 +443,7 @@ evas_list_find(Evas_List *list, const void *data)
* printf("Found member %p\n", found_node->data);
* }
* @endcode
* @ingroup Evas_List_Find_Group
*/
Evas_List *
evas_list_find_list(Evas_List *list, const void *data)
@ -459,6 +470,7 @@ evas_list_find_list(Evas_List *list, const void *data)
*
* list = evas_list_free(list);
* @endcode
* @ingroup Evas_List_Remove_Group
*/
Evas_List *
evas_list_free(Evas_List *list)
@ -474,6 +486,12 @@ evas_list_free(Evas_List *list)
return NULL;
}
/**
* @defgroup Evas_List_Traverse_Group Linked List Traverse Functions
*
* Functions that you can use to traverse a linked list.
*/
/**
* Get the last list node in the list
* @param list The list to get the last list node from
@ -497,6 +515,7 @@ evas_list_free(Evas_List *list)
* printf("%p\n", l->data);
* }
* @endcode
* @ingroup Evas_List_Traverse_Group
*/
Evas_List *
evas_list_last(Evas_List *list)
@ -524,6 +543,7 @@ evas_list_last(Evas_List *list)
* printf("%p\n", l->data);
* }
* @endcode
* @ingroup Evas_List_Traverse_Group
*/
Evas_List *
evas_list_next(Evas_List *list)
@ -552,6 +572,7 @@ evas_list_next(Evas_List *list)
* printf("%p\n", l->data);
* }
* @endcode
* @ingroup Evas_List_Traverse_Group
*/
Evas_List *
evas_list_prev(Evas_List *list)
@ -560,6 +581,12 @@ evas_list_prev(Evas_List *list)
return list->prev;
}
/**
* @defgroup Evas_List_General_Group Linked List General Functions
*
* Miscellaneous functions that work on linked lists.
*/
/**
* Get the list node data member
* @param list The list node to get the data member of
@ -579,6 +606,7 @@ evas_list_prev(Evas_List *list)
* printf("%p\n", evas_list_data(l));
* }
* @endcode
* @ingroup Evas_List_General_Group
*/
void *
evas_list_data(Evas_List *list)
@ -604,6 +632,7 @@ evas_list_data(Evas_List *list)
*
* printf("The list has %i members\n", evas_list_count(list));
* @endcode
* @ingroup Evas_List_General_Group
*/
int
evas_list_count(Evas_List *list)
@ -632,6 +661,7 @@ evas_list_count(Evas_List *list)
* if (data)
* printf("Element number %i has data %p\n", number, data);
* @endcode
* @ingroup Evas_List_Find_Group
*/
void *
evas_list_nth(Evas_List *list, int n)
@ -667,6 +697,7 @@ evas_list_nth(Evas_List *list, int n)
* if (nth_list)
* printf("Element number %i has data %p\n", number, nth_list->data);
* @endcode
* @ingroup Evas_List_Find_Group
*/
Evas_List *
evas_list_nth_list(Evas_List *list, int n)
@ -682,6 +713,12 @@ evas_list_nth_list(Evas_List *list, int n)
return NULL;
}
/**
* @defgroup Evas_List_Ordering_Group Linked List Ordering Functions
*
* Functions that change the ordering of data in a linked list.
*/
/**
* Reverse all the elements in the list
* @param list The list to reverse
@ -696,6 +733,7 @@ evas_list_nth_list(Evas_List *list, int n)
*
* list = evas_list_reverse(list);
* @endcode
* @ingroup Evas_List_Ordering_Group
*/
Evas_List *
evas_list_reverse(Evas_List *list)
@ -798,6 +836,7 @@ evas_list_combine(Evas_List *l, Evas_List *ll, int (*func)(void *, void*))
* exit(-1);
* }
* @endcode
* @ingroup Evas_List_Ordering_Group
*/
Evas_List *
evas_list_sort(Evas_List *list, int size, int (*func)(void *, void *))
@ -847,6 +886,7 @@ evas_list_sort(Evas_List *list, int size, int (*func)(void *, void *))
* exit(-1);
* }
* @endcode
* @ingroup Evas_List_General_Group
*/
int
evas_list_alloc_error(void)