summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRico Tzschichholz <ricotz@ubuntu.com>2014-10-06 21:49:45 +0200
committerRico Tzschichholz <ricotz@ubuntu.com>2014-10-06 21:53:04 +0200
commitdcb7085ed707d02af6695d07843c03e76152fde8 (patch)
tree4f91a09661078680657367f2f1053bd41d76ab1e
parent0f7e0bc3e1069af448cc81473337c4f98042f4aa (diff)
downloadvala-dcb7085ed707d02af6695d07843c03e76152fde8.tar.gz
cairo: Add some missing 1.12.x and pre 1.13.x bindings
(cherry picked from commit b2255376ab99c2947f86555a895fe6727d92ccad)
-rw-r--r--vapi/cairo.vapi49
1 files changed, 47 insertions, 2 deletions
diff --git a/vapi/cairo.vapi b/vapi/cairo.vapi
index dd7a51a93..a4ae6e7f7 100644
--- a/vapi/cairo.vapi
+++ b/vapi/cairo.vapi
@@ -638,6 +638,8 @@ namespace Cairo {
public class Surface {
[CCode (cname = "cairo_surface_create_similar")]
public Surface.similar (Surface other, Content content, int width, int height);
+ [CCode (cname = "cairo_surface_create_similar_image")]
+ public Surface.similar_image (Surface other, Format format, int width, int height);
[CCode (cname = "cairo_surface_create_for_rectangle")]
public Surface.for_rectangle (Surface target, double x, double y, double width, double height);
public void copy_page ();
@@ -646,17 +648,22 @@ namespace Cairo {
public void get_font_options (out FontOptions options);
public Content get_content ();
public Device get_device ();
+ public void get_device_offset (out double x_offset, out double y_offset);
+ public void get_device_scale (out double x_scale, out double y_scale);
public void get_fallback_resolution (out double x_pixels_per_inch, out double y_pixels_per_inch);
public uint get_reference_count ();
+ public SurfaceType get_type ();
public bool has_show_text_glyphs ();
public void mark_dirty ();
public void mark_dirty_rectangle (int x, int y, int width, int height);
+ public Surface map_to_image (RectangleInt extents);
public void set_device_offset (double x_offset, double y_offset);
- public void get_device_offset (out double x_offset, out double y_offset);
+ public void set_device_scale (double x_scale, double y_scale);
public void set_fallback_resolution (double x_pixels_per_inch, double y_pixels_per_inch);
public void show_page ();
public Status status ();
- public SurfaceType get_type ();
+ public bool supports_mime_type (string mime_type);
+ public void unmap_image (Surface image);
public Status write_to_png (string filename);
public Status write_to_png_stream (WriteFunc write_func);
@@ -665,6 +672,44 @@ namespace Cairo {
public Surface? win32_get_image ();
}
+ [Compact]
+ [CCode (ref_function = "cairo_device_reference", unref_function = "cairo_device_destroy", cname = "cairo_device_t", cheader_filename = "cairo.h")]
+ public class DeviceObserver {
+ protected DeviceObserver ();
+ public double elapsed ();
+ public double fill_elapsed ();
+ public double glyphs_elapsed ();
+ public double mask_elapsed ();
+ public double paint_elapsed ();
+ public double stroke_elapsed ();
+ public Status print (WriteFunc write_func);
+ }
+
+ [Compact]
+ [CCode (ref_function = "cairo_surface_reference", unref_function = "cairo_surface_destroy", cname = "cairo_surface_t", cheader_filename = "cairo.h")]
+ public class SurfaceObserver {
+ [CCode (cname = "cairo_surface_create_observer")]
+ public SurfaceObserver (Surface target, SurfaceObserverMode mode);
+ public Status add_fill_callback (SurfaceObserverCallback func);
+ public Status add_finish_callback (SurfaceObserverCallback func);
+ public Status add_flush_callback (SurfaceObserverCallback func);
+ public Status add_glyphs_callback (SurfaceObserverCallback func);
+ public Status add_mask_callback (SurfaceObserverCallback func);
+ public Status add_paint_callback (SurfaceObserverCallback func);
+ public Status add_stroke_callback (SurfaceObserverCallback func);
+ public double elapsed ();
+ public Status print (WriteFunc write_func);
+ }
+
+ [CCode (cname = "cairo_surface_observer_callback_t", instance_pos = 2.9)]
+ public delegate void SurfaceObserverCallback (SurfaceObserver observer, Surface target);
+
+ [CCode (cname = "cairo_surface_observer_mode_t", has_type_id = false)]
+ public enum SurfaceObserverMode {
+ NORMAL,
+ RECORD_OPERATIONS
+ }
+
[CCode (cname = "cairo_content_t", has_type_id = false)]
public enum Content {
COLOR,