--- a/libpurple/image.h Tue Oct 24 01:23:22 2023 -0500 +++ b/libpurple/image.h Tue Oct 24 02:02:49 2023 -0500 @@ -28,6 +28,8 @@ #include <glib-object.h> +#include "purpleversion.h" + #define PURPLE_TYPE_IMAGE purple_image_get_type() struct _PurpleImageClass { @@ -52,8 +54,10 @@ * This class also provides certain file-related features, like: friendly * filenames (not necessarily real filename for displaying); remote images * (which data is not yet loaded) or guessing file format from its header. + * + * Since: 3.0.0 */ - +PURPLE_AVAILABLE_IN_3_0 G_DECLARE_DERIVABLE_TYPE(PurpleImage, purple_image, PURPLE, IMAGE, GObject) /** @@ -63,7 +67,10 @@ * Loads a raw image data as a new #PurpleImage object. * * Returns: the new #PurpleImage. + * + * Since: 3.0.0 */ +PURPLE_AVAILABLE_IN_3_0 PurpleImage *purple_image_new_from_bytes(GBytes *bytes); /** @@ -77,7 +84,10 @@ * you access its data. * * Returns: the new #PurpleImage. + * + * Since: 3.0.0 */ +PURPLE_AVAILABLE_IN_3_0 PurpleImage *purple_image_new_from_file(const gchar *path, GError **error); /** @@ -91,7 +101,10 @@ * to g_memdup2() it first. * * Returns: the new #PurpleImage. + * + * Since: 3.0.0 */ +PURPLE_AVAILABLE_IN_3_0 PurpleImage *purple_image_new_from_data(const guint8 *data, gsize length); /** @@ -105,7 +118,10 @@ * to g_memdup2() it first. * * Returns: the new #PurpleImage. + * + * Since: 3.0.0 */ +PURPLE_AVAILABLE_IN_3_0 PurpleImage *purple_image_new_take_data(guint8 *data, gsize length); /** @@ -116,7 +132,10 @@ * Saves an @image to the disk. * * Returns: %TRUE if succeeded, %FALSE otherwise. + * + * Since: 3.0.0 */ +PURPLE_AVAILABLE_IN_3_0 gboolean purple_image_save(PurpleImage *image, const gchar *path); /** @@ -126,7 +145,10 @@ * Returns a new reference to the #GBytes that contains the image data. * * Returns: (transfer full): A #GBytes containing the image data. + * + * Since: 3.0.0 */ +PURPLE_AVAILABLE_IN_3_0 GBytes *purple_image_get_contents(PurpleImage *image); @@ -138,7 +160,10 @@ * really backed by an existing file. In the other case it returns %NULL. * * Returns: the physical path of the @image, or %NULL. + * + * Since: 3.0.0 */ +PURPLE_AVAILABLE_IN_3_0 const gchar *purple_image_get_path(PurpleImage *image); /** @@ -148,7 +173,10 @@ * Returns the size of @image's data. * * Returns: the size of data, or 0 in case of failure. + * + * Since: 3.0.0 */ +PURPLE_AVAILABLE_IN_3_0 gsize purple_image_get_data_size(PurpleImage *image); /** @@ -158,7 +186,10 @@ * Returns the pointer to the buffer containing image data. * * Returns: (transfer none): the @image data. + * + * Since: 3.0.0 */ +PURPLE_AVAILABLE_IN_3_0 gconstpointer purple_image_get_data(PurpleImage *image); /** @@ -168,7 +199,10 @@ * Guesses the @image format based on its contents. * * Returns: (transfer none): the file extension suitable for @image format. + * + * Since: 3.0.0 */ +PURPLE_AVAILABLE_IN_3_0 const gchar *purple_image_get_extension(PurpleImage *image); /** @@ -178,7 +212,10 @@ * Guesses the @image mime-type based on its contents. * * Returns: (transfer none): the mime-type suitable for @image format. + * + * Since: 3.0.0 */ +PURPLE_AVAILABLE_IN_3_0 const gchar *purple_image_get_mimetype(PurpleImage *image); /** @@ -190,7 +227,10 @@ * is SHA-1, because it may change in the future. * * Returns: (transfer none): the generated file name. + * + * Since: 3.0.0 */ +PURPLE_AVAILABLE_IN_3_0 const gchar *purple_image_generate_filename(PurpleImage *image); /** @@ -204,7 +244,10 @@ * * The provided @filename may either be a full path, or contain * filesystem-unfriendly characters, because it will be reformatted. + * + * Since: 3.0.0 */ +PURPLE_AVAILABLE_IN_3_0 void purple_image_set_friendly_filename(PurpleImage *image, const gchar *filename); /** @@ -219,7 +262,10 @@ * #purple_image_generate_filename. * * Returns: (transfer none): the friendly filename. + * + * Since: 3.0.0 */ +PURPLE_AVAILABLE_IN_3_0 const gchar *purple_image_get_friendly_filename(PurpleImage *image); G_END_DECLS