From a6d2d983b863dc2a85906e7d3c3b37c92820e74e Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Sat, 16 Sep 2023 21:56:05 -0400 Subject: [PATCH] Add gsk_bounding_box_get_corner This will be used in the following commits. --- gsk/gskboundingboxprivate.h | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/gsk/gskboundingboxprivate.h b/gsk/gskboundingboxprivate.h index 629ffd9bfb..687257bc25 100644 --- a/gsk/gskboundingboxprivate.h +++ b/gsk/gskboundingboxprivate.h @@ -112,4 +112,32 @@ gsk_bounding_box_union (const GskBoundingBox *a, gsk_bounding_box_init (res, &min, &max); } -G_END_DECLS +static inline void +gsk_bounding_box_get_corner (const GskBoundingBox *b, + GskCorner c, + graphene_point_t *p) +{ + switch (c) + { + case GSK_CORNER_TOP_LEFT: + *p = b->min; + break; + + case GSK_CORNER_TOP_RIGHT: + p->x = b->max.x; + p->y = b->min.y; + break; + + case GSK_CORNER_BOTTOM_RIGHT: + *p = b->max; + break; + + case GSK_CORNER_BOTTOM_LEFT: + p->x = b->min.x; + p->y = b->max.y; + break; + + default: + g_assert_not_reached (); + } +}