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