app: add gimp_gradient_segment_range_get_n_segments()

... which returns the number of segments in a range.
This commit is contained in:
Ell 2017-08-01 13:38:15 -04:00
parent c5faf02759
commit 082f6a4122
2 changed files with 24 additions and 0 deletions

View File

@ -1155,6 +1155,25 @@ gimp_gradient_segment_get_coloring_type (GimpGradient *gradient,
return seg->color; return seg->color;
} }
gint
gimp_gradient_segment_range_get_n_segments (GimpGradient *gradient,
GimpGradientSegment *range_l,
GimpGradientSegment *range_r)
{
gint n_segments = 0;
g_return_val_if_fail (GIMP_IS_GRADIENT (gradient), 0);
g_return_val_if_fail (range_l != NULL, 0);
for (; range_l != range_r; range_l = range_l->next)
n_segments++;
if (range_r != NULL)
n_segments++;
return n_segments;
}
void void
gimp_gradient_segment_range_compress (GimpGradient *gradient, gimp_gradient_segment_range_compress (GimpGradient *gradient,
GimpGradientSegment *range_l, GimpGradientSegment *range_l,

View File

@ -199,6 +199,11 @@ gimp_gradient_segment_get_coloring_type (GimpGradient *gradient,
* If the second segment is NULL, these functions will process * If the second segment is NULL, these functions will process
* until the end of the string. * until the end of the string.
* */ * */
gint gimp_gradient_segment_range_get_n_segments
(GimpGradient *gradient,
GimpGradientSegment *range_l,
GimpGradientSegment *range_r);
void gimp_gradient_segment_range_compress (GimpGradient *gradient, void gimp_gradient_segment_range_compress (GimpGradient *gradient,
GimpGradientSegment *range_l, GimpGradientSegment *range_l,
GimpGradientSegment *range_r, GimpGradientSegment *range_r,