diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2012-09-10 15:03:47 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2012-09-10 15:09:15 +0100 |
commit | df6780442feba5c0c9404353177f24913b58bd32 (patch) | |
tree | f1c481ce7929c7d54311a6e8fd31ddc0e6eb2426 /src/cairo-backend-private.h | |
parent | f864e2d70f53a1feeee5e32bf9724b1e544025a6 (diff) | |
download | cairo-df6780442feba5c0c9404353177f24913b58bd32.tar.gz |
context: Add missing functions to transform between user and backend coordinates
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/cairo-backend-private.h')
-rw-r--r-- | src/cairo-backend-private.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/cairo-backend-private.h b/src/cairo-backend-private.h index 1dd5ea083..cd626b81b 100644 --- a/src/cairo-backend-private.h +++ b/src/cairo-backend-private.h @@ -96,6 +96,11 @@ struct _cairo_backend { void (*device_to_user) (void *cr, double *x, double *y); void (*device_to_user_distance) (void *cr, double *x, double *y); + void (*user_to_backend) (void *cr, double *x, double *y); + void (*user_to_backend_distance) (void *cr, double *x, double *y); + void (*backend_to_user) (void *cr, double *x, double *y); + void (*backend_to_user_distance) (void *cr, double *x, double *y); + cairo_status_t (*new_path) (void *cr); cairo_status_t (*new_sub_path) (void *cr); cairo_status_t (*move_to) (void *cr, double x, double y); @@ -168,4 +173,28 @@ struct _cairo_backend { cairo_status_t (*show_page) (void *cr); }; +static inline void +_cairo_backend_to_user (cairo_t *cr, double *x, double *y) +{ + cr->backend->backend_to_user (cr, x, y); +} + +static inline void +_cairo_backend_to_user_distance (cairo_t *cr, double *x, double *y) +{ + cr->backend->backend_to_user_distance (cr, x, y); +} + +static inline void +_cairo_user_to_backend (cairo_t *cr, double *x, double *y) +{ + cr->backend->user_to_backend (cr, x, y); +} + +static inline void +_cairo_user_to_backend_distance (cairo_t *cr, double *x, double *y) +{ + cr->backend->user_to_backend_distance (cr, x, y); +} + #endif /* CAIRO_BACKEND_PRIVATE_H */ |