2006-12-27 Alp Toker <alp@atoker.com>
authorAlp Toker <alp@mono-cvs.ximian.com>
Wed, 27 Dec 2006 04:47:46 +0000 (04:47 -0000)
committerAlp Toker <alp@mono-cvs.ximian.com>
Wed, 27 Dec 2006 04:47:46 +0000 (04:47 -0000)
* Mono.Cairo/Cairo.cs:
* Mono.Cairo/Status.cs: Add new API for 1.4

svn path=/trunk/mcs/; revision=70103

mcs/class/Mono.Cairo/ChangeLog
mcs/class/Mono.Cairo/Mono.Cairo/Cairo.cs
mcs/class/Mono.Cairo/Mono.Cairo/Status.cs

index d8398c5dea86434a139db538ba19dbc2b45c1dac..394e9703e560f06cfb55c3b7dbb479b0b313b61c 100644 (file)
@@ -1,3 +1,8 @@
+2006-12-27  Alp Toker  <alp@atoker.com>
+
+       * Mono.Cairo/Cairo.cs:
+       * Mono.Cairo/Status.cs: Add new API for 1.4
+
 2006-12-07  Alp Toker  <alp@atoker.com>
 
        * Mono.Cairo/Context.cs: Add GroupTarget cases for Xcb and DirectFB
index c27479fa69f3115144d9fe7de1b43625fb3dbd06..37d830030ca28f1282caaf0f70fd7bcec7ad9c54 100644 (file)
@@ -62,6 +62,11 @@ namespace Cairo
                
                [DllImport (cairo)]
                internal static extern void cairo_clip_preserve (IntPtr cr);
+
+#if CAIRO_1_4
+               [DllImport (cairo)]
+               internal static extern void cairo_clip_extents (IntPtr cr, out double x1, out double y1, out double x2, out double y2);
+#endif
                
                [DllImport (cairo)]
                internal static extern void cairo_close_path (IntPtr cr);
@@ -355,21 +360,48 @@ namespace Cairo
                
                [DllImport (cairo)]
                internal static extern void cairo_pattern_add_color_stop_rgba (IntPtr pattern, double offset, double red, double green, double blue, double alpha);
+
+#if CAIRO_1_4
+               [DllImport (cairo)]
+               internal static extern Status cairo_pattern_get_color_stop_count (IntPtr pattern, out int count);
+               [DllImport (cairo)]
+               internal static extern Status cairo_pattern_get_color_stop_rgba (IntPtr pattern, int index, out double offset, out double red, out double green, out double blue, out double alpha);
+#endif
                
                [DllImport (cairo)]
                internal static extern IntPtr cairo_pattern_create_for_surface (IntPtr surface);
+
+#if CAIRO_1_4
+               [DllImport (cairo)]
+               internal static extern Status cairo_pattern_get_surface (IntPtr pattern, out IntPtr surface);
+#endif
                
                [DllImport (cairo)]
                internal static extern IntPtr cairo_pattern_create_linear (double x0, double y0, double x1, double y1);
+
+#if CAIRO_1_4
+               [DllImport (cairo)]
+               internal static extern Status cairo_pattern_get_linear_points (IntPtr pattern, out double x0, out double y0, out double x1, out double y1);
+#endif
                
                [DllImport (cairo)]
                internal static extern IntPtr cairo_pattern_create_radial (double cx0, double cy0, double radius0, double cx1, double cy1, double radius1);
+
+#if CAIRO_1_4
+               [DllImport (cairo)]
+               internal static extern Status cairo_pattern_get_radial_circles (IntPtr pattern, out double x0, out double y0, out double r0, out double x1, out double y1, out double r1);
+#endif
                
                [DllImport (cairo)]
                internal static extern IntPtr cairo_pattern_create_rgb (double r, double g, double b);
                
                [DllImport (cairo)]
                internal static extern IntPtr cairo_pattern_create_rgba (double r, double g, double b, double a);
+
+#if CAIRO_1_4
+               [DllImport (cairo)]
+               internal static extern Status cairo_pattern_get_rgba (IntPtr pattern, out double red, out double green, out double blue, out double alpha);
+#endif
                
                [DllImport (cairo)]
                internal static extern void cairo_pattern_destroy (IntPtr pattern);
@@ -525,6 +557,14 @@ namespace Cairo
                
                [DllImport (cairo)]
                internal static extern void cairo_set_dash (IntPtr cr, double [] dashes, int ndash, double offset);
+
+#if CAIRO_1_4
+               [DllImport (cairo)]
+               internal static extern Status cairo_get_dash (IntPtr cr, IntPtr dashes, out double offset);
+
+               [DllImport (cairo)]
+               internal static extern Status cairo_get_dash_count (IntPtr cr, out int count);
+#endif
                
                [DllImport (cairo)]
                internal static extern void cairo_set_fill_rule (IntPtr cr, Cairo.FillRule fill_rule);
@@ -598,6 +638,14 @@ namespace Cairo
                [DllImport (cairo)]
                internal static extern void cairo_stroke_preserve (IntPtr cr);
                
+#if CAIRO_1_4
+               [DllImport (cairo)]
+               internal static extern void cairo_rectangle_list_destroy (IntPtr rectangle_list);
+
+               [DllImport (cairo)]
+               internal static extern IntPtr cairo_copy_clip_rectangles (IntPtr cr);
+#endif
+
                // Surface
                [DllImport (cairo)]
                internal static extern IntPtr cairo_surface_create_similar (IntPtr surface, Cairo.Content content, int width, int height);
@@ -705,6 +753,11 @@ namespace Cairo
                [DllImport (cairo)]
                internal static extern IntPtr cairo_win32_surface_create (IntPtr hdc);
                
+#if CAIRO_1_4
+               [DllImport (cairo)]
+               internal static extern IntPtr cairo_win32_surface_create_with_ddb (IntPtr hdc, Format format, int width, int height);
+#endif
+
                // XcbSurface
                [DllImport (cairo)]
                internal static extern IntPtr cairo_xcb_surface_create (IntPtr connection, uint drawable, IntPtr visual, int width, int height);
index bbe3f55cd420c9c052ed463e03c8cd2e38b49e5b..105a5bd0a3aa29c7ac3770c898bdcafe56ef25df 100644 (file)
@@ -58,6 +58,10 @@ namespace Cairo
                InvalidDash,
 #if CAIRO_1_2
                InvalidDscComment,
+#endif
+#if CAIRO_1_4
+               InvalidIndex,
+               ClipNotRepresentable,
 #endif
        }
 }