9399d4f1dc2c0c0b14560193b9a164a92ff5bf82
[mono.git] / mcs / class / Mono.Cairo / ChangeLog
1 2006-07-01  John Luke  <john.luke@gmail.com>
2
3         * Mono.Cairo/Status.cs:
4         * Mono.Cairo/Context.cs:
5         * Mono.Cairo/FontFace.cs:
6         * Mono.Cairo/Surface.cs:
7         * Mono.Cairo/Format.cs:
8         * Mono.Cairo/LinearGradient.cs:
9         * Mono.Cairo/SolidPattern.cs:
10         * Mono.Cairo/Win32Surface.cs:
11         * Mono.Cairo/Pattern.cs:
12         * Mono.Cairo/SurfacePattern.cs:
13         * Mono.Cairo/ImageSurface.cs:
14         * Mono.Cairo/Cairo.cs:
15         * Mono.Cairo/Gradient.cs:
16         * Mono.Cairo/XlibSurface.cs:
17         * Mono.Cairo/RadialGradient.cs: add remaining new API for cairo 1.2
18         
19 2006-07-01  John Luke  <john.luke@gmail.com>
20
21         * Mono.Cairo/FontType.cs:
22         * Mono.Cairo/PatternType.cs: add new enums for cairo 1.2
23
24 2006-06-25  John Luke  <john.luke@gmail.com>
25
26         * Mono.Cairo/Surface.cs: make Destroy() call Dispose()
27         so all the Disposable stuff happens correctly and only once
28         
29 2006-06-23  John Luke  <john.luke@gmail.com>
30
31         * Mono.Cairo/Pattern.cs:
32         * Mono.Cairo/SolidPattern.cs:
33         * Mono.Cairo/SurfacePattern.cs:
34         * Mono.Cairo/Gradient.cs:
35         * Mono.Cairo/LinearGradient.cs:
36         * Mono.Cairo/RadialGradient.cs: split the pattern/gradients
37         into their own files
38         
39 2006-06-23  John Luke  <john.luke@gmail.com>
40
41         #if CAIRO_1_2 changes
42         
43         * Mono.Cairo/Surface.cs: add SetFallbackResolution
44         * Mono.Cairo/CairoAPI.cs: remove old pdf/ps api and
45         add some of the new API
46         * Mono.Cairo/SurfaceType.cs:
47         * Mono.Cairo/SvgSurface.cs:
48         * Mono.Cairo/SvgVersion.cs: add these
49         
50 2006-06-23  John Luke  <john.luke@gmail.com>
51
52         * Mono.Cairo/Surface.cs:
53         * Mono.Cairo/ImageSurface.cs:
54         * Mono.Cairo/PDFSurface.cs:
55         * Mono.Cairo/PSSurface.cs:
56         * Mono.Cairo/Win32Surface.cs:
57         * Mono.Cairo/XlibSurface.cs: split the surfaces into
58         their own files, make pdf and ps reflect what will be
59         in the cairo 1.2 api
60
61 2006-06-23  John Luke  <john.luke@gmail.com>
62
63         * snippets/*.cs: use Cairo.Context instead of Cairo.Graphics
64         * Samples/*/Makefile: add to ease building of samples
65         
66 2006-05-02  Zac Bowling  <zac@zacbowling.com>
67         
68         * Mono.Cairo/Surface.cs: string should be byte[]
69         * Mono.Cairo/Cairo.cs: string should be byte[]
70         (Patch from Philipp Baer <phbaer@npw.net>)
71
72 2006-01-17  Alp Toker  <alp@atoker.com>
73
74         * Samples/x11/compile.sh: Remove unused gtk-sharp reference
75
76 2005-12-19  Wade Berrier <wberrier@novell.com>
77
78         * Mono.Cairo/Makefile: Fix EXTRA_DIST to include samples
79
80 2005-12-19  Peter Dennis Bartok  <pbartok@novell.com>
81
82         * Mono.Cairo/Format.cs: Removed fixme, added names in .Net format
83         * Mono.Cairo/Surface.cs: Removed fixme, added static method 
84           FromBitmap() to allow creating a surface from a bitmap
85         * Mono.Cairo/Pattern.cs: Removed fixme to not tempt anyone to change
86           the name down the road
87
88 2005-12-16  John Luke  <john.luke@gmail.com>
89
90         * Mono.Cairo/FontOptions.cs: fix bug with
91         fontOptions == null, check parameter to Merge
92         against null
93         * Mono.Cairo/Glyph.cs: add setters to properties
94         
95 2005-12-16  John Luke  <john.luke@gmail.com>
96
97         * Mono.Cairo/Cairo.cs: organize and add missing API
98         split out enums and structs
99         * Mono.Cairo/*.cs: add enums and structs as seperate files
100         implement ==, !=, Equals, and GetHashCode for the structs
101         move public fields to properties
102
103 2005-12-16  John Luke  <john.luke@gmail.com>
104
105         * Mono.Cairo/Cairo.cs:
106         * Mono.Cairo/Context.cs:
107         * Mono.Cairo/Pattern.cs:
108         * Mono.Cairo/Surface.cs: add MarkDirty and Flush,
109         mark Surface.Pointer obsolete in favor of Handle
110
111 2005-12-16  John Luke  <john.luke@gmail.com>
112
113         * Mono.Cairo.dll.sources:
114         * Mono.Cairo/Rectangle.cs: add
115         * Mono.Cairo/Cairo.cs: mark fill_extents and stroke extents
116         with out modifiers
117         * Mono.Cairo/Context.cs: FillExtents, and StrokeExtents return
118         a Rectangle (actually 2 points), remove previously unusable
119         versions, add an overload to Rectangle that takes a Rectangle
120         
121 2005-12-12  Mike Kestner  <mkestner@novell.com>
122
123         * Mono.Cairo/Context.cs: renamed from Graphics.cs. renamed Graphics to
124         Context and added an Obsolete subclass to minimize the pain.
125         * Mono.Cairo/Surface.cs : s/Graphics/Context.  
126         Thanks to jluke for pointing out this change was needed.
127
128 2005-12-06  John Luke  <john.luke@gmail.com>
129
130         * Mono.Cairo/Cairo.cs: fix Content and  Format values,
131         fixes the knockout/circles sample
132         * Samples/png/circles.cs:
133         * Samples/png/knockout.cs: replace circles with knockout,
134         which uses the newer style api and works
135
136 2005-12-02  Ben Maurer  <bmaurer@ximian.com>
137
138         * Mono.Cairo/Graphics.cs: Api fixups
139                 - Make Point, et al. structs like all other apis
140                 - Use properties rather than public fields
141                 - Obsolete the plurality of ways to set the color.
142
143 2005-11-27  John Luke  <john.luke@gmail.com>
144
145         * Mono.Cairo/Graphics.cs: add back FontSetSize,
146         FontSize setter, and FontFace as obsolete API
147
148 2005-11-25  John Luke  <john.luke@gmail.com>
149
150         * Mono.Cairo/Cairo.cs: add font_options* api
151         add cairo_get_font_matrix
152         * Mono.Cairo/FontOptions.cs: add
153         * Mono.Cairo/Graphics.cs: add FontOptions property,
154         remove FontSize setter and FontSetSize(),
155         remove FontFace() method as SelectFontFace already exists
156         remove non-existant TransformFont() and Font property
157         
158 2005-11-16  John Luke  <john.luke@gmail.com>
159
160         * snippets/*.cs: add snippets port
161         
162 2005-11-10  John Luke  <john.luke@gmail.com>
163
164         * Mono.Cairo/Graphics.cs:
165         * Mono.Cairo/Surface.cs: remove debugging output
166         
167 2005-10-09  Miguel de Icaza  <miguel@novell.com>
168
169         * Samples/gtk/sysdraw.cs: Fix the sample
170         
171
172 2005-09-19  John Luke  <john.luke@gmail.com>
173
174         * Mono.Cairo/Graphics.cs: add SelectFontFace and SetFontSize
175
176 2005-09-12  Hisham Mardam Bey  <hisham.mardambey@gmail.com>
177
178         * Samples/: Fix all samples to work with new API changes.
179
180 2005-09-12  John Luke  <john.luke@gmail.com>
181
182         * Mono.Cairo/Surface.cs: add two ImageSurface ctors
183         Obsolete Surface CreateForImage methods in favor of
184         the new ImageSurface ctors
185         * Mono.Cairo/Cairo.cs: add cairo_text_extents
186         * Mono.Cairo/Graphics.cs: add TextExtents ()
187         
188         
189 2005-09-07  John Luke  <john.luke@gmail.com>
190
191         * Mono.Cairo/Graphics.cs: the Relative path methods
192         should use a Distance not a PointD, and update some
193         parameter names for better documentation purposes
194         remove SetTargetImage (), and SetTargetDrawable ()
195         use Graphics.Target = Surface instead
196         * Mono.Cairo/Surface.cs: don't reference the surface after
197         we create it as it is not necessary
198         add the new surfaces to the surfaces hashtable on instantiation 
199         * Mono.Cairo/Pattern.cs: don't reference the pattern after
200         we create it as it is not necessary
201         
202 2005-09-07 Hisham Mardam Bey <hisham.mardambey@gmail.com>
203
204         * Samples/png: Fixed samples with new changes.
205         * Samples/x11: Fixed samples with new changes.
206         * Samples/gtk: Fixed samples with new changes.  
207
208 2005-09-06  John Luke  <john.luke@gmail.com>
209
210         * Samples/gtk/circles.cs: fix partially broken sample
211
212 2005-09-06  John Luke  <john.luke@gmail.com>
213
214         * Mono.Cairo/Surface.cs: make CreateSimilar non-static
215         and use Content instead of Format, add Surface.Status
216         * Mono.Cairo/Graphics.cs: add convenience
217         ctor to Color with an alpha of 1.0
218         add Tolerance getter, Change SetDash to compute
219         the length automatically, rename TargetSurface to Target,
220         add SetSourceRGB, SetSourceRGBA, and SetSourceSurface (),
221         add Paint, PaintWithAlpha, Mask, and MaskSurface (),
222         add StrokeExtents, FillExtents, ClipPreserve (), and CopyPage ()
223         * Mono.Cairo/Cairo.cs: add new imports:
224         cairo_stroke_extents, cairo_fill_extents,
225         cairo_clip_preserve, cairo_mask, cairo_mask_surface,
226         cairo_paint_with_alpha, cairo_surface_status
227         add Content enum and fix cairo_surface_create_similar to use
228         Content not Format
229         
230 2005-09-05  John Luke  <john.luke@gmail.com>
231
232         * Mono.Cairo/Samples/gtk/Graphics.cs:
233         add gtk-cairo helper that will work on win32 and
234         x11 based on gtk-dotnet in gtk#, not yet tested on
235         windows
236
237 2005-09-05  John Luke  <john.luke@gmail.com>
238
239         * Mono.Cairo/Samples/win32/compile.sh: add this
240         
241 2005-09-04  John Luke  <john.luke@gmail.com>
242
243         * Mono.Cairo/Cairo.cs: remove symbols not in cairo 1.0:
244           cairo_copy, cairo_current_path, cairo_arc_to, cairo_transform_font,
245           cairo_font_set_transform, cairo_font_current_transform,
246           cairo_font_reference, cairo_font_destroy, cairo_status_string,
247           cairo_surface_create_similar_solid
248           rename cairo_current_line_cap to cairo_get_line_cap,
249           remove now unused delegates
250         * Mono.Cairo/Graphics.cs:
251         * Mono.Cairo/Surface.cs: update for above all found 
252           with help of mono-shlib-cop
253
254
255 2005-09-04  John Luke  <john.luke@gmail.com>
256
257         * Mono.Cairo/Cairo.cs: add new values to Cairo.Status
258         
259 2005-09-02  John Luke  <john.luke@gmail.com>
260
261         * Mono.Cairo/Cairo.cs: only use operators in cairo_operator_t
262         
263 2005-09-01  John Luke  <john.luke@gmail.com>
264
265         * Mono.Cairo/Cairo.cs: add some imports used by
266         the extra surface types
267         * Mono.Cairo/Surface.cs: add XlibSurface and Win32Surface
268         remove Surface.CreateForXlib () 
269         add PdfSurface and PsSurface for future use (#if'ed out)
270         * Mono.Cairo/Graphics.cs: add ShowPage() method
271         * Samples/win32/arc.cs: add win32 sample
272         * Samples/gtk/sysdraw.cs: use XlibSurface instead of
273         Surface.CreateForXlib ()
274         * Samples/x11/*.cs: use XlibSurface instead of
275         Surface.CreateForXlib ()
276
277 2005-09-01  John Luke  <john.luke@gmail.com>
278
279         * Mono.Cairo/Cairo.cs: p/invoke the windows dll name
280           (libcairo-2.dll) so that we can work on .net also 
281         * Mono.Cairo/Cairo.cs: add cairo_set_antialias and
282           cairo_get_antialias and Cairo.Antialias enum
283         * Mono.Cairo/Graphics.cs: add Cairo.Graphics.Antialias
284           property
285          
286
287 2005-09-01 Hisham Mardam Bey <hisham.mardambey@gmail.com>
288
289          * Samples: Added png and x11 samples and cleaned up gtk
290
291 2005-08-30  John Luke  <john.luke@gmail.com>
292
293         * Mono.Cairo/Cairo.cs: mark CairoAPI internal, and move
294           some callback delegates outside the CairoAPI class
295         * Mono.Cairo.Matrix.cs: mark Matrix_T internal
296         * Mono.Cairo/*.cs: remove using System.Drawing;
297         * Mono.Cairo.Graphics.cs: fix IDisposable implementation
298           add overloads to MoveTo () and similar functions
299           for passing the parameters individually
300         * Makefile: remove -r:System.Drawing
301
302 2005-08-30  John Luke  <john.luke@gmail.com>
303
304         * Mono.Cairo/Cairo.cs: add import for
305         cairo_surface_write_to_png
306         * Mono.Cairo/Surface.cs: add WriteToPng method
307
308 2005-08-12 Hisham Mardam Bey <hisham.mardambey@gmail.com>
309         * Added xlib surface size / font size functions
310         * Added font matrix setting
311         
312 2005-08-5 Hisham Mardam Bey <hisham.mardambey@gmail.com>
313         * Cleanup all old methods, remove deprecated classes
314         
315 2005-07-12 Hisham Mardam Bey <hisham.mardambey@gmail.com>
316         * General fixups, this is becoming ready for SVN
317
318 2005-07-09 Hisham Mardam Bey <hisham.mardambey@gmail.com>
319         * Cairo.cs / Graphics.cs: Binded font functions for Cairo 0.5.x
320         * More cleanups to fonts and Graphics.cs
321
322 2005-07-08 Hisham Mardam Bey <hisham.mardambey@gmail.com>
323         * Matrix.cs: binded all functions from Cairo 0.5.x
324         * Surface.cs: binded all functions from Cairo 0.5.x
325         * Pattern.cs: binded all functions from Cairo 0.5.x
326         
327 2005-07-07 Hisham Mardam Bey <hisham.mardambey@gmail.com>
328         * Removed dependency on GTK 2.7.x in Samples
329         * Added more Matrix constructors
330         * Fixed typo in enum Extend
331         * Cairo.cs: fixed matrix_init* methods (dont use ref)
332         * Matrix.cs: moved to 0.5.x API, needs more work
333         
334 2005-07-06 Hisham Mardam Bey <hisham.mardambey@gmail.com>
335         * Moved a major part of the API to follow Cairo 0.5.x
336         * *_current_* are being replaced by *_get_*
337         * move *_set_* function to new API
338         * Add SurfaceImage type
339         * Matrix operations are somehow broken right now
340         
341 2005-07-05 Hisham Mardam Bey <hisham.mardambey@gmail.com>
342         * Graphics.cs: added get for Pattern property
343         * Cairo.cs: added FontExtents / TextExtents structs
344         * Cairo.cs: added several other functions from C API
345           cairo_text_extents
346         * Started move to Cairo 0.5.x
347
348 2005-07-04 Hisham Mardam Bey <hisham.mardambey@gmail.com>
349         * Graphics.cs: Added helper types (PointD, Point, Distance)
350         * Incorporated Reference() into some constructors
351         * Pattern.cs: Split patter into 3 object types
352         * Use double precision for sub-pixel rendering all over
353         * Use IntPtr.Zero instead of (IntPtr) 0
354         * Graphics.cs: Remove SetRGBColor and use Color type
355         * Matrix.cs: add Affine type as a subclass.
356
357 2005-04-24  Jordi Mas i Hernandez <jordi@ximian.com>
358         * Graphics.cs: Adds InStroke/InFill (patch from Pedro Kiefer)
359         * Cairo.cs  Adds InStroke/InFill (patch from Pedro Kiefer)
360
361 2004-04-25  Jordi Mas i Hernandez <jordi@ximian.com>
362
363         * Cairo.cs: fixes cairo_current_matrix signature
364         * Font.cs: fixes internal _create method always returning null
365         * Graphics.cs: fixes Graphics.Matrix
366         * Matrix.cs: does not allow matrix objects without a wrapped handle
367         * Surface.cs: implements Surface.Show 
368
369 2004-05-26  Miguel de Icaza  <miguel@ximian.com>
370
371         * Mono.Cairo/Cairo.cs: Do not use `extern string' here, as the
372         return value is owned by Cairo.
373
374 2004-05-10  Radek Doulik  <rodo@ximian.com>
375
376         * Mono.Cairo/Graphics.cs: fixed typo, pass x2, y2 to
377         cairo_curve_to instead of passing x2, x2
378
379 2004-04-25  Jordi Mas i Hernandez <jordi@ximian.com>
380         * Mono.Cairo/Pattern.cs: implemented all the new pattern API 
381         introduced in Cairo 0.1.20
382         * Font.cs: created class that encapsulates a font object creation
383         and managment.
384         * Cairo.cs: new dllexports, structs, and enums.
385         * Graphics.cs: added all the font functions, fixed the signature
386         of the methods that have changed, added new methods
387
388 2003-11-28  Miguel de Icaza  <miguel@ximian.com>
389
390         * Mono.Cairo/Object.cs: 
391
392         * Mono.Cairo/Surface.cs (LookupSurface): New method, it took me a
393         while to find out why Cairo applications would crash sometimes.
394         The problem was that Cairo.Object:TargetSurface get property would
395         create a Surface from an IntPtr, leading to having two managed
396         objects owning the same unmanaged Surface.
397
398         (Surface..ctor): Make private, so only this module can create
399         surfaces. 
400
401         (Surface.Dispose): Add disposable pattern, finalizer.
402
403         * Mono.Cairo/Object.cs: Add disposable pattern, finalizer.
404
405 2003-10-11  Duncan Mak  <duncan@ximian.com>
406
407         * Mono.Cairo/Cairo.cs (cairo_set_target_drawable): Not available anymore, removed.
408         (cairo_reference, cairo_arc, cairo_arc_negative): New API, added.
409         (cairo_current_matrix): Signature changed, updated.
410         (cairo_surface_reference): New API.
411         (cairo_surface_get_matrix): Use 'out' instead of 'ref' param.
412
413         * Mono.Cairo/Surface.cs:        
414         * Mono.Cairo/Object.cs: Added binding for new APIs listed in Cairo.cs.
415         (Destroy): It's supposed to return void, not IntPtr.
416
417 2003-09-08  Duncan Mak  <duncan@ximian.com>
418
419         * Mono.Cairo/Surface.cs (PutImage): Removed.
420
421         * Mono.Cairo/Object.cs (Copy): Wrapper for cairo_copy.
422
423         * Mono.Cairo/Cairo.cs (cairo_copy): New API
424         (cairo_surface_put_image): Removed.
425
426 2003-09-05  Duncan Mak  <duncan@ximian.com>
427
428         * Mono.Cairo/Object.cs (Tolerance): Fix typo.
429
430 2003-09-04  Duncan Mak  <duncan@ximian.com>
431
432         * Mono.Cairo/Cairo.cs: Update to the new API in CVS. Change all
433         *_get_* to *_current_*. 
434         (cairo_set_target_drawable): 
435         (cairo_surface_create_for_drawable): Add CLSCompliantAttribute.
436         (cairo_current_tolerance):
437         (cairo_set_tolerance): Fix typo. Thanks Alp.
438
439         * Mono.Cairo/Object.cs: Update binding to reflect changes in the
440         API.
441
442 2003-08-12  Duncan Mak  <duncan@ximian.com>
443
444         * Mono.Cairo/Cairo.cs: csc was having trouble resolving the type
445         name because the namespace name (Cairo) is the same as the class
446         name (also Cairo). To resolve this ambiguity while keeping the
447         code looking decent, the Cairo.Cairo class is now Cairo.CairoAPI.
448
449 2003-08-12  Duncan Mak  <duncan@ximian.com>
450
451         * Mono.Cairo/Cairo.cs: Now that the namespace is called 'Cairo',
452         the enums no longer need to be nested inside the Cairo class.
453
454         * Mono.Cairo/Matrix.cs:
455         * Mono.Cairo/Object.cs:
456         * Mono.Cairo/Surface.cs: I never liked having the word 'Object' in
457         the name of a class, esp. now that we have namespaces. So I have
458         decided to rename them.
459
460                 CairoObject        -> Cairo.Object
461                 CairoMatrixObject  -> Cairo.Matrix
462                 CairoSurfaceObject -> Cairo.Surface
463
464         I didn't like the Mono.Cairo namespace either, so they're just in
465         the Cairo namespace now. I know it's icky that the directory is
466         called Mono.Cairo, and the dll we write to is called
467         'Mono.Cairo.dll', and yet the namespace now gonna just be 'Cairo'
468         and not 'Mono.Cairo'. C'est la vie.
469         
470 2003-08-12  Duncan Mak  <duncan@ximian.com>
471
472         * Mono.Cairo/CairoObject.cs (Pattern): Re-enable this. This
473         is actually a CairoSurfaceObject (a C cairo_surface_t); the
474         CairoPatternObject is just something I made up...
475
476 2003-08-12  Nick Drochak <ndrochak@gol.com>
477
478         * Makefile: put .dll on System.Drawing reference. Fix CSC build.
479
480 2003-08-11  Duncan Mak  <duncan@ximian.com>
481
482         * makefile:
483         * Mono.Cairo.dll.sources: Added.
484
485         * Mono.Cairo/Cairo.cs:
486         * Mono.Cairo/CairoObject.cs:
487         * Mono.Cairo/CairoMatrixObject.cs: 
488         * Mono.Cairo/CairoSurfaceObject.cs: Made them build properly.
489
490 2003-08-09  Duncan Mak  <duncan@ximian.com>
491
492         * Mono.Cairo/Cairo.cs:
493         * Mono.Cairo/CairoObject.cs:
494         * Mono.Cairo/CairoMatrixObject.cs: 
495         * Mono.Cairo/CairoSurfaceObject.cs: Added Cairo binding.