diff options
author | Rico Tzschichholz <ricotz@ubuntu.com> | 2014-10-06 21:49:45 +0200 |
---|---|---|
committer | Rico Tzschichholz <ricotz@ubuntu.com> | 2014-10-06 21:53:04 +0200 |
commit | dcb7085ed707d02af6695d07843c03e76152fde8 (patch) | |
tree | 4f91a09661078680657367f2f1053bd41d76ab1e | |
parent | 0f7e0bc3e1069af448cc81473337c4f98042f4aa (diff) | |
download | vala-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.vapi | 49 |
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, |