DEFINITION MODULE FOR "C" GskPath ; (* m2-GTK4 - GskPath: an immutable, conic-capable path. Mapped onto . *) FROM SYSTEM IMPORT ADDRESS; EXPORT UNQUALIFIED GskPath, gsk_path_foreach, gsk_path_get_bounds, gsk_path_get_closest_point, gsk_path_get_end_point, gsk_path_get_start_point, gsk_path_get_stroke_bounds, gsk_path_in_fill, gsk_path_is_closed, gsk_path_is_empty, gsk_path_print, gsk_path_ref, gsk_path_to_cairo, gsk_path_to_string, gsk_path_unref, gsk_path_parse; TYPE GskPath = ADDRESS; (* gboolean gsk_path_foreach(GskPath *self, GskPathForeachFlags flags, gpointer user_data) *) PROCEDURE gsk_path_foreach (self: GskPath; flags: CARDINAL; user_data: ADDRESS) : INTEGER; (* gboolean gsk_path_get_bounds(GskPath *self, graphene_rect_t *bounds) *) PROCEDURE gsk_path_get_bounds (self: GskPath; bounds: ADDRESS) : INTEGER; (* gboolean gsk_path_get_closest_point(GskPath *self, const graphene_point_t *point, float threshold, GskPathPoint *result, float *distance) *) PROCEDURE gsk_path_get_closest_point (self: GskPath; point: ADDRESS; threshold: SHORTREAL; result: ADDRESS; VAR distance: SHORTREAL) : INTEGER; (* gboolean gsk_path_get_end_point(GskPath *self, GskPathPoint *result) *) PROCEDURE gsk_path_get_end_point (self: GskPath; result: ADDRESS) : INTEGER; (* gboolean gsk_path_get_start_point(GskPath *self, GskPathPoint *result) *) PROCEDURE gsk_path_get_start_point (self: GskPath; result: ADDRESS) : INTEGER; (* gboolean gsk_path_get_stroke_bounds(GskPath *self, const GskStroke *stroke, graphene_rect_t *bounds) *) PROCEDURE gsk_path_get_stroke_bounds (self: GskPath; stroke: ADDRESS; bounds: ADDRESS) : INTEGER; (* gboolean gsk_path_in_fill(GskPath *self, const graphene_point_t *point, GskFillRule fill_rule) *) PROCEDURE gsk_path_in_fill (self: GskPath; point: ADDRESS; fill_rule: CARDINAL) : INTEGER; (* gboolean gsk_path_is_closed(GskPath *self) *) PROCEDURE gsk_path_is_closed (self: GskPath) : INTEGER; (* gboolean gsk_path_is_empty(GskPath *self) *) PROCEDURE gsk_path_is_empty (self: GskPath) : INTEGER; (* void gsk_path_print(GskPath *self, GString *string) *) PROCEDURE gsk_path_print (self: GskPath; string: ADDRESS); (* GskPath *gsk_path_ref(GskPath *self) *) PROCEDURE gsk_path_ref (self: GskPath) : ADDRESS; (* void gsk_path_to_cairo(GskPath *self, cairo_t *cr) *) PROCEDURE gsk_path_to_cairo (self: GskPath; cr: ADDRESS); (* char *gsk_path_to_string(GskPath *self) *) PROCEDURE gsk_path_to_string (self: GskPath) : ADDRESS; (* void gsk_path_unref(GskPath *self) *) PROCEDURE gsk_path_unref (self: GskPath); (* GskPath *gsk_path_parse(const char *string) *) PROCEDURE gsk_path_parse (string: ARRAY OF CHAR) : ADDRESS; END GskPath.