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