1 /* ***** BEGIN LICENSE BLOCK *****
2  * Version: MPL 1.1
3  *
4  * The contents of this file are subject to the Mozilla Public License Version
5  * 1.1 (the "License"); you may not use this file except in compliance with
6  * the License. You may obtain a copy of the License at
7  * http://www.mozilla.org/MPL/
8  *
9  * Software distributed under the License is distributed on an "AS IS" basis,
10  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
11  * for the specific language governing rights and limitations under the
12  * License.
13  *
14  * Contributor(s):
15  *
16  * IBM
17  * -  Binding to permit interfacing between Cairo and SWT
18  * -  Copyright (C) 2005, 2018 IBM Corp.  All Rights Reserved.
19  *
20  * ***** END LICENSE BLOCK ***** */
21 package org.eclipse.swt.internal.cairo;
22 
23 import org.eclipse.swt.internal.*;
24 
25 public class Cairo extends Platform {
26 	static {
27 		Library.loadLibrary("swt-cairo");
28 	}
29 
30 	/** Constants */
31 	public static final int CAIRO_ANTIALIAS_DEFAULT = 0;
32 	public static final int CAIRO_ANTIALIAS_NONE = 1;
33 	public static final int CAIRO_ANTIALIAS_GRAY = 2;
34 	public static final int CAIRO_ANTIALIAS_SUBPIXEL = 3;
35 	public static final int CAIRO_ANTIALIAS_BEST = 6;
36 	public static final int CAIRO_CONTENT_COLOR = 0x1000;
37 	public static final int CAIRO_CONTENT_ALPHA = 0x2000;
38 	public static final int CAIRO_CONTENT_COLOR_ALPHA = 0x3000;
39 	public static final int CAIRO_FORMAT_ARGB32 = 0;
40 	public static final int CAIRO_FORMAT_RGB24 = 1;
41 	public static final int CAIRO_FORMAT_A8 = 2;
42 	public static final int CAIRO_FORMAT_A1 = 3;
43 	public static final int CAIRO_OPERATOR_SOURCE = 1;
44 	public static final int CAIRO_OPERATOR_OVER = 2;
45 	public static final int CAIRO_OPERATOR_DIFFERENCE = 23;
46 	public static final int CAIRO_FILL_RULE_WINDING = 0;
47 	public static final int CAIRO_FILL_RULE_EVEN_ODD = 1;
48 	public static final int CAIRO_LINE_CAP_BUTT = 0;
49 	public static final int CAIRO_LINE_CAP_ROUND = 1;
50 	public static final int CAIRO_LINE_CAP_SQUARE = 2;
51 	public static final int CAIRO_LINE_JOIN_MITER = 0;
52 	public static final int CAIRO_LINE_JOIN_ROUND = 1;
53 	public static final int CAIRO_LINE_JOIN_BEVEL = 2;
54 	public static final int CAIRO_FONT_SLANT_NORMAL = 0;
55 	public static final int CAIRO_FONT_SLANT_ITALIC = 1;
56 	public static final int CAIRO_FONT_SLANT_OBLIQUE = 2;
57 	public static final int CAIRO_FONT_WEIGHT_NORMAL = 0;
58 	public static final int CAIRO_FONT_WEIGHT_BOLD = 1;
59 	public static final int CAIRO_SURFACE_TYPE_IMAGE = 0;
60 	public static final int CAIRO_SURFACE_TYPE_PDF = 1;
61 	public static final int CAIRO_SURFACE_TYPE_PS = 2;
62 	public static final int CAIRO_SURFACE_TYPE_XLIB = 3;
63 	public static final int CAIRO_REGION_OVERLAP_OUT = 1;
64 	public static final int CAIRO_FILTER_FAST = 0;
65 	public static final int CAIRO_FILTER_GOOD = 1;
66 	public static final int CAIRO_FILTER_BEST = 2;
67 	public static final int CAIRO_FILTER_NEAREST = 3;
68 	public static final int CAIRO_FILTER_BILINEAR = 4;
69 	public static final int CAIRO_FILTER_GAUSSIAN = 5;
70 	public static final int CAIRO_EXTEND_NONE = 0;
71 	public static final int CAIRO_EXTEND_REPEAT = 1;
72 	public static final int CAIRO_EXTEND_REFLECT = 2;
73 	public static final int CAIRO_EXTEND_PAD = 3;
74 	public static final int CAIRO_PATH_MOVE_TO = 0;
75 	public static final int CAIRO_PATH_LINE_TO = 1;
76 	public static final int CAIRO_PATH_CURVE_TO = 2;
77 	public static final int CAIRO_PATH_CLOSE_PATH = 3;
78 
79 /** 64*/
cairo_path_data_t_sizeof()80 public static final native int cairo_path_data_t_sizeof ();
cairo_rectangle_int_t_sizeof()81 public static final native int cairo_rectangle_int_t_sizeof ();
cairo_path_t_sizeof()82 public static final native int cairo_path_t_sizeof ();
83 
84 /** Natives */
CAIRO_VERSION_ENCODE(int major, int minor, int micro)85 public static final native int CAIRO_VERSION_ENCODE(int major, int minor, int micro);
86 /**
87  * @param cr cast=(cairo_t *)
88  * @param path cast=(cairo_path_t *)
89  */
cairo_append_path(long cr, long path)90 public static final native void cairo_append_path(long cr, long path);
91 /** @param cr cast=(cairo_t *) */
cairo_arc(long cr, double xc, double yc, double radius, double angle1, double angle2)92 public static final native void cairo_arc(long cr, double xc, double yc, double radius, double angle1, double angle2);
93 /** @param cr cast=(cairo_t *) */
cairo_arc_negative(long cr, double xc, double yc, double radius, double angle1, double angle2)94 public static final native void cairo_arc_negative(long cr, double xc, double yc, double radius, double angle1, double angle2);
95 /** @param cr cast=(cairo_t *) */
cairo_clip(long cr)96 public static final native void cairo_clip(long cr);
97 /** @param cr cast=(cairo_t *) */
cairo_close_path(long cr)98 public static final native void cairo_close_path(long cr);
99 /** @param cr cast=(cairo_t *) */
cairo_copy_path(long cr)100 public static final native long cairo_copy_path(long cr);
101 /** @param cr cast=(cairo_t *) */
cairo_copy_path_flat(long cr)102 public static final native long cairo_copy_path_flat(long cr);
103 /** @param target cast=(cairo_surface_t *) */
cairo_create(long target)104 public static final native long cairo_create(long target);
105 /** @param cr cast=(cairo_t *) */
cairo_curve_to(long cr, double x1, double y1, double x2, double y2, double x3, double y3)106 public static final native void cairo_curve_to(long cr, double x1, double y1, double x2, double y2, double x3, double y3);
107 /** @param cr cast=(cairo_t *) */
cairo_destroy(long cr)108 public static final native void cairo_destroy(long cr);
109 /** @param cr cast=(cairo_t *) */
cairo_fill(long cr)110 public static final native void cairo_fill(long cr);
cairo_font_options_create()111 public static final native long cairo_font_options_create();
112 /** @param options cast=(cairo_font_options_t *) */
cairo_font_options_destroy(long options)113 public static final native void cairo_font_options_destroy(long options);
114 /** @param options cast=(cairo_font_options_t *) */
cairo_font_options_get_antialias(long options)115 public static final native int cairo_font_options_get_antialias(long options);
116 /** @param options cast=(cairo_font_options_t *) */
cairo_font_options_set_antialias(long options, int antialias)117 public static final native void cairo_font_options_set_antialias(long options, int antialias);
118 /** @param cr cast=(cairo_t *) */
cairo_get_antialias(long cr)119 public static final native int cairo_get_antialias(long cr);
120 /** @param cr cast=(cairo_t *) */
cairo_get_current_point(long cr, double[] x, double[] y)121 public static final native void cairo_get_current_point(long cr, double[] x, double[] y);
122 /** @param cr cast=(cairo_t *) */
cairo_get_fill_rule(long cr)123 public static final native int cairo_get_fill_rule(long cr);
124 /** @param cr cast=(cairo_t *) */
cairo_get_font_face(long cr)125 public static final native long cairo_get_font_face(long cr);
126 /**
127  * @param cr cast=(cairo_t *)
128  * @param matrix cast=(cairo_matrix_t *)
129  */
cairo_get_matrix(long cr, double[] matrix)130 public static final native void cairo_get_matrix(long cr, double[] matrix);
131 /** @param cr cast=(cairo_t *) */
cairo_get_source(long cr)132 public static final native long cairo_get_source(long cr);
133 /** @param cr cast=(cairo_t *) */
cairo_get_target(long cr)134 public static final native long cairo_get_target(long cr);
135 /** @param cr cast=(cairo_t *) */
cairo_get_tolerance(long cr)136 public static final native double cairo_get_tolerance(long cr);
137 /** @param cr cast=(cairo_t *) */
cairo_identity_matrix(long cr)138 public static final native void cairo_identity_matrix(long cr);
cairo_image_surface_create(int format, int width, int height)139 public static final native long cairo_image_surface_create(int format, int width, int height);
140 /**
141  * @param surface cast=(cairo_surface_t *)
142  */
cairo_image_surface_get_data(long surface)143 public static final native long cairo_image_surface_get_data(long surface);
144 /**
145  * @param surface cast=(cairo_surface_t *)
146  */
cairo_image_surface_get_format(long surface)147 public static final native int cairo_image_surface_get_format(long surface);
148 /** @param surface cast=(cairo_surface_t *) */
cairo_image_surface_get_height(long surface)149 public static final native int cairo_image_surface_get_height(long surface);
150 /** @param surface cast=(cairo_surface_t *) */
cairo_image_surface_get_width(long surface)151 public static final native int cairo_image_surface_get_width(long surface);
152 /**
153  * @param surface cast=(cairo_surface_t *)
154  */
cairo_image_surface_get_stride(long surface)155 public static final native int cairo_image_surface_get_stride(long surface);
156 /** @param cr cast=(cairo_t *) */
cairo_in_fill(long cr, double x, double y)157 public static final native int cairo_in_fill(long cr, double x, double y);
158 /** @param cr cast=(cairo_t *) */
cairo_in_stroke(long cr, double x, double y)159 public static final native int cairo_in_stroke(long cr, double x, double y);
160 /** @param cr cast=(cairo_t *) */
cairo_line_to(long cr, double x, double y)161 public static final native void cairo_line_to(long cr, double x, double y);
162 /** @param matrix cast=(cairo_matrix_t *) */
cairo_matrix_init(double[] matrix, double xx, double yx, double xy, double yy, double x0, double y0)163 public static final native void cairo_matrix_init(double[] matrix, double xx, double yx, double xy, double yy, double x0, double y0);
164 /** @param matrix cast=(cairo_matrix_t *) */
cairo_matrix_init_identity(double[] matrix)165 public static final native void cairo_matrix_init_identity(double[] matrix);
166 /** @param matrix cast=(cairo_matrix_t *) */
cairo_matrix_invert(double[] matrix)167 public static final native int cairo_matrix_invert(double[] matrix);
168 /**
169  * @param result cast=(cairo_matrix_t *)
170  * @param a cast=(cairo_matrix_t *)
171  * @param b cast=(cairo_matrix_t *)
172  */
cairo_matrix_multiply(double[] result, double[] a, double[] b)173 public static final native void cairo_matrix_multiply(double[] result, double[] a, double[] b);
174 /** @param matrix cast=(cairo_matrix_t *) */
cairo_matrix_rotate(double[] matrix, double radians)175 public static final native void cairo_matrix_rotate(double[] matrix, double radians);
176 /** @param matrix cast=(cairo_matrix_t *) */
cairo_matrix_scale(double[] matrix, double sx, double sy)177 public static final native void cairo_matrix_scale(double[] matrix, double sx, double sy);
178 /** @param matrix cast=(cairo_matrix_t *) */
cairo_matrix_transform_point(double[] matrix, double[] x, double[] y)179 public static final native void cairo_matrix_transform_point(double[] matrix, double[] x, double[] y);
180 /** @param matrix cast=(cairo_matrix_t *) */
cairo_matrix_translate(double[] matrix, double tx, double ty)181 public static final native void cairo_matrix_translate(double[] matrix, double tx, double ty);
182 /** @param cr cast=(cairo_t *) */
cairo_move_to(long cr, double x, double y)183 public static final native void cairo_move_to(long cr, double x, double y);
184 /** @param cr cast=(cairo_t *) */
cairo_new_path(long cr)185 public static final native void cairo_new_path(long cr);
186 /** @param cr cast=(cairo_t *) */
cairo_paint(long cr)187 public static final native void cairo_paint(long cr);
188 /** @param cr cast=(cairo_t *) */
cairo_paint_with_alpha(long cr, double alpha)189 public static final native void cairo_paint_with_alpha(long cr, double alpha);
190 /** @param path cast=(cairo_path_t *) */
cairo_path_destroy(long path)191 public static final native void cairo_path_destroy(long path);
192 /** @param pattern cast=(cairo_pattern_t *) */
cairo_pattern_add_color_stop_rgba(long pattern, double offset, double red, double green, double blue, double alpha)193 public static final native void cairo_pattern_add_color_stop_rgba(long pattern, double offset, double red, double green, double blue, double alpha);
194 /** @param surface cast=(cairo_surface_t *) */
cairo_pattern_create_for_surface(long surface)195 public static final native long cairo_pattern_create_for_surface(long surface);
cairo_pattern_create_linear(double x0, double y0, double x1, double y1)196 public static final native long cairo_pattern_create_linear(double x0, double y0, double x1, double y1);
197 /** @param pattern cast=(cairo_pattern_t *) */
cairo_pattern_destroy(long pattern)198 public static final native void cairo_pattern_destroy(long pattern);
199 /** @param pattern cast=(cairo_pattern_t *) */
cairo_pattern_set_extend(long pattern, int extend)200 public static final native void cairo_pattern_set_extend(long pattern, int extend);
201 /** @param pattern cast=(cairo_pattern_t *) */
cairo_pattern_set_filter(long pattern, int filter)202 public static final native void cairo_pattern_set_filter(long pattern, int filter);
203 /**
204  * @param pattern cast=(cairo_pattern_t *)
205  * @param matrix cast=(cairo_matrix_t *)
206  */
cairo_pattern_set_matrix(long pattern, double[] matrix)207 public static final native void cairo_pattern_set_matrix(long pattern, double[] matrix);
208 /**
209  * @method flags=dynamic
210  * @param surface cast=(cairo_surface_t *)
211  */
cairo_pdf_surface_set_size(long surface, double width_in_points, double height_in_points)212 public static final native void cairo_pdf_surface_set_size(long surface, double width_in_points, double height_in_points);
213 /**
214  * @param cairo cast=(cairo_t *)
215  */
cairo_push_group(long cairo)216 public static final native void cairo_push_group(long cairo);
217 /**
218  * @param cairo cast=(cairo_t *)
219  */
cairo_pop_group_to_source(long cairo)220 public static final native void cairo_pop_group_to_source(long cairo);
221 /**
222  * @method flags=dynamic
223  * @param surface cast=(cairo_surface_t *)
224  */
cairo_ps_surface_set_size(long surface, double width_in_points, double height_in_points)225 public static final native void cairo_ps_surface_set_size(long surface, double width_in_points, double height_in_points);
226 /** @param cr cast=(cairo_t *) */
cairo_rectangle(long cr, double x, double y, double width, double height)227 public static final native void cairo_rectangle(long cr, double x, double y, double width, double height);
228 /** @param cr cast=(cairo_t *) */
cairo_reference(long cr)229 public static final native long cairo_reference(long cr);
230 /** @param cr cast=(cairo_t *) */
cairo_reset_clip(long cr)231 public static final native void cairo_reset_clip(long cr);
232 /** @param cr cast=(cairo_t *) */
cairo_restore(long cr)233 public static final native void cairo_restore(long cr);
234 /** @param cr cast=(cairo_t *) */
cairo_save(long cr)235 public static final native void cairo_save(long cr);
236 /** @param cr cast=(cairo_t *) */
cairo_scale(long cr, double sx, double sy)237 public static final native void cairo_scale(long cr, double sx, double sy);
238 /**
239  * @method flags=dynamic
240  * @param cr cast=(cairo_surface_t *)
241  */
cairo_surface_set_device_scale(long cr, double sx, double sy)242 public static final native void cairo_surface_set_device_scale(long cr, double sx, double sy);
243 /**
244  * @method flags=dynamic
245  * @param cr cast=(cairo_surface_t *)
246  * @param sx cast=(double *)
247  * @param sy cast=(double *)
248  */
cairo_surface_get_device_scale(long cr, double [] sx, double [] sy)249 public static final native void cairo_surface_get_device_scale(long cr, double [] sx, double [] sy);
250 /**
251  * @param cr cast=(cairo_t *)
252  * @param family cast=(const char *)
253  */
cairo_select_font_face(long cr, byte[] family, int slant, int weight)254 public static final native void cairo_select_font_face(long cr, byte[] family, int slant, int weight);
255 /** @param cr cast=(cairo_t *) */
cairo_set_antialias(long cr, int antialias)256 public static final native void cairo_set_antialias(long cr, int antialias);
257 /** @param cr cast=(cairo_t *) */
cairo_set_dash(long cr, double[] dashes, int ndash, double offset)258 public static final native void cairo_set_dash(long cr, double[] dashes, int ndash, double offset);
259 /** @param cr cast=(cairo_t *) */
cairo_set_fill_rule(long cr, int fill_rule)260 public static final native void cairo_set_fill_rule(long cr, int fill_rule);
261 /** @param cr cast=(cairo_t *) */
cairo_set_font_size(long cr, double size)262 public static final native void cairo_set_font_size(long cr, double size);
263 /** @param cr cast=(cairo_t *) */
cairo_set_line_cap(long cr, int line_cap)264 public static final native void cairo_set_line_cap(long cr, int line_cap);
265 /** @param cr cast=(cairo_t *) */
cairo_set_line_join(long cr, int line_join)266 public static final native void cairo_set_line_join(long cr, int line_join);
267 /** @param cr cast=(cairo_t *) */
cairo_set_line_width(long cr, double width)268 public static final native void cairo_set_line_width(long cr, double width);
269 /**
270  * @param cr cast=(cairo_t *)
271  * @param matrix cast=(cairo_matrix_t *)
272  */
cairo_set_matrix(long cr, double[] matrix)273 public static final native void cairo_set_matrix(long cr, double[] matrix);
274 /** @param cr cast=(cairo_t *) */
cairo_set_miter_limit(long cr, double limit)275 public static final native void cairo_set_miter_limit(long cr, double limit);
276 /** @param cr cast=(cairo_t *) */
cairo_set_operator(long cr, int op)277 public static final native void cairo_set_operator(long cr, int op);
278 /**
279  * @param cr cast=(cairo_t *)
280  * @param source cast=(cairo_pattern_t *)
281  */
cairo_set_source(long cr, long source)282 public static final native void cairo_set_source(long cr, long source);
283 /** @param cr cast=(cairo_t *) */
cairo_set_source_rgb(long cr, double red, double green, double blue)284 public static final native void cairo_set_source_rgb(long cr, double red, double green, double blue);
285 /** @param cr cast=(cairo_t *) */
cairo_set_source_rgba(long cr, double red, double green, double blue, double alpha)286 public static final native void cairo_set_source_rgba(long cr, double red, double green, double blue, double alpha);
287 /**
288  * @param cr cast=(cairo_t *)
289  * @param surface cast=(cairo_surface_t *)
290  */
cairo_set_source_surface(long cr, long surface, double x, double y)291 public static final native void cairo_set_source_surface(long cr, long surface, double x, double y);
292 /** @param cr cast=(cairo_t *) */
cairo_set_tolerance(long cr, double tolerance)293 public static final native void cairo_set_tolerance(long cr, double tolerance);
294 /** @param cr cast=(cairo_t *) */
cairo_show_page(long cr)295 public static final native void cairo_show_page(long cr);
296 /** @param cr cast=(cairo_t *) */
cairo_stroke(long cr)297 public static final native void cairo_stroke(long cr);
298 /** @param surface cast=(cairo_surface_t *) */
cairo_surface_destroy(long surface)299 public static final native void cairo_surface_destroy(long surface);
300 /** @param surface cast=(cairo_surface_t *) */
cairo_surface_flush(long surface)301 public static final native void cairo_surface_flush(long surface);
302 /** @param surface cast=(cairo_surface_t *) */
cairo_surface_finish(long surface)303 public static final native void cairo_surface_finish(long surface);
304 /**
305  * @param surface cast=(cairo_surface_t *)
306  */
cairo_surface_get_type(long surface)307 public static final native int cairo_surface_get_type(long surface);
308 /**
309  * @param surface cast=(cairo_surface_t *)
310  */
cairo_surface_get_content(long surface)311 public static final native int cairo_surface_get_content(long surface);
312 /** @param surface cast=(cairo_surface_t *) */
cairo_surface_mark_dirty(long surface)313 public static final native void cairo_surface_mark_dirty(long surface);
314 /** @param surface cast=(cairo_surface_t *) */
cairo_surface_reference(long surface)315 public static final native void cairo_surface_reference(long surface);
316 /**
317  * @param cr cast=(cairo_t *)
318  * @param matrix cast=(cairo_matrix_t *)
319  */
cairo_transform(long cr, double[] matrix)320 public static final native void cairo_transform(long cr, double[] matrix);
321 /** @param cr cast=(cairo_t *) */
cairo_translate(long cr, double tx, double ty)322 public static final native void cairo_translate(long cr, double tx, double ty);
323 /** @param cr cast=(cairo_t *) */
cairo_user_to_device_distance(long cr, double[] dx, double[] dy)324 public static final native void cairo_user_to_device_distance(long cr, double[] dx, double[] dy);
cairo_version()325 public static final native int cairo_version();
326 /**
327  * @method flags=dynamic
328  * @param surface cast=(cairo_surface_t *)
329  */
cairo_xlib_surface_get_height(long surface)330 public static final native int cairo_xlib_surface_get_height(long surface);
331 /**
332  * @method flags=dynamic
333  * @param surface cast=(cairo_surface_t *)
334  */
cairo_xlib_surface_get_width(long surface)335 public static final native int cairo_xlib_surface_get_width(long surface);
336 /**
337  * @param region cast=(cairo_region_t *)
338  */
cairo_region_num_rectangles(long region)339 public static final native int cairo_region_num_rectangles(long region);
cairo_region_create()340 public static final native long cairo_region_create();
341 /**
342  * @param region cast=(cairo_region_t *)
343  */
cairo_region_copy(long region)344 public static final native long cairo_region_copy(long region);
345 /**
346  * @param region cast=(cairo_region_t *)
347  */
cairo_region_contains_point(long region, int x, int y)348 public static final native boolean cairo_region_contains_point(long region, int x, int y);
349 /**
350  * @param region cast=(cairo_region_t *)
351  * @param rect cast=(cairo_rectangle_int_t *)
352  */
cairo_region_contains_rectangle(long region, cairo_rectangle_int_t rect)353 public static final native long cairo_region_contains_rectangle(long region, cairo_rectangle_int_t rect);
354 /** @param region cast=(cairo_region_t *) */
cairo_region_destroy(long region)355 public static final native void cairo_region_destroy(long region);
356 /** @param region cast=(cairo_region_t *) */
cairo_region_is_empty(long region)357 public static final native boolean cairo_region_is_empty(long region);
358 /**
359  * @param region cast=(cairo_region_t *)
360  * @param rectangle cast=(cairo_rectangle_int_t *),flags=no_in
361  */
cairo_region_get_extents(long region, cairo_rectangle_int_t rectangle)362 public static final native void cairo_region_get_extents(long region, cairo_rectangle_int_t rectangle);
363 /**
364  * @param region cast=(cairo_region_t *)
365  * @param rectangle cast=(cairo_rectangle_int_t *)
366  */
cairo_region_get_rectangle(long region, int nth, long rectangle)367 public static final native void cairo_region_get_rectangle(long region, int nth, long rectangle);
368 /**
369  * @param source1 cast=(cairo_region_t *)
370  * @param source2 cast=(const cairo_region_t *)
371  */
cairo_region_intersect(long source1, long source2)372 public static final native void cairo_region_intersect(long source1, long source2);
373 /**
374  * @param rectangle cast=(const cairo_rectangle_int_t *)
375  */
cairo_region_create_rectangle(cairo_rectangle_int_t rectangle)376 public static final native long cairo_region_create_rectangle(cairo_rectangle_int_t rectangle);
377 /**
378  * @param source1 cast=(cairo_region_t *)
379  * @param source2 cast=(const cairo_region_t *)
380  */
cairo_region_subtract(long source1, long source2)381 public static final native void cairo_region_subtract(long source1, long source2);
382 /**
383  * @param region cast=(cairo_region_t *)
384  */
cairo_region_translate(long region, int dx, int dy)385 public static final native void cairo_region_translate(long region, int dx, int dy);
386 /**
387  * @param source1 cast=(cairo_region_t *)
388  * @param source2 cast=(const cairo_region_t *)
389  */
cairo_region_union(long source1, long source2)390 public static final native void cairo_region_union(long source1, long source2);
391 /**
392  * @param region cast=(cairo_region_t *)
393  * @param rect cast=(cairo_rectangle_int_t *),flags=no_out
394  */
cairo_region_union_rectangle(long region, cairo_rectangle_int_t rect)395 public static final native void cairo_region_union_rectangle(long region, cairo_rectangle_int_t rect);
396 /**
397  * @param dest cast=(void *)
398  * @param src cast=(const void *)
399  * @param size cast=(size_t)
400  */
memmove(cairo_path_t dest, long src, long size)401 public static final native void memmove(cairo_path_t dest, long src, long size);
402 /**
403  * @param dest cast=(void *)
404  * @param src cast=(const void *)
405  * @param size cast=(size_t)
406  */
memmove(cairo_path_data_t dest, long src, long size)407 public static final native void memmove(cairo_path_data_t dest, long src, long size);
408 /**
409  * @param dest cast=(void *)
410  * @param src cast=(const void *)
411  * @param size cast=(size_t)
412  */
memmove(cairo_rectangle_int_t dest, long src, long size)413 public static final native void memmove(cairo_rectangle_int_t dest, long src, long size);
414 /**
415  * @param dest cast=(void *)
416  * @param src cast=(const void *)
417  * @param size cast=(size_t)
418  */
memmove(double[] dest, long src, long size)419 public static final native void memmove(double[] dest, long src, long size);
420 
421 }
422