diff options
author | Behdad Esfahbod <behdad@gnome.org> | 2006-02-06 13:50:10 +0000 |
---|---|---|
committer | Behdad Esfahbod <behdad@src.gnome.org> | 2006-02-06 13:50:10 +0000 |
commit | 522ce4d5b39e325471edf77cea9ad15ed98505af (patch) | |
tree | 1e7c3eba8911f6e795ba6f364caba8a1d21702a4 /examples/viewer-pangocairo.c | |
parent | 8c71138ba5500a3d1bf446357992e8f165101173 (diff) | |
download | pango-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.c | 8 |
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); } |