2008-12-08 Atsushi Enomoto <atsushi@ximian.com>
[mono.git] / mcs / class / Mono.Cairo / ChangeLog
1 2008-11-30 Jordi Mas i Hernandez <jordimash@gmail.com>
2
3         * Mono.Cairo/ImageSurface.cs: Fixes ImageSurface constructor signature.
4         Data param should not be ref since the data is not modified.
5
6 2008-05-14  Sebastien Pouliot  <sebastien@ximian.com>
7
8         * Mono.Cairo/Context.cs,
9         * Mono.Cairo/Glyph.cs: Don't downcast an IntPtr to an Int32.
10         [Found using Gendarme]
11
12 2008-04-08 Jordi Mas i Hernandez <jordimash@gmail.com>
13
14         * Context.cs: New ReferenceCount property
15         * FontFace.cs: New FontFace.cs method
16         * LinearGradient.cs: New LinearPoints property
17         * Surface.cs: New ReferenceCount property
18         * SolidPattern.cs: New Color property
19         * Gradient.cs: New ColorStopCount property
20         * NativeMethods.cs: Update new methods and remove CAIRO_1_4 define
21
22 2008-04-05 Jordi Mas i Hernandez <jordimash@gmail.com>
23
24         * ScaledFont.cs: Adds class to encapsulate scaled font API
25         * Mono.Cairo.dll.sources: Adds new class
26         * Context.cs: Access to Scaled Fonts
27         * NativeMethods.cs: Add some missing scale_font APIs and fixes 
28
29 2007-07-07  Miguel de Icaza  <miguel@novell.com>
30
31         * Mono.Cairo/Context.cs: Integrate Alp's patch for looking up
32         Patterns and add the unmanaged to managed mapping engine (as the
33         various patterns can be derived, we need to ensure unique
34         managed instances for the same object). 
35
36         * Mono.Cairo/Gradient.cs: Made Gradient protected, although it is
37         an API change, there was no way any existing instances would have
38         ever worked.   
39
40         From Alp.
41
42         * Mono.Cairo/Context.cs: Fix leak of the surface if set with
43         Target .
44
45         From Alp Toker: new SetSourceOveload with no x, y parameters.
46
47         From Alp Toker: Add new API call IdentityMatrix.
48
49         * Mono.Cairo/Surface.cs: Integrate another cleanup from Alp.
50
51         * Mono.Cairo/SolidPattern.cs: Add helper APIs based on Alp's patch
52         based on F-Spot code.
53
54         Integrated various patches from Alp Toker:
55         
56         * Mono.Cairo/FontFace.cs: Add to the build.
57
58         * Mono.Cairo/Context.cs: Add a number of methods that are
59         compatible with the public Cairo API, and add commented out
60         Obsoletes for the names that we had.
61
62         (MaskSurface): More descriptive parameters
63
64         (SetSourceRGB, SetSourceRGBA): Removed [Obsoletes] from as those
65         are the public Cairo names.   Use the API directly without
66         creating a helper Color.
67
68         (FontFace): New property.
69
70         * Mono.Cairo/FontFace.cs: Partial integration of Alp's work for
71         FontFace.   There are two differences: no support for owns flag,
72         and no automatic unreffing on the finalizer thread.   Instead we
73         display an error message. 
74
75         * NativeMethods.cs: Split the native methods into its own file. 
76
77         * Mono.Cairo/Context.cs: Integrate Alp's patch to not use ref in
78         the call to cairo_font_extents, but use out instead.
79
80         * Integrate Alp's patch to rename CairoAPI NativeMethod, in
81         accordance to 2.7.1 framework guidelines.
82
83         * Removed the ifdef CAIRO_1_2, the documentation already reflects
84         that things are only available on Cairo 1.2.   
85
86         * Add new API calls to query Cairo for its version
87
88 2007-05-26  John Luke  <john.luke@gmail.com>
89
90         * Mono.Cairo/Cairo.cs:
91         * Mono.Cairo/Context.cs: fix call to cairo_get_font_matrix,
92         reported by patperry@stanford.edu (Patrick Perry) in bug#81626
93
94 2007-01-15  Alp Toker  <alp@atoker.com>
95
96         * Mono.Cairo/Surface.cs:
97         * Makefile: Disable CAIRO_1_2. Patches to make the 1.2 binding work
98         are being developed out-of-tree but not ready yet.
99
100 2007-01-08  Alp Toker  <alp@atoker.com>
101
102         * Mono.Cairo/Context.cs: Implement Context.GlyphExtents().
103         * Mono.Cairo/Cairo.cs: Change other TextExtents refs to outs.
104
105 2007-01-08  Alp Toker  <alp@atoker.com>
106
107         * Mono.Cairo/Context.cs: Restore Obsolete markings for old glyph
108         methods. It is fair to assume nobody was able to use these broken
109         methods, and Obsolete is important for the ongoing API review process.
110
111 2007-01-08  Alp Toker  <alp@atoker.com>
112
113         * Mono.Cairo/Context.cs:
114         * Mono.Cairo/Surface.cs:
115         Introduce Context.SetSource(). The old method also oddly took ints
116         instead of doubles. Obsolete Context.SetSourceSurface() and
117         Surface.Show().
118
119 2007-01-08  Alp Toker  <alp@atoker.com>
120
121         * Mono.Cairo/Format.cs: Obsolete Format.ARGB32/RGB24 in favour of
122         lower caps enum members.
123
124 2007-01-05  Alp Toker  <alp@atoker.com>
125
126         * Mono.Cairo/Pattern.cs: Obsolete Pattern(Surface) ctor in favour of
127         SurfacePattern(Surface).
128
129 2007-01-05  Alp Toker  <alp@atoker.com>
130
131         * Mono.Cairo/Context.cs:
132         * Mono.Cairo/Surface.cs: Generalize to Surface.LookupSurface()
133         This method will be useful elsewhere.
134
135 2007-01-04  Miguel de Icaza  <miguel@novell.com>
136
137         * Mono.Cairo/Context.cs (FromGlyphToUnManagedMemory): Deal with
138         an API limitation, the Glyph structure in Cairo is defined as
139         taking a `long' which would be 4 or 8 bytes depending on the
140         operating system.
141
142         We now cope with this by using the proper structure to the
143         unmanaged code. 
144
145 2006-12-30  Alp Toker  <alp@atoker.com>
146
147         * Makefile: Enable CAIRO_1_2.
148
149 2006-12-28  Alp Toker  <alp@atoker.com>
150
151         * Mono.Cairo/DirectFBSurface.cs: Confusion between the DirectFB
152         surface handle and Cairo surface handle was making the public
153         constructor unusable.
154
155 2006-12-27  Alp Toker  <alp@atoker.com>
156
157         * Mono.Cairo.dll.sources:
158         * Mono.Cairo/Context.cs:
159         * Mono.Cairo/GlitzSurface.cs: Add new surface.
160
161 2006-12-27  Alp Toker  <alp@atoker.com>
162
163         * Mono.Cairo/Cairo.cs:
164         * Mono.Cairo/Status.cs: Add new API for 1.4
165
166 2006-12-07  Alp Toker  <alp@atoker.com>
167
168         * Mono.Cairo/Context.cs: Add GroupTarget cases for Xcb and DirectFB
169         surfaces.
170
171 2006-09-19 Jordi Mas <jordimash@gmail.com>
172
173         * Surface.cs, Cairo.cs: the parameters for Show are X,Y not witdh 
174         and height and also double not int.
175
176 2006-07-21  Alp Toker  <alp@atoker.com>
177
178         * Mono.Cairo.dll.sources:
179         * Mono.Cairo/DirectFBSurface.cs:
180         * Mono.Cairo/XcbSurface.cs: Add new surfaces.
181
182 2006-07-06  John Luke  <john.luke@gmail.com>
183
184         * Mono.Cairo/Cairo.cs:
185         * Mono.Cairo/ImageSurface.cs: Marshal data correctly
186
187 2006-07-01  John Luke  <john.luke@gmail.com>
188
189         * Mono.Cairo/Context.cs:
190         * Mono.Cairo/PdfSurface.cs:
191         * Mono.Cairo/PSSurface.cs:
192         * Mono.Cairo/Cairo.cs:
193         * Mono.Cairo/XlibSurface.cs:
194         * Mono.Cairo/SvgSurface.cs: add some new surface API I missed
195
196 2006-07-01  John Luke  <john.luke@gmail.com>
197
198         * Mono.Cairo/Status.cs:
199         * Mono.Cairo/Context.cs:
200         * Mono.Cairo/FontFace.cs:
201         * Mono.Cairo/Surface.cs:
202         * Mono.Cairo/Format.cs:
203         * Mono.Cairo/LinearGradient.cs:
204         * Mono.Cairo/SolidPattern.cs:
205         * Mono.Cairo/Win32Surface.cs:
206         * Mono.Cairo/Pattern.cs:
207         * Mono.Cairo/SurfacePattern.cs:
208         * Mono.Cairo/ImageSurface.cs:
209         * Mono.Cairo/Cairo.cs:
210         * Mono.Cairo/Gradient.cs:
211         * Mono.Cairo/XlibSurface.cs:
212         * Mono.Cairo/RadialGradient.cs: add remaining new API for cairo 1.2
213         
214 2006-07-01  John Luke  <john.luke@gmail.com>
215
216         * Mono.Cairo/FontType.cs:
217         * Mono.Cairo/PatternType.cs: add new enums for cairo 1.2
218
219 2006-06-25  John Luke  <john.luke@gmail.com>
220
221         * Mono.Cairo/Surface.cs: make Destroy() call Dispose()
222         so all the Disposable stuff happens correctly and only once
223         
224 2006-06-23  John Luke  <john.luke@gmail.com>
225
226         * Mono.Cairo/Pattern.cs:
227         * Mono.Cairo/SolidPattern.cs:
228         * Mono.Cairo/SurfacePattern.cs:
229         * Mono.Cairo/Gradient.cs:
230         * Mono.Cairo/LinearGradient.cs:
231         * Mono.Cairo/RadialGradient.cs: split the pattern/gradients
232         into their own files
233         
234 2006-06-23  John Luke  <john.luke@gmail.com>
235
236         #if CAIRO_1_2 changes
237         
238         * Mono.Cairo/Surface.cs: add SetFallbackResolution
239         * Mono.Cairo/CairoAPI.cs: remove old pdf/ps api and
240         add some of the new API
241         * Mono.Cairo/SurfaceType.cs:
242         * Mono.Cairo/SvgSurface.cs:
243         * Mono.Cairo/SvgVersion.cs: add these
244         
245 2006-06-23  John Luke  <john.luke@gmail.com>
246
247         * Mono.Cairo/Surface.cs:
248         * Mono.Cairo/ImageSurface.cs:
249         * Mono.Cairo/PDFSurface.cs:
250         * Mono.Cairo/PSSurface.cs:
251         * Mono.Cairo/Win32Surface.cs:
252         * Mono.Cairo/XlibSurface.cs: split the surfaces into
253         their own files, make pdf and ps reflect what will be
254         in the cairo 1.2 api
255
256 2006-06-23  John Luke  <john.luke@gmail.com>
257
258         * snippets/*.cs: use Cairo.Context instead of Cairo.Graphics
259         * Samples/*/Makefile: add to ease building of samples
260         
261 2006-05-02  Zac Bowling  <zac@zacbowling.com>
262         
263         * Mono.Cairo/Surface.cs: string should be byte[]
264         * Mono.Cairo/Cairo.cs: string should be byte[]
265         (Patch from Philipp Baer <phbaer@npw.net>)
266
267 2006-01-17  Alp Toker  <alp@atoker.com>
268
269         * Samples/x11/compile.sh: Remove unused gtk-sharp reference
270
271 2005-12-19  Wade Berrier <wberrier@novell.com>
272
273         * Mono.Cairo/Makefile: Fix EXTRA_DIST to include samples
274
275 2005-12-19  Peter Dennis Bartok  <pbartok@novell.com>
276
277         * Mono.Cairo/Format.cs: Removed fixme, added names in .Net format
278         * Mono.Cairo/Surface.cs: Removed fixme, added static method 
279           FromBitmap() to allow creating a surface from a bitmap
280         * Mono.Cairo/Pattern.cs: Removed fixme to not tempt anyone to change
281           the name down the road
282
283 2005-12-16  John Luke  <john.luke@gmail.com>
284
285         * Mono.Cairo/FontOptions.cs: fix bug with
286         fontOptions == null, check parameter to Merge
287         against null
288         * Mono.Cairo/Glyph.cs: add setters to properties
289         
290 2005-12-16  John Luke  <john.luke@gmail.com>
291
292         * Mono.Cairo/Cairo.cs: organize and add missing API
293         split out enums and structs
294         * Mono.Cairo/*.cs: add enums and structs as seperate files
295         implement ==, !=, Equals, and GetHashCode for the structs
296         move public fields to properties
297
298 2005-12-16  John Luke  <john.luke@gmail.com>
299
300         * Mono.Cairo/Cairo.cs:
301         * Mono.Cairo/Context.cs:
302         * Mono.Cairo/Pattern.cs:
303         * Mono.Cairo/Surface.cs: add MarkDirty and Flush,
304         mark Surface.Pointer obsolete in favor of Handle
305
306 2005-12-16  John Luke  <john.luke@gmail.com>
307
308         * Mono.Cairo.dll.sources:
309         * Mono.Cairo/Rectangle.cs: add
310         * Mono.Cairo/Cairo.cs: mark fill_extents and stroke extents
311         with out modifiers
312         * Mono.Cairo/Context.cs: FillExtents, and StrokeExtents return
313         a Rectangle (actually 2 points), remove previously unusable
314         versions, add an overload to Rectangle that takes a Rectangle
315         
316 2005-12-12  Mike Kestner  <mkestner@novell.com>
317
318         * Mono.Cairo/Context.cs: renamed from Graphics.cs. renamed Graphics to
319         Context and added an Obsolete subclass to minimize the pain.
320         * Mono.Cairo/Surface.cs : s/Graphics/Context.  
321         Thanks to jluke for pointing out this change was needed.
322
323 2005-12-06  John Luke  <john.luke@gmail.com>
324
325         * Mono.Cairo/Cairo.cs: fix Content and  Format values,
326         fixes the knockout/circles sample
327         * Samples/png/circles.cs:
328         * Samples/png/knockout.cs: replace circles with knockout,
329         which uses the newer style api and works
330
331 2005-12-02  Ben Maurer  <bmaurer@ximian.com>
332
333         * Mono.Cairo/Graphics.cs: Api fixups
334                 - Make Point, et al. structs like all other apis
335                 - Use properties rather than public fields
336                 - Obsolete the plurality of ways to set the color.
337
338 2005-11-27  John Luke  <john.luke@gmail.com>
339
340         * Mono.Cairo/Graphics.cs: add back FontSetSize,
341         FontSize setter, and FontFace as obsolete API
342
343 2005-11-25  John Luke  <john.luke@gmail.com>
344
345         * Mono.Cairo/Cairo.cs: add font_options* api
346         add cairo_get_font_matrix
347         * Mono.Cairo/FontOptions.cs: add
348         * Mono.Cairo/Graphics.cs: add FontOptions property,
349         remove FontSize setter and FontSetSize(),
350         remove FontFace() method as SelectFontFace already exists
351         remove non-existant TransformFont() and Font property
352         
353 2005-11-16  John Luke  <john.luke@gmail.com>
354
355         * snippets/*.cs: add snippets port
356         
357 2005-11-10  John Luke  <john.luke@gmail.com>
358
359         * Mono.Cairo/Graphics.cs:
360         * Mono.Cairo/Surface.cs: remove debugging output
361         
362 2005-10-09  Miguel de Icaza  <miguel@novell.com>
363
364         * Samples/gtk/sysdraw.cs: Fix the sample
365         
366
367 2005-09-19  John Luke  <john.luke@gmail.com>
368
369         * Mono.Cairo/Graphics.cs: add SelectFontFace and SetFontSize
370
371 2005-09-12  Hisham Mardam Bey  <hisham.mardambey@gmail.com>
372
373         * Samples/: Fix all samples to work with new API changes.
374
375 2005-09-12  John Luke  <john.luke@gmail.com>
376
377         * Mono.Cairo/Surface.cs: add two ImageSurface ctors
378         Obsolete Surface CreateForImage methods in favor of
379         the new ImageSurface ctors
380         * Mono.Cairo/Cairo.cs: add cairo_text_extents
381         * Mono.Cairo/Graphics.cs: add TextExtents ()
382         
383         
384 2005-09-07  John Luke  <john.luke@gmail.com>
385
386         * Mono.Cairo/Graphics.cs: the Relative path methods
387         should use a Distance not a PointD, and update some
388         parameter names for better documentation purposes
389         remove SetTargetImage (), and SetTargetDrawable ()
390         use Graphics.Target = Surface instead
391         * Mono.Cairo/Surface.cs: don't reference the surface after
392         we create it as it is not necessary
393         add the new surfaces to the surfaces hashtable on instantiation 
394         * Mono.Cairo/Pattern.cs: don't reference the pattern after
395         we create it as it is not necessary
396         
397 2005-09-07 Hisham Mardam Bey <hisham.mardambey@gmail.com>
398
399         * Samples/png: Fixed samples with new changes.
400         * Samples/x11: Fixed samples with new changes.
401         * Samples/gtk: Fixed samples with new changes.  
402
403 2005-09-06  John Luke  <john.luke@gmail.com>
404
405         * Samples/gtk/circles.cs: fix partially broken sample
406
407 2005-09-06  John Luke  <john.luke@gmail.com>
408
409         * Mono.Cairo/Surface.cs: make CreateSimilar non-static
410         and use Content instead of Format, add Surface.Status
411         * Mono.Cairo/Graphics.cs: add convenience
412         ctor to Color with an alpha of 1.0
413         add Tolerance getter, Change SetDash to compute
414         the length automatically, rename TargetSurface to Target,
415         add SetSourceRGB, SetSourceRGBA, and SetSourceSurface (),
416         add Paint, PaintWithAlpha, Mask, and MaskSurface (),
417         add StrokeExtents, FillExtents, ClipPreserve (), and CopyPage ()
418         * Mono.Cairo/Cairo.cs: add new imports:
419         cairo_stroke_extents, cairo_fill_extents,
420         cairo_clip_preserve, cairo_mask, cairo_mask_surface,
421         cairo_paint_with_alpha, cairo_surface_status
422         add Content enum and fix cairo_surface_create_similar to use
423         Content not Format
424         
425 2005-09-05  John Luke  <john.luke@gmail.com>
426
427         * Mono.Cairo/Samples/gtk/Graphics.cs:
428         add gtk-cairo helper that will work on win32 and
429         x11 based on gtk-dotnet in gtk#, not yet tested on
430         windows
431
432 2005-09-05  John Luke  <john.luke@gmail.com>
433
434         * Mono.Cairo/Samples/win32/compile.sh: add this
435         
436 2005-09-04  John Luke  <john.luke@gmail.com>
437
438         * Mono.Cairo/Cairo.cs: remove symbols not in cairo 1.0:
439           cairo_copy, cairo_current_path, cairo_arc_to, cairo_transform_font,
440           cairo_font_set_transform, cairo_font_current_transform,
441           cairo_font_reference, cairo_font_destroy, cairo_status_string,
442           cairo_surface_create_similar_solid
443           rename cairo_current_line_cap to cairo_get_line_cap,
444           remove now unused delegates
445         * Mono.Cairo/Graphics.cs:
446         * Mono.Cairo/Surface.cs: update for above all found 
447           with help of mono-shlib-cop
448
449
450 2005-09-04  John Luke  <john.luke@gmail.com>
451
452         * Mono.Cairo/Cairo.cs: add new values to Cairo.Status
453         
454 2005-09-02  John Luke  <john.luke@gmail.com>
455
456         * Mono.Cairo/Cairo.cs: only use operators in cairo_operator_t
457         
458 2005-09-01  John Luke  <john.luke@gmail.com>
459
460         * Mono.Cairo/Cairo.cs: add some imports used by
461         the extra surface types
462         * Mono.Cairo/Surface.cs: add XlibSurface and Win32Surface
463         remove Surface.CreateForXlib () 
464         add PdfSurface and PsSurface for future use (#if'ed out)
465         * Mono.Cairo/Graphics.cs: add ShowPage() method
466         * Samples/win32/arc.cs: add win32 sample
467         * Samples/gtk/sysdraw.cs: use XlibSurface instead of
468         Surface.CreateForXlib ()
469         * Samples/x11/*.cs: use XlibSurface instead of
470         Surface.CreateForXlib ()
471
472 2005-09-01  John Luke  <john.luke@gmail.com>
473
474         * Mono.Cairo/Cairo.cs: p/invoke the windows dll name
475           (libcairo-2.dll) so that we can work on .net also 
476         * Mono.Cairo/Cairo.cs: add cairo_set_antialias and
477           cairo_get_antialias and Cairo.Antialias enum
478         * Mono.Cairo/Graphics.cs: add Cairo.Graphics.Antialias
479           property
480          
481
482 2005-09-01 Hisham Mardam Bey <hisham.mardambey@gmail.com>
483
484          * Samples: Added png and x11 samples and cleaned up gtk
485
486 2005-08-30  John Luke  <john.luke@gmail.com>
487
488         * Mono.Cairo/Cairo.cs: mark CairoAPI internal, and move
489           some callback delegates outside the CairoAPI class
490         * Mono.Cairo.Matrix.cs: mark Matrix_T internal
491         * Mono.Cairo/*.cs: remove using System.Drawing;
492         * Mono.Cairo.Graphics.cs: fix IDisposable implementation
493           add overloads to MoveTo () and similar functions
494           for passing the parameters individually
495         * Makefile: remove -r:System.Drawing
496
497 2005-08-30  John Luke  <john.luke@gmail.com>
498
499         * Mono.Cairo/Cairo.cs: add import for
500         cairo_surface_write_to_png
501         * Mono.Cairo/Surface.cs: add WriteToPng method
502
503 2005-08-12 Hisham Mardam Bey <hisham.mardambey@gmail.com>
504         * Added xlib surface size / font size functions
505         * Added font matrix setting
506         
507 2005-08-5 Hisham Mardam Bey <hisham.mardambey@gmail.com>
508         * Cleanup all old methods, remove deprecated classes
509         
510 2005-07-12 Hisham Mardam Bey <hisham.mardambey@gmail.com>
511         * General fixups, this is becoming ready for SVN
512
513 2005-07-09 Hisham Mardam Bey <hisham.mardambey@gmail.com>
514         * Cairo.cs / Graphics.cs: Binded font functions for Cairo 0.5.x
515         * More cleanups to fonts and Graphics.cs
516
517 2005-07-08 Hisham Mardam Bey <hisham.mardambey@gmail.com>
518         * Matrix.cs: binded all functions from Cairo 0.5.x
519         * Surface.cs: binded all functions from Cairo 0.5.x
520         * Pattern.cs: binded all functions from Cairo 0.5.x
521         
522 2005-07-07 Hisham Mardam Bey <hisham.mardambey@gmail.com>
523         * Removed dependency on GTK 2.7.x in Samples
524         * Added more Matrix constructors
525         * Fixed typo in enum Extend
526         * Cairo.cs: fixed matrix_init* methods (dont use ref)
527         * Matrix.cs: moved to 0.5.x API, needs more work
528         
529 2005-07-06 Hisham Mardam Bey <hisham.mardambey@gmail.com>
530         * Moved a major part of the API to follow Cairo 0.5.x
531         * *_current_* are being replaced by *_get_*
532         * move *_set_* function to new API
533         * Add SurfaceImage type
534         * Matrix operations are somehow broken right now
535         
536 2005-07-05 Hisham Mardam Bey <hisham.mardambey@gmail.com>
537         * Graphics.cs: added get for Pattern property
538         * Cairo.cs: added FontExtents / TextExtents structs
539         * Cairo.cs: added several other functions from C API
540           cairo_text_extents
541         * Started move to Cairo 0.5.x
542
543 2005-07-04 Hisham Mardam Bey <hisham.mardambey@gmail.com>
544         * Graphics.cs: Added helper types (PointD, Point, Distance)
545         * Incorporated Reference() into some constructors
546         * Pattern.cs: Split patter into 3 object types
547         * Use double precision for sub-pixel rendering all over
548         * Use IntPtr.Zero instead of (IntPtr) 0
549         * Graphics.cs: Remove SetRGBColor and use Color type
550         * Matrix.cs: add Affine type as a subclass.
551
552 2005-04-24  Jordi Mas i Hernandez <jordi@ximian.com>
553         * Graphics.cs: Adds InStroke/InFill (patch from Pedro Kiefer)
554         * Cairo.cs  Adds InStroke/InFill (patch from Pedro Kiefer)
555
556 2004-04-25  Jordi Mas i Hernandez <jordi@ximian.com>
557
558         * Cairo.cs: fixes cairo_current_matrix signature
559         * Font.cs: fixes internal _create method always returning null
560         * Graphics.cs: fixes Graphics.Matrix
561         * Matrix.cs: does not allow matrix objects without a wrapped handle
562         * Surface.cs: implements Surface.Show 
563
564 2004-05-26  Miguel de Icaza  <miguel@ximian.com>
565
566         * Mono.Cairo/Cairo.cs: Do not use `extern string' here, as the
567         return value is owned by Cairo.
568
569 2004-05-10  Radek Doulik  <rodo@ximian.com>
570
571         * Mono.Cairo/Graphics.cs: fixed typo, pass x2, y2 to
572         cairo_curve_to instead of passing x2, x2
573
574 2004-04-25  Jordi Mas i Hernandez <jordi@ximian.com>
575         * Mono.Cairo/Pattern.cs: implemented all the new pattern API 
576         introduced in Cairo 0.1.20
577         * Font.cs: created class that encapsulates a font object creation
578         and managment.
579         * Cairo.cs: new dllexports, structs, and enums.
580         * Graphics.cs: added all the font functions, fixed the signature
581         of the methods that have changed, added new methods
582
583 2003-11-28  Miguel de Icaza  <miguel@ximian.com>
584
585         * Mono.Cairo/Object.cs: 
586
587         * Mono.Cairo/Surface.cs (LookupSurface): New method, it took me a
588         while to find out why Cairo applications would crash sometimes.
589         The problem was that Cairo.Object:TargetSurface get property would
590         create a Surface from an IntPtr, leading to having two managed
591         objects owning the same unmanaged Surface.
592
593         (Surface..ctor): Make private, so only this module can create
594         surfaces. 
595
596         (Surface.Dispose): Add disposable pattern, finalizer.
597
598         * Mono.Cairo/Object.cs: Add disposable pattern, finalizer.
599
600 2003-10-11  Duncan Mak  <duncan@ximian.com>
601
602         * Mono.Cairo/Cairo.cs (cairo_set_target_drawable): Not available anymore, removed.
603         (cairo_reference, cairo_arc, cairo_arc_negative): New API, added.
604         (cairo_current_matrix): Signature changed, updated.
605         (cairo_surface_reference): New API.
606         (cairo_surface_get_matrix): Use 'out' instead of 'ref' param.
607
608         * Mono.Cairo/Surface.cs:        
609         * Mono.Cairo/Object.cs: Added binding for new APIs listed in Cairo.cs.
610         (Destroy): It's supposed to return void, not IntPtr.
611
612 2003-09-08  Duncan Mak  <duncan@ximian.com>
613
614         * Mono.Cairo/Surface.cs (PutImage): Removed.
615
616         * Mono.Cairo/Object.cs (Copy): Wrapper for cairo_copy.
617
618         * Mono.Cairo/Cairo.cs (cairo_copy): New API
619         (cairo_surface_put_image): Removed.
620
621 2003-09-05  Duncan Mak  <duncan@ximian.com>
622
623         * Mono.Cairo/Object.cs (Tolerance): Fix typo.
624
625 2003-09-04  Duncan Mak  <duncan@ximian.com>
626
627         * Mono.Cairo/Cairo.cs: Update to the new API in CVS. Change all
628         *_get_* to *_current_*. 
629         (cairo_set_target_drawable): 
630         (cairo_surface_create_for_drawable): Add CLSCompliantAttribute.
631         (cairo_current_tolerance):
632         (cairo_set_tolerance): Fix typo. Thanks Alp.
633
634         * Mono.Cairo/Object.cs: Update binding to reflect changes in the
635         API.
636
637 2003-08-12  Duncan Mak  <duncan@ximian.com>
638
639         * Mono.Cairo/Cairo.cs: csc was having trouble resolving the type
640         name because the namespace name (Cairo) is the same as the class
641         name (also Cairo). To resolve this ambiguity while keeping the
642         code looking decent, the Cairo.Cairo class is now Cairo.CairoAPI.
643
644 2003-08-12  Duncan Mak  <duncan@ximian.com>
645
646         * Mono.Cairo/Cairo.cs: Now that the namespace is called 'Cairo',
647         the enums no longer need to be nested inside the Cairo class.
648
649         * Mono.Cairo/Matrix.cs:
650         * Mono.Cairo/Object.cs:
651         * Mono.Cairo/Surface.cs: I never liked having the word 'Object' in
652         the name of a class, esp. now that we have namespaces. So I have
653         decided to rename them.
654
655                 CairoObject        -> Cairo.Object
656                 CairoMatrixObject  -> Cairo.Matrix
657                 CairoSurfaceObject -> Cairo.Surface
658
659         I didn't like the Mono.Cairo namespace either, so they're just in
660         the Cairo namespace now. I know it's icky that the directory is
661         called Mono.Cairo, and the dll we write to is called
662         'Mono.Cairo.dll', and yet the namespace now gonna just be 'Cairo'
663         and not 'Mono.Cairo'. C'est la vie.
664         
665 2003-08-12  Duncan Mak  <duncan@ximian.com>
666
667         * Mono.Cairo/CairoObject.cs (Pattern): Re-enable this. This
668         is actually a CairoSurfaceObject (a C cairo_surface_t); the
669         CairoPatternObject is just something I made up...
670
671 2003-08-12  Nick Drochak <ndrochak@gol.com>
672
673         * Makefile: put .dll on System.Drawing reference. Fix CSC build.
674
675 2003-08-11  Duncan Mak  <duncan@ximian.com>
676
677         * makefile:
678         * Mono.Cairo.dll.sources: Added.
679
680         * Mono.Cairo/Cairo.cs:
681         * Mono.Cairo/CairoObject.cs:
682         * Mono.Cairo/CairoMatrixObject.cs: 
683         * Mono.Cairo/CairoSurfaceObject.cs: Made them build properly.
684
685 2003-08-09  Duncan Mak  <duncan@ximian.com>
686
687         * Mono.Cairo/Cairo.cs:
688         * Mono.Cairo/CairoObject.cs:
689         * Mono.Cairo/CairoMatrixObject.cs: 
690         * Mono.Cairo/CairoSurfaceObject.cs: Added Cairo binding.