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