summaryrefslogtreecommitdiff
path: root/examples/viewer-pangocairo.c
diff options
context:
space:
mode:
authorBehdad Esfahbod <behdad@gnome.org>2006-02-06 13:50:10 +0000
committerBehdad Esfahbod <behdad@src.gnome.org>2006-02-06 13:50:10 +0000
commit522ce4d5b39e325471edf77cea9ad15ed98505af (patch)
tree1e7c3eba8911f6e795ba6f364caba8a1d21702a4 /examples/viewer-pangocairo.c
parent8c71138ba5500a3d1bf446357992e8f165101173 (diff)
downloadpango-522ce4d5b39e325471edf77cea9ad15ed98505af.tar.gz
If NULL is passed to _copy, return NULL with no warning. If NULL is passed
2006-02-06 Behdad Esfahbod <behdad@gnome.org> * pango/pango-utils.c (pango_matrix_copy, pango_matrix_free): If NULL is passed to _copy, return NULL with no warning. If NULL is passed to _free, do nothing with no warning. Docs updated. * examples/viewer-pangoxft.c (render_callback): Multiply x,y by PANGO_SCALE, as pango_xft_render_layout takes coordinates in Pango units weirdly enough. * viewer-pangocairo.c (render_callback): Do cairo_translate, to draw correct bounding boxes for x,y nonzero. * examples/renderdemo.c (do_output): If context has an all-zero matrix set, interpret it as backend does not support transformation, so warn on --rotate, and do not try to rotate. * examples/viewer-pangox.c (pangox_view_get_context): Set an all-zero matrix on context, to negotiate that we don't support transformations.
Diffstat (limited to 'examples/viewer-pangocairo.c')
-rw-r--r--examples/viewer-pangocairo.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/examples/viewer-pangocairo.c b/examples/viewer-pangocairo.c
index e1472aa7..d2d64e6d 100644
--- a/examples/viewer-pangocairo.c
+++ b/examples/viewer-pangocairo.c
@@ -140,7 +140,8 @@ render_callback (PangoLayout *layout,
cairo_t *cr = (cairo_t *) context;
gboolean show_borders = GPOINTER_TO_UINT (data) == 0xdeadbeef;
- cairo_move_to (cr, x, y);
+ cairo_save (cr);
+ cairo_translate (cr, x, y);
pango_cairo_show_layout (cr,
layout);
@@ -151,7 +152,6 @@ render_callback (PangoLayout *layout,
pango_layout_get_extents (layout, &ink, &logical);
- cairo_save (cr);
cairo_set_source_rgba (cr, 1.0, 0.0, 0.0, 0.75);
cairo_rectangle (cr,
@@ -169,9 +169,8 @@ render_callback (PangoLayout *layout,
(double)ink.width / PANGO_SCALE + lw,
(double)ink.height / PANGO_SCALE + lw);
cairo_stroke (cr);
-
- cairo_restore (cr);
}
+ cairo_restore (cr);
}
static void
@@ -199,7 +198,6 @@ transform_callback (PangoContext *context,
cairo_set_matrix (cr, &cairo_matrix);
- pango_context_set_matrix (context, matrix);
pango_cairo_update_context (cr, context);
}