Subversion Repositories Kolibri OS

Rev

Rev 1892 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1892 Rev 3959
Line 37... Line 37...
37
 */
37
 */
Line 38... Line 38...
38
 
38
 
39
#ifndef CAIRO_SURFACE_WRAPPER_PRIVATE_H
39
#ifndef CAIRO_SURFACE_WRAPPER_PRIVATE_H
Line -... Line 40...
-
 
40
#define CAIRO_SURFACE_WRAPPER_PRIVATE_H
40
#define CAIRO_SURFACE_WRAPPER_PRIVATE_H
41
 
-
 
42
#include "cairoint.h"
Line 41... Line 43...
41
 
43
#include "cairo-types-private.h"
Line 42... Line 44...
42
#include "cairo-types-private.h"
44
#include "cairo-surface-backend-private.h"
43
 
45
 
Line -... Line 46...
-
 
46
CAIRO_BEGIN_DECLS
-
 
47
 
44
CAIRO_BEGIN_DECLS
48
struct _cairo_surface_wrapper {
45
 
49
    cairo_surface_t *target;
-
 
50
 
-
 
51
    cairo_matrix_t transform;
-
 
52
 
46
struct _cairo_surface_wrapper {
53
    cairo_bool_t has_extents;
Line 47... Line 54...
47
    cairo_surface_t *target;
54
    cairo_rectangle_int_t extents;
48
 
55
    const cairo_clip_t *clip;
49
    cairo_bool_t has_extents;
56
 
Line 50... Line 57...
50
    cairo_rectangle_int_t extents;
57
    cairo_bool_t needs_transform;
51
};
58
};
52
 
59
 
Line 53... Line 60...
53
cairo_private void
60
cairo_private void
-
 
61
_cairo_surface_wrapper_init (cairo_surface_wrapper_t *wrapper,
-
 
62
			     cairo_surface_t *target);
-
 
63
 
-
 
64
cairo_private void
-
 
65
_cairo_surface_wrapper_intersect_extents (cairo_surface_wrapper_t *wrapper,
-
 
66
					  const cairo_rectangle_int_t *extents);
-
 
67
 
-
 
68
cairo_private void
54
_cairo_surface_wrapper_init (cairo_surface_wrapper_t *wrapper,
69
_cairo_surface_wrapper_set_inverse_transform (cairo_surface_wrapper_t *wrapper,
Line -... Line 70...
-
 
70
					      const cairo_matrix_t *transform);
-
 
71
 
-
 
72
cairo_private void
-
 
73
_cairo_surface_wrapper_set_clip (cairo_surface_wrapper_t *wrapper,
-
 
74
				 const cairo_clip_t *clip);
-
 
75
 
55
			     cairo_surface_t *target);
76
cairo_private void
56
 
77
_cairo_surface_wrapper_fini (cairo_surface_wrapper_t *wrapper);
57
cairo_private void
78
 
58
_cairo_surface_wrapper_set_extents (cairo_surface_wrapper_t *wrapper,
79
static inline cairo_bool_t
Line 74... Line 95...
74
 
95
 
75
cairo_private cairo_status_t
96
cairo_private cairo_status_t
76
_cairo_surface_wrapper_paint (cairo_surface_wrapper_t *wrapper,
97
_cairo_surface_wrapper_paint (cairo_surface_wrapper_t *wrapper,
77
			      cairo_operator_t	 op,
98
			      cairo_operator_t	 op,
78
			      const cairo_pattern_t *source,
99
			      const cairo_pattern_t *source,
Line 79... Line 100...
79
			      cairo_clip_t	    *clip);
100
			      const cairo_clip_t	    *clip);
80
 
101
 
81
cairo_private cairo_status_t
102
cairo_private cairo_status_t
82
_cairo_surface_wrapper_mask (cairo_surface_wrapper_t *wrapper,
103
_cairo_surface_wrapper_mask (cairo_surface_wrapper_t *wrapper,
83
			     cairo_operator_t	 op,
104
			     cairo_operator_t	 op,
84
			     const cairo_pattern_t *source,
105
			     const cairo_pattern_t *source,
Line 85... Line 106...
85
			     const cairo_pattern_t *mask,
106
			     const cairo_pattern_t *mask,
86
			     cairo_clip_t	    *clip);
107
			     const cairo_clip_t	    *clip);
87
 
108
 
88
cairo_private cairo_status_t
109
cairo_private cairo_status_t
89
_cairo_surface_wrapper_stroke (cairo_surface_wrapper_t *wrapper,
110
_cairo_surface_wrapper_stroke (cairo_surface_wrapper_t *wrapper,
90
			       cairo_operator_t		 op,
111
			       cairo_operator_t		 op,
91
			       const cairo_pattern_t	*source,
112
			       const cairo_pattern_t	*source,
92
			       cairo_path_fixed_t	*path,
113
			       const cairo_path_fixed_t	*path,
93
			       const cairo_stroke_style_t	*stroke_style,
114
			       const cairo_stroke_style_t	*stroke_style,
94
			       const cairo_matrix_t		*ctm,
115
			       const cairo_matrix_t		*ctm,
95
			       const cairo_matrix_t		*ctm_inverse,
116
			       const cairo_matrix_t		*ctm_inverse,
Line 96... Line 117...
96
			       double			 tolerance,
117
			       double			 tolerance,
97
			       cairo_antialias_t	 antialias,
118
			       cairo_antialias_t	 antialias,
98
			       cairo_clip_t		*clip);
119
			       const cairo_clip_t		*clip);
99
 
120
 
100
cairo_private cairo_status_t
121
cairo_private cairo_status_t
101
_cairo_surface_wrapper_fill_stroke (cairo_surface_wrapper_t *wrapper,
122
_cairo_surface_wrapper_fill_stroke (cairo_surface_wrapper_t *wrapper,
102
				    cairo_operator_t	     fill_op,
123
				    cairo_operator_t	     fill_op,
103
				    const cairo_pattern_t   *fill_source,
124
				    const cairo_pattern_t   *fill_source,
104
				    cairo_fill_rule_t	     fill_rule,
125
				    cairo_fill_rule_t	     fill_rule,
105
				    double		     fill_tolerance,
126
				    double		     fill_tolerance,
106
				    cairo_antialias_t	     fill_antialias,
127
				    cairo_antialias_t	     fill_antialias,
107
				    cairo_path_fixed_t	    *path,
128
				    const cairo_path_fixed_t*path,
108
				    cairo_operator_t	     stroke_op,
129
				    cairo_operator_t	     stroke_op,
109
				    const cairo_pattern_t   *stroke_source,
130
				    const cairo_pattern_t   *stroke_source,
110
				    const cairo_stroke_style_t    *stroke_style,
131
				    const cairo_stroke_style_t    *stroke_style,
111
				    const cairo_matrix_t	    *stroke_ctm,
132
				    const cairo_matrix_t	    *stroke_ctm,
Line 112... Line 133...
112
				    const cairo_matrix_t	    *stroke_ctm_inverse,
133
				    const cairo_matrix_t	    *stroke_ctm_inverse,
113
				    double		     stroke_tolerance,
134
				    double		     stroke_tolerance,
114
				    cairo_antialias_t	     stroke_antialias,
135
				    cairo_antialias_t	     stroke_antialias,
115
				    cairo_clip_t	    *clip);
136
				    const cairo_clip_t	    *clip);
116
 
137
 
117
cairo_private cairo_status_t
138
cairo_private cairo_status_t
118
_cairo_surface_wrapper_fill (cairo_surface_wrapper_t *wrapper,
139
_cairo_surface_wrapper_fill (cairo_surface_wrapper_t *wrapper,
119
			     cairo_operator_t	 op,
140
			     cairo_operator_t	 op,
120
			     const cairo_pattern_t *source,
141
			     const cairo_pattern_t *source,
Line 121... Line 142...
121
			     cairo_path_fixed_t	*path,
142
			     const cairo_path_fixed_t	*path,
122
			     cairo_fill_rule_t	 fill_rule,
143
			     cairo_fill_rule_t	 fill_rule,
123
			     double		 tolerance,
144
			     double		 tolerance,
124
			     cairo_antialias_t	 antialias,
145
			     cairo_antialias_t	 antialias,
125
			     cairo_clip_t	*clip);
146
			     const cairo_clip_t	*clip);
126
 
147
 
127
cairo_private cairo_status_t
148
cairo_private cairo_status_t
128
_cairo_surface_wrapper_show_text_glyphs (cairo_surface_wrapper_t *wrapper,
149
_cairo_surface_wrapper_show_text_glyphs (cairo_surface_wrapper_t *wrapper,
129
					 cairo_operator_t	     op,
150
					 cairo_operator_t	     op,
130
					 const cairo_pattern_t	    *source,
151
					 const cairo_pattern_t	    *source,
131
					 const char		    *utf8,
152
					 const char		    *utf8,
132
					 int			     utf8_len,
153
					 int			     utf8_len,
133
					 cairo_glyph_t		    *glyphs,
154
					 const cairo_glyph_t	    *glyphs,
Line 134... Line 155...
134
					 int			     num_glyphs,
155
					 int			     num_glyphs,
135
					 const cairo_text_cluster_t *clusters,
156
					 const cairo_text_cluster_t *clusters,
136
					 int			     num_clusters,
157
					 int			     num_clusters,
137
					 cairo_text_cluster_flags_t  cluster_flags,
158
					 cairo_text_cluster_flags_t  cluster_flags,
Line 161... Line 182...
161
_cairo_surface_wrapper_is_active (cairo_surface_wrapper_t *wrapper)
182
_cairo_surface_wrapper_is_active (cairo_surface_wrapper_t *wrapper)
162
{
183
{
163
    return wrapper->target != (cairo_surface_t *) 0;
184
    return wrapper->target != (cairo_surface_t *) 0;
164
}
185
}
Line -... Line 186...
-
 
186
 
-
 
187
cairo_private cairo_bool_t
-
 
188
_cairo_surface_wrapper_get_target_extents (cairo_surface_wrapper_t *wrapper,
-
 
189
					   cairo_rectangle_int_t *extents);
165
 
190
 
Line 166... Line 191...
166
CAIRO_END_DECLS
191
CAIRO_END_DECLS