Package: gsk

Macro gsk:with-rounded-rect

Lambda List

gsk:with-rounded-rect ((var &rest args) &body body)

Syntax

(gsk:with-rounded-rect (rounded) body) => result
(gsk:with-rounded-rect (rounded source) body) => result
(gsk:with-rounded-rect (rounded rect radius) body) => result
(gsk:with-rounded-rect (rounded rect ltop rtop lbottom rbottom) body) => result

Arguments

rounded -- a gsk:rounded-rect instance to create and initialize
source -- a gsk:rounded-rect instance to use for initialization
rect -- a graphene:rect-t instance describing the bounds
radius -- a number coerced to a single float for the border radius
ltop -- a graphene:size-t instance for the rounding radius of the top left corner
rtop -- a graphene:size-t instance for the rounding radius of the top rigth corner
lbottom -- a graphene:size-t instance for the rounding radius of the bottom left corner
rbottom -- a graphene:size-t instance for the rounding radius of the bottom rigth corner

Details

The gsk:with-rounded-rect macro allocates a new gsk:rounded-rect instance, initializes the rounded rect with the given values and executes the body that uses the rounded rect. After execution of the body the allocated memory for the rounded rect is released.

If no argument is given the components of the rounded rectangle are uninitialized. The initialization with one argument uses the gsk:rounded-rect-init-copy function, which initializes the rounded from another rounded rect. The initialization from a graphene:rect-t instance and a number uses the gsk:rounded-rect-init-from-rect function. If six arguments are given, the rounded rectangle is initialized with the gsk:rounded-rect-init function.
 

See also

2025-05-09