1 #ifndef __GSK_ROUNDED_RECT_PRIVATE_H__
2 #define __GSK_ROUNDED_RECT_PRIVATE_H__
3 
4 #include "gskroundedrect.h"
5 
6 #include <cairo.h>
7 
8 G_BEGIN_DECLS
9 
10 #define GSK_ROUNDED_RECT_INIT_FROM_RECT(_r)   \
11   (GskRoundedRect) { .bounds = _r, \
12                      .corner = { \
13                         GRAPHENE_SIZE_INIT(0, 0),\
14                         GRAPHENE_SIZE_INIT(0, 0),\
15                         GRAPHENE_SIZE_INIT(0, 0),\
16                         GRAPHENE_SIZE_INIT(0, 0),\
17                      }}
18 
19 
20 void                     gsk_rounded_rect_scale_affine          (GskRoundedRect       *dest,
21                                                                  const GskRoundedRect *src,
22                                                                  float                 scale_x,
23                                                                  float                 scale_y,
24                                                                  float                 dx,
25                                                                  float                 dy);
26 
27 gboolean                 gsk_rounded_rect_is_circular           (const GskRoundedRect     *self);
28 
29 void                     gsk_rounded_rect_path                  (const GskRoundedRect     *self,
30                                                                  cairo_t                  *cr);
31 void                     gsk_rounded_rect_to_float              (const GskRoundedRect     *self,
32                                                                  float                     rect[12]);
33 
34 gboolean                 gsk_rounded_rect_equal                 (gconstpointer             rect1,
35                                                                  gconstpointer             rect2) G_GNUC_PURE;
36 char *                   gsk_rounded_rect_to_string             (const GskRoundedRect     *self);
37 
38 
39 G_END_DECLS
40 
41 #endif /* __GSK_ROUNDED_RECT_PRIVATE_H__ */
42