libgimbase: add gimp_value_array_copy()

This commit is contained in:
Michael Natterer 2023-05-21 01:09:57 +02:00
parent e020a6b3ca
commit 0c73d7df12
3 changed files with 22 additions and 0 deletions

View File

@ -205,6 +205,7 @@ EXPORTS
gimp_units_to_points
gimp_utf8_strtrim
gimp_value_array_append
gimp_value_array_copy
gimp_value_array_get_type
gimp_value_array_index
gimp_value_array_insert

View File

@ -250,6 +250,25 @@ gimp_value_array_new_from_types_valist (gchar **error_msg,
return value_array;
}
/**
* gimp_value_array_copy:
* @value_array: #GimpValueArray to copy
*
* Return an exact copy of a #GimpValueArray by duplicating all its values.
*
* Returns: a newly allocated #GimpValueArray.
*
* Since: 3.0
*/
GimpValueArray *
gimp_value_array_copy (const GimpValueArray *value_array)
{
g_return_val_if_fail (value_array != NULL, NULL);
return gimp_value_array_new_from_values (value_array->values,
value_array->n_values);
}
/**
* gimp_value_array_new_from_values:
* @values: (array length=n_values): The #GValue elements

View File

@ -53,6 +53,8 @@ GimpValueArray * gimp_value_array_new_from_values
(const GValue *values,
gint n_values);
GimpValueArray * gimp_value_array_copy (const GimpValueArray *value_array);
GimpValueArray * gimp_value_array_ref (GimpValueArray *value_array);
void gimp_value_array_unref (GimpValueArray *value_array);