diff options
author | Carl Worth <cworth@src.gnome.org> | 2005-04-08 17:21:09 +0000 |
---|---|---|
committer | Carl Worth <cworth@src.gnome.org> | 2005-04-08 17:21:09 +0000 |
commit | 3d9f1d157a14ef3432c06791d63df1cfaa36ab4b (patch) | |
tree | 231f7b99adee874829381226c51c36bf6ff0a41d /gdk | |
parent | 3962c1166f54cb2c9f83de43cb75f82963ee70ef (diff) | |
download | gdk-pixbuf-3d9f1d157a14ef3432c06791d63df1cfaa36ab4b.tar.gz |
Simplify matrix manipulation now that cairo exposes the cairo_matrix_t
* gdk/gdkpango.c: (emboss_context): Simplify matrix manipulation
now that cairo exposes the cairo_matrix_t structure.
* gdk/gdkpixbuf-render.c: (gdk_pixbuf_set_as_cairo_source): Track
cairo API change in signedness of data argument.
Diffstat (limited to 'gdk')
-rw-r--r-- | gdk/gdkpango.c | 12 | ||||
-rw-r--r-- | gdk/gdkpixbuf-render.c | 5 |
2 files changed, 8 insertions, 9 deletions
diff --git a/gdk/gdkpango.c b/gdk/gdkpango.c index 4f26ab70d..1fe43e707 100644 --- a/gdk/gdkpango.c +++ b/gdk/gdkpango.c @@ -118,18 +118,16 @@ gdk_pango_renderer_constructor (GType type, static void emboss_context (cairo_t *cr) { - cairo_matrix_t *tmp_matrix = cairo_matrix_create (); - double a, b, c, d, tx, ty; + cairo_matrix_t tmp_matrix; /* The gymnastics here to adjust the matrix are because we want * to offset by +1,+1 in device-space, not in user-space, * so we can't just draw the layout at x + 1, y + 1 */ - cairo_get_matrix (cr, tmp_matrix); - cairo_matrix_get_affine (tmp_matrix, &a, &b, &c, &d, &tx, &ty); - cairo_matrix_set_affine (tmp_matrix, a, b, c, d, tx + 1, ty + 1); - cairo_set_matrix (cr, tmp_matrix); - cairo_matrix_destroy (tmp_matrix); + cairo_get_matrix (cr, &tmp_matrix); + tmp_matrix.x0 += 1.0; + tmp_matrix.y0 += 1.0; + cairo_set_matrix (cr, &tmp_matrix); cairo_set_rgb_color (cr, 1.0, 1.0, 1.0); } diff --git a/gdk/gdkpixbuf-render.c b/gdk/gdkpixbuf-render.c index 52c54c5a0..e88e5a6ad 100644 --- a/gdk/gdkpixbuf-render.c +++ b/gdk/gdkpixbuf-render.c @@ -362,8 +362,9 @@ gdk_pixbuf_set_as_cairo_source (GdkPixbuf *pixbuf, format = CAIRO_FORMAT_ARGB32; cairo_pixels = g_malloc (4 * width * height); - surface = cairo_image_surface_create_for_data ((char *)cairo_pixels, format, - width, height, 4 * width); + surface = cairo_image_surface_create_for_data ((unsigned char *)cairo_pixels, + format, + width, height, 4 * width); cairo_surface_set_user_data (surface, &key, cairo_pixels, (cairo_destroy_func_t)g_free); |