summaryrefslogtreecommitdiff
path: root/src/cairo-gstate-private.h
diff options
context:
space:
mode:
authorVladimir Vukicevic <vladimir@pobox.com>2006-02-15 13:46:53 -0800
committerCarl Worth <cworth@cworth.org>2006-05-04 02:52:38 -0700
commitee02c1b91452e5b34af4f02d7132840a4bf44fe1 (patch)
treee3fc05658e312ef21b68b58a24232f40190ff278 /src/cairo-gstate-private.h
parent5e708b38e00f6b2066028c60a5526bf5d5e66356 (diff)
downloadcairo-ee02c1b91452e5b34af4f02d7132840a4bf44fe1.tar.gz
Implement push_group/pop_group
This patch adds the following API calls: cairo_push_group cairo_push_group_with_content cairo_pop_group cairo_pop_group_to_source cairo_get_group_target These methods support implementing layers on top of a cairo context, allowing for drawing with transparency and temporary buffering. cairo_get_group_target allows an app to get access to the actual surface created by the last push_group call, in case itneeds to perform native drawing to it.
Diffstat (limited to 'src/cairo-gstate-private.h')
-rw-r--r--src/cairo-gstate-private.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/cairo-gstate-private.h b/src/cairo-gstate-private.h
index a5d4c0606..8cbe238ee 100644
--- a/src/cairo-gstate-private.h
+++ b/src/cairo-gstate-private.h
@@ -55,7 +55,9 @@ struct _cairo_gstate {
cairo_clip_t clip;
- cairo_surface_t *target;
+ cairo_surface_t *target; /* The target to which all rendering is directed */
+ cairo_surface_t *parent_target; /* The previous target which was receiving rendering */
+ cairo_surface_t *original_target; /* The original target the initial gstate was created with */
cairo_matrix_t ctm;
cairo_matrix_t ctm_inverse;