[gtk/wip/otte/lottie: 13/14] path: Make all private contour APIs take a GskContour
- From: Benjamin Otte <otte src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/wip/otte/lottie: 13/14] path: Make all private contour APIs take a GskContour
- Date: Mon, 30 Nov 2020 18:28:32 +0000 (UTC)
commit a870cb9184c718129a27cdd0a6298c3e7f2be6c0
Author: Benjamin Otte <otte redhat com>
Date: Mon Nov 30 18:05:49 2020 +0100
path: Make all private contour APIs take a GskContour
... instead of a path, index tuple.
gsk/gskpath.c | 31 ++++++++-----------------------
gsk/gskpathmeasure.c | 14 ++++++--------
gsk/gskpathprivate.h | 31 +++++++++++++------------------
3 files changed, 27 insertions(+), 49 deletions(-)
---
diff --git a/gsk/gskpath.c b/gsk/gskpath.c
index f4387bbf24..edaa71049c 100644
--- a/gsk/gskpath.c
+++ b/gsk/gskpath.c
@@ -1722,23 +1722,17 @@ gsk_contour_foreach (const GskContour *contour,
}
gpointer
-gsk_contour_init_measure (GskPath *path,
- gsize i,
- float tolerance,
- float *out_length)
+gsk_contour_init_measure (const GskContour *self,
+ float tolerance,
+ float *out_length)
{
- GskContour *self = path->contours[i];
-
return self->klass->init_measure (self, tolerance, out_length);
}
void
-gsk_contour_free_measure (GskPath *path,
- gsize i,
- gpointer data)
+gsk_contour_free_measure (const GskContour *self,
+ gpointer data)
{
- GskContour *self = path->contours[i];
-
self->klass->free_measure (self, data);
}
@@ -1751,21 +1745,17 @@ gsk_contour_get_start_end (const GskContour *self,
}
void
-gsk_contour_get_point (GskPath *path,
- gsize i,
+gsk_contour_get_point (const GskContour *self,
gpointer measure_data,
float distance,
graphene_point_t *pos,
graphene_vec2_t *tangent)
{
- GskContour *self = path->contours[i];
-
self->klass->get_point (self, measure_data, distance, pos, tangent);
}
gboolean
-gsk_contour_get_closest_point (GskPath *path,
- gsize i,
+gsk_contour_get_closest_point (const GskContour *self,
gpointer measure_data,
float tolerance,
const graphene_point_t *point,
@@ -1775,8 +1765,6 @@ gsk_contour_get_closest_point (GskPath *path,
float *out_offset,
graphene_vec2_t *out_tangent)
{
- GskContour *self = path->contours[i];
-
return self->klass->get_closest_point (self,
measure_data,
tolerance,
@@ -1799,14 +1787,11 @@ gsk_contour_add_segment (const GskContour *self,
}
int
-gsk_contour_get_winding (GskPath *path,
- gsize i,
+gsk_contour_get_winding (const GskContour *self,
gpointer measure_data,
const graphene_point_t *point,
gboolean *on_edge)
{
- GskContour *self = path->contours[i];
-
return self->klass->get_winding (self, measure_data, point, on_edge);
}
diff --git a/gsk/gskpathmeasure.c b/gsk/gskpathmeasure.c
index 4961b27f59..623ee02746 100644
--- a/gsk/gskpathmeasure.c
+++ b/gsk/gskpathmeasure.c
@@ -109,7 +109,7 @@ gsk_path_measure_new_with_tolerance (GskPath *path,
for (i = 0; i < n_contours; i++)
{
- self->measures[i].contour_data = gsk_contour_init_measure (path, i,
+ self->measures[i].contour_data = gsk_contour_init_measure (gsk_path_get_contour (path, i),
self->tolerance,
&self->measures[i].length);
self->length += self->measures[i].length;
@@ -157,7 +157,8 @@ gsk_path_measure_unref (GskPathMeasure *self)
for (i = 0; i < self->n_contours; i++)
{
- gsk_contour_free_measure (self->path, i, self->measures[i].contour_data);
+ gsk_contour_free_measure (gsk_path_get_contour (self->path, i),
+ self->measures[i].contour_data);
}
gsk_path_unref (self->path);
@@ -252,8 +253,7 @@ gsk_path_measure_get_point (GskPathMeasure *self,
distance = self->measures[i].length;
}
- gsk_contour_get_point (self->path,
- i,
+ gsk_contour_get_point (gsk_path_get_contour (self->path, i),
self->measures[i].contour_data,
distance,
pos,
@@ -345,8 +345,7 @@ gsk_path_measure_get_closest_point_full (GskPathMeasure *self,
for (i = 0; i < self->n_contours; i++)
{
- if (gsk_contour_get_closest_point (self->path,
- i,
+ if (gsk_contour_get_closest_point (gsk_path_get_contour (self->path, i),
self->measures[i].contour_data,
self->tolerance,
point,
@@ -456,8 +455,7 @@ gsk_path_measure_in_fill (GskPathMeasure *self,
for (i = 0; i < self->n_contours; i++)
{
- winding += gsk_contour_get_winding (self->path,
- i,
+ winding += gsk_contour_get_winding (gsk_path_get_contour (self->path, i),
self->measures[i].contour_data,
point,
&on_edge);
diff --git a/gsk/gskpathprivate.h b/gsk/gskpathprivate.h
index 550f49f1fc..c111bbdbaa 100644
--- a/gsk/gskpathprivate.h
+++ b/gsk/gskpathprivate.h
@@ -65,25 +65,21 @@ gboolean gsk_path_foreach_with_tolerance (GskPath
GskPathForeachFunc func,
gpointer user_data);
-GskContour * gsk_contour_dup (const GskContour *src);
-gpointer gsk_contour_init_measure (GskPath *path,
- gsize i,
- float tolerance,
- float *out_length);
-void gsk_contour_free_measure (GskPath *path,
- gsize i,
- gpointer data);
+GskContour * gsk_contour_dup (const GskContour *src);
+gpointer gsk_contour_init_measure (const GskContour *self,
+ float tolerance,
+ float *out_length);
+void gsk_contour_free_measure (const GskContour *self,
+ gpointer data);
void gsk_contour_get_start_end (const GskContour *self,
graphene_point_t *start,
graphene_point_t *end);
-void gsk_contour_get_point (GskPath *path,
- gsize i,
- gpointer measure_data,
- float distance,
- graphene_point_t *pos,
- graphene_vec2_t *tangent);
-gboolean gsk_contour_get_closest_point (GskPath *path,
- gsize i,
+void gsk_contour_get_point (const GskContour *self,
+ gpointer measure_data,
+ float distance,
+ graphene_point_t *pos,
+ graphene_vec2_t *tangent);
+gboolean gsk_contour_get_closest_point (const GskContour *self,
gpointer measure_data,
float tolerance,
const graphene_point_t *point,
@@ -92,8 +88,7 @@ gboolean gsk_contour_get_closest_point (GskPath
graphene_point_t *out_pos,
float *out_offset,
graphene_vec2_t *out_tangent);
-int gsk_contour_get_winding (GskPath *path,
- gsize i,
+int gsk_contour_get_winding (const GskContour *self,
gpointer measure_data,
const graphene_point_t *point,
gboolean *on_edge);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]