diff options
author | Uli Schlachter <psychon@znc.in> | 2012-09-15 15:43:16 +0200 |
---|---|---|
committer | Uli Schlachter <psychon@znc.in> | 2012-09-24 09:44:10 +0200 |
commit | de31018bdd1cc78fd54cf9fd7b220117008c33a8 (patch) | |
tree | 36dc399f0725c7d33557fda312f09dc3ed71e032 /src/cairo-xcb-private.h | |
parent | 6300579a8b2c0e38a0c1abae89675bf6cb769902 (diff) | |
download | cairo-de31018bdd1cc78fd54cf9fd7b220117008c33a8.tar.gz |
xcb: Switch to compositor architecture
This commit removes the hand-written code in cairo-xcb-surface.c and instead
makes use of cairo_compositor_t. Surprisingly, this doesn't break a single test
case. :-)
Signed-off-by: Uli Schlachter <psychon@znc.in>
Diffstat (limited to 'src/cairo-xcb-private.h')
-rw-r--r-- | src/cairo-xcb-private.h | 59 |
1 files changed, 24 insertions, 35 deletions
diff --git a/src/cairo-xcb-private.h b/src/cairo-xcb-private.h index 35b50ad87..f6cb34ecd 100644 --- a/src/cairo-xcb-private.h +++ b/src/cairo-xcb-private.h @@ -386,49 +386,38 @@ _cairo_xcb_surface_get_extents (void *abstract_surface, cairo_rectangle_int_t *extents); cairo_private cairo_int_status_t -_cairo_xcb_surface_render_paint (cairo_xcb_surface_t *surface, - cairo_operator_t op, - const cairo_pattern_t *source, - cairo_composite_rectangles_t *composite); +_cairo_xcb_render_compositor_paint (const cairo_compositor_t *compositor, + cairo_composite_rectangles_t *extents); cairo_private cairo_int_status_t -_cairo_xcb_surface_render_mask (cairo_xcb_surface_t *surface, - cairo_operator_t op, - const cairo_pattern_t *source, - const cairo_pattern_t *mask, - cairo_composite_rectangles_t *composite); +_cairo_xcb_render_compositor_mask (const cairo_compositor_t *compositor, + cairo_composite_rectangles_t *extents); cairo_private cairo_int_status_t -_cairo_xcb_surface_render_stroke (cairo_xcb_surface_t *surface, - cairo_operator_t op, - const cairo_pattern_t *source, - const cairo_path_fixed_t *path, - const cairo_stroke_style_t *style, - const cairo_matrix_t *ctm, - const cairo_matrix_t *ctm_inverse, - double tolerance, - cairo_antialias_t antialias, - cairo_composite_rectangles_t *composite); +_cairo_xcb_render_compositor_stroke (const cairo_compositor_t *compositor, + cairo_composite_rectangles_t *extents, + const cairo_path_fixed_t *path, + const cairo_stroke_style_t *style, + const cairo_matrix_t *ctm, + const cairo_matrix_t *ctm_inverse, + double tolerance, + cairo_antialias_t antialias); cairo_private cairo_int_status_t -_cairo_xcb_surface_render_fill (cairo_xcb_surface_t *surface, - cairo_operator_t op, - const cairo_pattern_t *source, - const cairo_path_fixed_t*path, - cairo_fill_rule_t fill_rule, - double tolerance, - cairo_antialias_t antialias, - cairo_composite_rectangles_t *composite); +_cairo_xcb_render_compositor_fill (const cairo_compositor_t *compositor, + cairo_composite_rectangles_t *extents, + const cairo_path_fixed_t *path, + cairo_fill_rule_t fill_rule, + double tolerance, + cairo_antialias_t antialias); cairo_private cairo_int_status_t -_cairo_xcb_surface_render_glyphs (cairo_xcb_surface_t *surface, - cairo_operator_t op, - const cairo_pattern_t *source, - cairo_scaled_font_t *scaled_font, - cairo_glyph_t *glyphs, - int num_glyphs, - cairo_composite_rectangles_t *composite, - cairo_bool_t overlap); +_cairo_xcb_render_compositor_glyphs (const cairo_compositor_t *compositor, + cairo_composite_rectangles_t *extents, + cairo_scaled_font_t *scaled_font, + cairo_glyph_t *glyphs, + int num_glyphs, + cairo_bool_t overlap); cairo_private void _cairo_xcb_surface_scaled_font_fini (cairo_scaled_font_t *scaled_font); |