### Function

# Gsk PathForeachFunc

since: 4.0

#### Declaration

    gboolean
    (* GskPathForeachFunc) (
      GskPathOperation op,
      const graphene_point_t* pts,
      gsize n_pts,
      float weight,
      gpointer user_data
    )

#### Description [src]

Prototype of the callback to iterate through the operations of a path.

For each operation, the callback is given the `op` itself, the points that the operation is applied to in `pts`, and a `weight` for conic curves. The `n_pts` argument is somewhat redundant, since the number of points can be inferred from the operation.

Each contour of the path starts with a `GSK_PATH_MOVE` operation. Closed contours end with a `GSK_PATH_CLOSE` operation.

Available since: 4.0

#### Parameters

`op`

  Type: `GskPathOperation`

  The operation.

`pts`

  Type: `graphene_point_t`

  The points of the operation.

  The data is owned by the caller of the function.

`n_pts`

  Type: `gsize`

  The number of points.

`weight`

  Type: `float`

  The weight for conic curves, or unused if not a conic curve.

`user_data`

  Type: `gpointer`

  The user data provided with the function.

  The argument can be `NULL`.
  The data is owned by the caller of the function.

#### Return value

Type: `gboolean`

`TRUE` to continue iterating the path, `FALSE` to immediately abort and not call the function again.