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