2007-01-09 Sebastien Pouliot <sebastien@ximian.com>
[mono.git] / mcs / class / System.Drawing / System.Drawing / ChangeLog
1 2007-01-09  Sebastien Pouliot  <sebastien@ximian.com>
2
3         * Font.cs: Unify platform detection code.
4         * gdipFunctions.cs: Unify platform detection code.
5         * Graphics.cs: Unify platform detection code.
6         * Image.cs: Unify platform detection code.
7         * SystemColors.cs: Unify platform detection code.
8
9 2007-01-08  Sebastien Pouliot  <sebastien@ximian.com>
10
11         * gdipStructs.cs: Add support for SignaturePatterns and 
12         SiggnatureMasks values.
13
14 2006-12-30  Alexander Olk  <alex.olk@googlemail.com>
15
16         * gdipFunctions.cs: Don't create "millions" of byte arrays in
17         GdiPlusStreamHelper. Just create a default size array and resize it
18         only when needed. (as an example: the FileDialog sample created more
19         than 1700 new byte arrays on my system before the patch, now only 74)
20
21 2006-12-29  Gert Driesen  <drieseng@users.sourceforge.net>
22
23         * Brush.cs: Fixed line endings.
24         * BufferedGraphicsContext.cs: Fixed line endings.
25         * CharacterRange.cs: Fixed line endings.
26         * Graphics.cs: Fixed line endings.
27         * IDeviceContext.cs: Fixed line endings.
28         * SizeFConverter.cs: Fixed line endings.
29         * SystemBrushes.cs: Fixed line endings.
30         * SystemFonts.cs: Fixed line endings.
31         * SystemPens.cs: Fixed line endings.
32
33 2006-12-22  Sebastien Pouliot  <sebastien@ximian.com>
34
35         * Graphics.cs: Splitted CopyFromScreen into platform specific methods
36         and added MonoLimitations to all overloads. This should get better 
37         results from MoMA.
38
39 2006-12-19  Sebastien Pouliot  <sebastien@ximian.com> 
40
41         * FontFamily.cs: More accurate Mono* attributes to avoid confusion.
42         * Icon.cs: Dummy implementation of ExtractAssociatedIcon to always 
43         return SystemIcons.WinLogo (which is better than throwing an NIE).
44         Updated MonoTODO, to a MonoLimitation, to reflect the change.
45
46 2006-12-14  Sebastien Pouliot  <sebastien@ximian.com>
47
48         * Image.cs: Rework Clone so it doesn't confuse MoMA to report a NIE.
49         Cloning works for bitmap. Metafiles aren't (actually) supported.
50
51 2006-12-07  Sebastien Pouliot  <sebastien@ximian.com>
52
53         * Icon.cs: Revert a change from r68882. The type is also part of the 
54         icon's name. Fix bug #80181.
55
56 2006-12-03  Sebastien Pouliot  <sebastien@ximian.com>
57
58         * Icon.cs: Add a new ctor that returns undisposable Icon instances 
59         (required when used from SystemIcons). Added a dispose check in 
60         ToBitmap (many other are missing).
61         * SystemIcons.cs: Change icons to the one already in SVN.
62
63 2006-12-02  Sebastien Pouliot  <sebastien@ximian.com>
64
65         * FontConverter.cs: Add a comment why the empty finalizer is required.
66         * gdipFunctions.cs: Remove warning from build (unused variable).
67         * Icon.cs: Fix .ctor accepting a type - the type is to find the 
68         assembly, not the type of the ressource.
69         * SystemIcons.cs: Load some icons from the assembly (all the same Mono
70         icon for tonight).
71
72 2006-11-22  Sebastien Pouliot  <sebastien@ximian.com>
73
74         * BufferedGraphicsContext.cs: Better MonoTODO.
75         * BufferedGraphics.cs: Better MonoTODO.
76         * Font.cs: Better MonoTODO.
77         * FontFamily.cs: Better MonoTODO.
78         * Graphics.cs: Better MonoTODO.
79         * Icon.cs: Better MonoTODO.
80         * Image.cs: Second chance while saving using the current RawFormat.
81         This allows icons to be saved as PNG (strange but look at unit tests).
82         * ImageFormatConverter.cs: Implement GetStandardValues (and remove
83         it's MonoTODO) and fix GetStandardValuesSupported (to return true).
84         * Region.cs: Implement ReleaseHrgn (2.0) - not really useful (as the
85         handle is never exposed) but it's easier than to document the TODO ;-)
86         * SystemIcons.cs: Better MonoTODO.
87
88 2006-11-06  Sebastien Pouliot  <sebastien@ximian.com>
89
90         * RectangleF.cs: Fix operator !=. Patch by Manuel Alejandro Cerón 
91         Estrada.
92
93 2006-11-04  Chris Toshok  <toshok@ximian.com>
94
95         * SystemColors.cs: reassign the given color to the return value of
96         UpdateKnownColor.  This makes sure that the color has the same
97         SystemColor name.  So, SystemColors.Control.Name always equals
98         "Control", regardless of the values the theme has stuffed in it.
99
100         * Color.cs: UpdateKnownColor now returns the new color.
101
102 2006-10-11  Sebastien Pouliot  <sebastien@ximian.com>
103
104         * Graphics.cs: In MeasureCharacterRanges throw an ArgumentException if
105         StringFormat is null and return an empty region array if no range exists 
106         (avoid GDI+ error/exeception). In MeasureString (2 overloads) replace 
107         999999 by Int32.MaxValue (now that the real bug is fixed).
108         * StringFormat.cs: Ensure we are clearing the handle before throwing
109         any exception.
110
111 2006-09-21  Sebastien Pouliot  <sebastien@ximian.com>
112
113         * gdipFunctions.cs: Throw an OverflowException for the ValueOverflow
114         Status code.
115
116 2006-09-21 Jordi Mas i Hernandez <jordimash@gmail.com>
117
118         * gdipFunctions.cs, Image.cs: 78315. Probably in the future we should
119         add the same checking for other resource release GDI API calls.
120         
121 2006-09-19  Sebastien Pouliot  <sebastien@ximian.com>
122
123         * StringFormat.cs: Add missing validations.
124
125 2006-09-18  Sebastien Pouliot  <sebastien@ximian.com> 
126
127         * Graphics.cs: Add missing validations to MeasureCharacterRanges.
128
129 2006-09-18  Sebastien Pouliot  <sebastien@ximian.com>
130
131         * Graphics.cs: Reorder instructions in MeasureString methods to avoid
132         allocations before checking for quick exit case (null/String.Empty 
133         text or throwing execptions).
134
135 2006-09-11  Sebastien Pouliot  <sebastien@ximian.com>
136
137         * ImageConverter.cs: Fixed ConvertTo to deal with null values (#79331)
138         and not to "return new NotSupportedException", throwing them is better
139
140 2006-09-07  Kornél Pál  <kornelpal@gmail.com>
141
142         * ComIStreamMarshaler.cs: ManagedToNativeWrapper: Dispose COM vtable
143           on shutdown. Dispose unmanaged resources when constructor fails.
144
145 2006-09-06  Kornél Pál  <kornelpal@gmail.com>
146
147         * ComIStreamMarshaler.cs: ManagedToNativeWrapper should not have a
148           destructor because it is freed using Release. (Proper fix for bug
149           #78315.) Free COM vtable when unloading and all objects Released.
150
151 2006-09-06  Jonathan Chambers  <joncham@gmail.com> 
152
153         * ComIStreamMarshaler.cs: Only deallocate memory
154         for COM wrapper if not shutting down. #78315
155         
156 2006-09-04  Jonathan Chambers  <joncham@gmail.com> 
157
158         * ComIStreamMarshaler.cs: Do not deallocate unmanaged memory
159         allocated for vtable. If this finalizer runs before all clients
160         are done with it (Image(s) in this case) we crash on windows. #78315
161         
162 2006-09-01  Sebastien Pouliot  <sebastien@ximian.com>
163
164         * Bitmap.cs: Fix exceptions for LockBits.
165
166 2006-08-28  Sebastien Pouliot  <sebastien@ximian.com>
167
168         * ImageAnimator.cs: Remove catch/throw in WorkerThread (it hides the
169         original exception). Found with Gendarme.
170         * Color.cs: Remove the double-check lock. Found with Gendarme.
171         * ColorConverter.cs: Remove the double-check lock. Found with Gendarme
172
173 2006-08-28  Jonathan Chambers  <joncham@gmail.com> 
174
175         * ComIStreamMarshaler.cs: Do not free memory allocated for
176         Com Callable Wrapper for stream. When Image created from stream
177         is destroyed, it calls Release on CCW interface. Somehow we seem
178         to be destroying Stream CCW before Image is destroyed. Fixes
179         crash on exit on Windows. #78315
180         
181 2006-08-28      Boris Kirzner   <borisk@mainsoft.com>
182
183         * SystemColors.jvm.cs: fix array size for NET_2_0
184
185 2006-08-27  Sebastien Pouliot  <sebastien@ximian.com>
186
187         * ColorConverter.cs: Catch the case where the integer part of the 
188         color doesn't fit into a 32bit integer.
189         * ColorTranslator.cs: Fixed Gendarme's UseStringEmptyRule on ToHtml 
190         method. Fixed string handling on FromHtml method. Fixed all parameter
191         names to match FX.
192
193 2006-08-25  Sebastien Pouliot  <sebastien@ximian.com> 
194
195         * gdipFunctions.cs: Change ColorMatrix to IntPtr in method 
196         GdipSetImageAttributesColorMatrix definition.
197         * FontConverter.cs: Fix compiler warnings.
198
199 2006-08-24  Sebastien Pouliot  <sebastien@ximian.com>
200
201         * TextureBrush.cs: Remove private Image member as we cannot, without
202         cloning it (which removes the advantage of caching it), return it for 
203         the Image property *and* we cannot dispose of it properly (Dispose 
204         isn't overridden).
205
206 2006-08-22  Sebastien Pouliot  <sebastien@ximian.com>
207
208         * gdipFunctions.cs: Fix GdipGetImageWidth to use an uint for it's
209         width out parameter.
210         * Image.cs: Cast the uint into an int for the Width property.
211
212 2006-08-12  Duncan Mak  <duncan@novell.com>
213
214         * gdipFunctions.cs (GdipLoadImageFromStream):
215         (GdipSaveImageToStream): Don't include these methods when
216         compiling the unit tests.
217
218 2006-08-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
219
220         * gdipFunctions.cs: return -1 when stream.Length throws.
221
222 2006-08-11  Sebastien Pouliot  <sebastien@ximian.com> 
223
224         * Font.cs: Remove the, now unrequired, FaceNameOffset field and
225         use the object size instead of the structure size when copying.
226
227 2006-08-11  Sebastien Pouliot  <sebastien@ximian.com>
228
229         * Font.cs: Added more checks to ToLogFont and fixed it's behaviour
230         to match MS boundary between GDI+ and SD.
231
232 2006-08-07  Andrew Skiba <andrews@mainsoft.com>
233
234         * Graphics.jvm.cs, Pen.jvm.cs, Region.jvm.cs: TARGET_JVM fix
235
236 2006-08-05  Sebastien Pouliot  <sebastien@ximian.com>
237
238         * Font.cs: Avoid double cast in Equals. Return lfCharSet as 1 in
239         ToLogFont even if GDI+ has that value to 0.
240
241 2006-08-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
242
243         * Icon.cs: when converting to Bitmap, handle the 24 bits separately.
244         Read the XOR and AND masks in a single read.
245
246 2006-08-04  Sebastien Pouliot  <sebastien@ximian.com>
247
248         * Pen.cs: Fix unit tests wrt libgdiplus return value change.
249
250 2006-08-03  Sebastien Pouliot  <sebastien@ximian.com>
251
252         * FontFamily.cs: Fix unit tests wrt libgdiplus return value change.
253         * Region.cs: Fix unit tests wrt libgdiplus return value change.
254
255 2006-08-01  Jonathan Chambers  <joncham@gmail.com>
256
257         * Font.cs: Fix marshalling of LOGFONT in ToHfont. 
258         Fixes #78939.
259         
260 2006-07-20  Sebastien Pouliot  <sebastien@ximian.com>
261
262         * Graphics: Added implementation for ReleaseHDC by Jonathan Pobst 
263         for NET_2_0 profile.
264
265 2006-07-06  Sebastien Pouliot  <sebastien@ximian.com>
266
267         * Image.cs: Ensure we're setting the nativeObject to NULL before 
268         throwing any exception while disposing (and avoid possible double
269         freeing). Avoid multiple casts in Clone method.
270         * Pen.cs: Ensure the internal pen's brush is always disposed 
271         correctly. Avoid making a reference to the internal brush.
272         * SolidBrush.cs: Avoid setting color when cloning the solid brush
273         as the .ctor(IntPtr) always does this job.
274
275 2006-07-04  Sebastien Pouliot  <sebastien@ximian.com>
276
277         * Image.cs: Made GetThumbnailImage throw OutOfMemoryException when
278         image size is invalid (to match MS behaviour), also ensure that the
279         Graphics instance is disposed even if CheckStatus throws an exception.
280
281 2006-06-26  Sebastien Pouliot  <sebastien@ximian.com>
282
283         * Pen.cs: Ensure we dispose of an existing brush before replacing it.
284         Avoid double-cast when dealing with SolidBrush.
285
286 2006-06-06  Sebastien Pouliot  <sebastien@ximian.com>
287
288         * gdipFunctions.cs: Fix API signature (missing pen pointer) for 
289         GdipIsOutlineVisiblePathPoint[I] methods.
290         * FontFamily.cs: Delay the call to refreshName until it is actually
291         required.
292
293 2006-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
294
295         * Color.cs: when deserializing from an MS generated stream, the value
296         for known colors was 0. These changes make our Color handle that case.
297         We won't serialize the name for known colors either, but the value will
298         be there, so we only check for a 0 value on a known color once.
299         Fixes bug #78265.
300
301 2006-05-30  Sebastien Pouliot  <sebastien@ximian.com> 
302
303         * Font.cs: Change default charset to 1. Ensure we always call the
304         CheckStatus method after calling GDI+. Added null checks to match MS
305         exception handling.
306         * FontFamily.cs: Avoid double-cast in Equals. Fixed Equals not compare
307         pointers but names. Simplify the Generic* static properties by reusing
308         the .ctor code. Fixed ToString to match MS output. Removed 
309         GetStyleCheck as it failed when multiple styles were provided (flags).
310         * gdipFunctions.cs: Convert Status.FontFamilyNotFound to an 
311         ArgumentException.
312
313 2006-05-29  Sebastien Pouliot  <sebastien@ximian.com> 
314
315         * ImageFormatConverter.cs: Changed ConvertFrom to work with both short
316         (e.g. Bmp) and long (e.g. guid) names.
317
318 2006-05-26  Sebastien Pouliot  <sebastien@ximian.com> 
319
320         * ImageFormatConverter.cs: Fixing unit tests for ImageFormat 
321         introduced a regression in the converter (not catched by other unit
322         tests).
323
324 2006-05-25  Sebastien Pouliot  <sebastien@ximian.com> 
325
326         * gdipFunctions.cs: Added wrapper methods for GdipGetRegionHRgn and 
327         GdipCreateRegionHrgn functions.
328         * Region.cs: Reimplement GetHrgn and FromHrgn methods using the GDI+
329         calls.
330
331 2006-05-24  Sebastien Pouliot  <sebastien@ximian.com> 
332
333         * PointConverter.cs: Fx 2.0 throws an ArgumentException in 
334         CreateInstance if some values are missing from the dictionary, while
335         1.x throws an NullReferenceException.
336         * RectangleConverter.cs: Fx 2.0 throws an ArgumentException in 
337         CreateInstance if some values are missing from the dictionary, while
338         1.x throws an NullReferenceException.
339         * SizeConverter.cs: Fx 2.0 throws an ArgumentException in 
340         CreateInstance if some values are missing from the dictionary, while
341         1.x throws an NullReferenceException.
342         * SizeFConverter.cs: Fix CreateInstance to use float (not int).
343
344 2006-05-24  Sebastien Pouliot  <sebastien@ximian.com>
345
346         * Font.cs: Added a Demand for UnmanagedCode on both ToLogFont methods.
347         * Graphics.cs: Added checks for null Rectangle[F] arrays in 
348         FillRectangles methods and removed the check for 0-length (MS throws).
349         Let EndContainer mthod throws a NullReferenceException on 1.x profile.
350         * Pen.cs: Let Brush property throws a NullReferenceException on 1.x.
351
352 2006-05-24  Sebastien Pouliot  <sebastien@ximian.com> 
353
354         * Pen.cs: Clone the supplied brush in the .ctor (as the user may 
355         dispose of it anytime). Make sure we're disposing our cached brush
356         when disposing the pen.
357
358 2006-05-21  Sebastien Pouliot  <sebastien@ximian.com> 
359
360         * ContentAlignment.cs: Removed [Serializable] from 2.0 profile.
361         * FontStyle.cs: Removed [Serializable] from 2.0 profile.
362         * GraphicsUnit.cs: Removed [Serializable] from 2.0 profile.
363         * KnownColor.cs: Removed [Serializable] from 2.0 profile.
364         * RotateFlipType.cs: Removed [Serializable] from 2.0 profile.
365         * StringAligment.cs: Removed [Serializable] from 2.0 profile.
366         * StringDigitSubstitute.cs: Removed [Serializable] from 2.0 profile.
367         * StringFormatFlags.cs: Removed [Serializable] from 2.0 profile.
368         * StringTrimming.cs: Removed [Serializable] from 2.0 profile.
369         * StringUnit.cs: Removed [Serializable] from 2.0 profile.
370
371 2006-05-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
372
373         * ImageAnimator.cs: get the FrameDelay from the image properties, if
374         available. Remove ^Ms.
375
376 2006-05-17  Sebastien Pouliot  <sebastien@ximian.com> 
377
378         * Pen.cs: Get the pen color from the solid brush (when applicable). 
379         Added missing validations for most properties. Always return a clone 
380         of the internal brush (so no one can dispose of it in our back).
381
382 2006-05-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
383
384         * Color.cs: make it serialization-compatible with MS. Fixes bug #78265.
385
386 2006-05-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
387
388         * Bitmap.cs: (Clone) use the 'format' argument instead of the
389         PixelFormat.
390
391 2006-05-15  Atsushi Enomoto  <atsushi@ximian.com>
392
393         * Graphics.cs : (FillRectangles/FillRectanglesI): when argument
394           array is empty, don't invoke GDI+. Fixed bug #78408.
395
396 2006-05-12  Sebastien Pouliot  <sebastien@ximian.com> 
397
398         * gdipFunctions.c: Fix misnamed GdipAdd*Path*String[I] API (#78383)
399
400 2006-05-11  Peter Dennis Bartok  <pbartok@novell.com>
401
402         * Icon.cs: Don't require width/height to be non-0 when creating from
403           serialized data, just require them to be square
404
405 2006-05-04  Sebastien Pouliot  <sebastien@ximian.com> 
406  
407         * Graphics.cs: Chaned DrawIcon methods to dispose the temporary bitmap
408         on it's drawn.
409
410 2006-05-04  Sebastien Pouliot  <sebastien@ximian.com>
411
412         * Graphics.cs: Added a MonoTODO to PixelOffsetMode property so it shows
413         (in the class status library) a note that this isn't supported with 
414         libgdiplus.
415
416 2006-05-02  Peter Dennis Bartok  <pbartok@novell.com>
417
418         * FontConverter.cs (ConvertFrom): Implemented it properly. Fixes #78269
419
420 2006-05-02  Sebastien Pouliot  <sebastien@ximian.com> 
421
422         * PointF.cs: Add operators + and - between PointF and SizeF in the
423         2.0 profile (CSC 8.x can compile that, but sadly it doesn't show in as
424         missing in corcompare results).
425
426 2006-05-02  Sebastien Pouliot  <sebastien@ximian.com>
427
428         * gdipFunctions.cs: Fixed wrappers for Gdip[Begin|End]Container[2][I]
429         * Graphics.cs: Fixed usage of fixed API ;-) Added MonoTODO on 
430         BeginContainer methods that use rectangles and on TextContrast property 
431         (all aren't currently supported in libgdiplus).
432
433 2006-05-01  Sebastien Pouliot  <sebastien@ximian.com>
434
435         * Graphics.cs: Removed MonoTODO on DrawCurve methods (it's fixed in 
436         libgdiplus). Fixed minor extra/missing for corcompare.
437
438 2006-05-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
439
440         * SizeF.cs: serialization compatibility fixes. Closes bug #78236.
441
442 2006-04-30  Peter Dennis Bartok  <pbartok@novell.com>
443
444         * Icon.cs: Icon AND masks are organized in strides, fixed to calculate
445           and set proper transparency. Also fixed broken calculation of AND
446           size when reading the icon. NDocGui now shows pretty buttons.
447
448 2006-04-28  Sebastien Pouliot  <sebastien@ximian.com> 
449
450         * Color.cs: corcompare fix. Remove ComVisible attribute from 2.0 build
451         * Region.cs: Remove old todo that were fixed in libgdiplus.
452         * Image.cs: corcompare fixes. Clone isn't virtual. Added DefaultValue
453         attribute to Tag property. FromStream(Stream,bool,bool) is available
454         in Fx 1.1 (probably since SP1).
455
456 2006-04-28  Sebastien Pouliot  <sebastien@ximian.com>
457
458         * Graphics.cs: Added MonoTODO on some DrawCurve methods because 
459         libgdiplus doesn't use the numberOfSegments argument.
460
461 2006-04-27  Sebastien Pouliot  <sebastien@ximian.com>
462
463         * gdipFunctions.cs: Added wrappers for GdipAddPathLine2 and 
464         GdipAddPathLine2I methods (to allow adding a single point).
465
466 2006-04-27  Sebastien Pouliot  <sebastien@ximian.com> 
467
468         * gdipFunctions.cs: Added CharSet=CharSet.Unicode to GdipAddString and
469         GdipAddStringI wrapper methods.
470
471 2006-04-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
472
473         * Bitmap.cs: throw when the target pixel format differs from the one
474         of the image and it's an indexed format. We were failing in UnlockBits
475         before.
476
477 2006-04-25  Miguel de Icaza  <miguel@novell.com>
478
479         * FontConverter.cs (FontUnitConverter): implement.   CorCompare
480         for some reason does not dig into nested classes, match the
481         documentation. 
482
483         (FontNameConverter): Return the fonts available on the system. 
484
485 2006-04-25  Peter Dennis Bartok  <pbartok@novell.com>
486
487         * Icon.cs: We need to or, not and our alpha values into the
488           palette. Also, we need to actually store the altered palette
489           on the bitmap, since we are altering a copy.
490
491 2006-04-10  Sebastien Pouliot  <sebastien@ximian.com> 
492
493         * gdipFunctions.cs: Fixed wrappers for GdipCreateMatrix3[I].
494
495 2006-03-23  Peter Dennis Bartok  <pbartok@novell.com>
496
497         * gdipFunctions.cs: 
498           - GdipGetFontCollectionFamilyList: No need for complicated 
499             GlobalAlloc stuff, .Net marshals the IntPtr[] array just fine
500           - GdipDeletePrivateFontCollection: We need to pass a ref to the
501             structure. This was causing nasty crashes.
502           - GdipGetFamilyName: Switched to use StringBuilder instead of
503             manual marshalling
504         * FontFamily.cs: Simplified the refreshName method, less error-prone now
505
506 2006-03-21  Sebastien Pouliot  <sebastien@ximian.com> 
507  
508         * Brush.cs: Remove unused code.
509         * FontFamily.cs: Remove warnings from build.
510         * gdipFunctions.cs: Add missing p/invoke calls for GdipAddString[I].
511
512 2006-03-21  Sebastien Pouliot  <sebastien@ximian.com>
513
514         * gdipFunctions.cs: Import XFree (from libX11) so we can free the 
515         memory we allocate.
516         * Graphics.cs: Free the memory we get from XGetVisualInfo.
517
518 2006-03-20  Sebastien Pouliot  <sebastien@ximian.com>
519
520         * Brush.cs: Allow Dispose to free the unmanaged memory for the brush
521         in every case. This has been known (in the past) to cause crashes
522         in Cairo. If still true then we need to find out why!
523
524 2006-03-09  Peter Dennis Bartok  <pbartok@novell.com>
525
526         * gdipFunctions.cs: Removed XCloseDisplay call from Gdi+ shutdown,
527           it was causing crashes in the finalizers (bug #77464)
528
529 2006-03-06  Jonathan Gilbert  <logic@deltaq.org>
530
531         * gdipFunctions.cs: Rewrote the StreamSeekImpl function to invalidate
532           the start_buf cached bytes whenever Seek() is actually called. If
533           Seek is not called (an invalid 'whence' value), then the buffer is
534           not invalidated. This fixes a bug with TIFF loading.
535
536 2006-03-02  Peter Dennis Bartok  <pbartok@novell.com>
537
538         * Image.cs (ISerializable.GetObjectData): Save the image in it's
539           original format. (Fixes #77673)
540
541 2006-02-28  Jonathan Chambers  <jonathan.chambers@ansys.com>,
542             Peter Dennis Bartok  <pbartok@novell.com>
543
544         * Font.cs:
545           - ToLogFont: Reworked to allow running under MS runtime and to 
546             support it being called with both boxed structs and formatted 
547             classes  (MS runtime PtrToStructure cannot marshal boxed value
548             types, but Marshal.AsAny can)
549           - Switched all usage of LOGFONTA to more generic CharSet-driven 
550             LOGFONT structure
551           - FromLogFont: Switched to use charset-agnostic GdipCreateFontFromLogfont
552         * gdipStructs.cs: Dropped LOGFONTA and LOGFONTW and switched to
553           CharSet-driven LOGFONT structure (needed because of ToLogFont fix)
554         * gdipFunctions.cs: Switched GdipGetLogFont, GdipCreateFontFromLogfont and
555           CreateFontIndirect to use LOGFONT structure, set to be CharSet=Auto
556           (needed because of ToLogFont fix)
557
558 2006-02-18  Duncan Mak  <duncan@novell.com>
559
560         * Graphics.cs (DrawBeziers): Patch from Alexander Olk to fix
561         possible IndexOutOfRangeException.
562
563 2006-02-09  Peter Dennis Bartok  <pbartok@novell.com>
564
565         * Image.cs, Bitmap.cs: Removed unneeded casts
566         * Icon.cs: Fixed code to be 64bit safe
567
568 2006-01-31 Jordi Mas i Hernandez <jordimash@gmail.com>
569
570         * Font.cs: Fixes 77407
571
572 2006-01-27  Sebastien Pouliot  <sebastien@ximian.com>
573
574         * Font.cs: Ensure unmanaged memory is free correctly in ToLogFont
575         even if GDIPlus.CheckStatus throws an exception;
576         * Image.cs: Ensure unmanaged memory is free correctly even if 
577         GDIPlus.CheckStatus throws an exception. Note: the SetPropertyItem use
578         case is unclear to me (and unimplemented in libgdiplus);
579         * Region.cs: Ensure unmanaged memory is free correctly in 
580         GetRegionScans even if GDIPlus.CheckStatus throws an exception;
581
582 2006-01-27 Jordi Mas i Hernandez <jordimash@gmail.com>
583
584         * gdipFunctions.cs: New gdiplus imports
585         * Font.cs: Use gdiplus calls to get font height and size
586
587 2006-01-26  Sebastien Pouliot  <sebastien@ximian.com>
588
589         * FontFamily.cs: Free the memory allocated with Marshal.AllocHGlobal.
590         * Region.cs: Updated TODO to reflect current status.
591
592 2006-01-24  Konstantin Triger <kostat@mainsoft.com>
593
594         * Font.jvm.cs, FontFamily.jvm.cs: use static container.
595
596 2006-01-19  Peter Dennis Bartok  <pbartok@novell.com>
597
598         * Icon.cs: The code wrongly assumed that the stride for the icon
599           would be the same as the stride for the bitmap. This was causing
600           memory corruption.
601
602 2006-01-18  Peter Dennis Bartok  <pbartok@novell.com>
603
604         * Icon.cs: Reworked ToBitmap() method to not use Bitmap(Stream)
605           which when calling down to MS GDI+ will create an image
606           where neither GetPixel or Save can be used on.
607
608 2006-01-18  Sebastien Pouliot  <sebastien@ximian.com>
609
610         * gdipFunctions.cs: Added declaration for GdipCreateRegionRgnData.
611         * Region.cs: Implemented .ctor(RegionData)
612
613 2006-01-13  Miguel de Icaza  <miguel@novell.com>
614
615         * Region.cs: Revert the Region.cs check in GetHrgn as it was used
616         by our Windows.Forms implementation.
617
618 2006-01-11  Sebastien Pouliot  <sebastien@ximian.com>
619
620         * Graphics.cs: Avoid creating bitmaps two times if both X and Y 
621         default DPI are required (i.e. init both value in both cases).
622         * Region.cs: Added null check to match MS behaviour (exception type)
623         and avoid NRE (before CheckStatus is called). Added security demands
624         for unmanaged code on both FromHrgn and ReleaseHrgn (2.0) methods.
625
626 2005-12-22  Jonathan Chambers <jonathan.chambers@ansys.com>
627
628         * gdipFunctions.cs: Do not call GdiplusShutdown for
629         now as it causes a crash on MS GDI+.
630
631 2005-12-20  Konstantin Triger <kostat@mainsoft.com>
632
633         * Font.jvm.cs: charset support.
634
635 2005-12-19  Peter Dennis Bartok  <pbartok@novell.com>
636
637         * Graphics.cs (Flush): Make sure nativeObject is not null
638
639 2005-12-14  Konstantin Triger <kostat@mainsoft.com>
640
641         * StrokeFactory.jvm.cs: create AdvancedStroke when have penTransform.
642
643 2005-12-13  Konstantin Triger <kostat@mainsoft.com>
644
645         * Bitmap.jvm.cs: Fix MakeTransparent.
646
647 2005-12-07 Jordi Mas i Hernandez <jordimash@gmail.com>
648
649         * Graphics.cs: Add new deephs support to CopyFromScreen
650
651 2005-12-07 Jordi Mas i Hernandez <jordimash@gmail.com>
652
653         * BufferedGraphicsManager.cs: Fixes signature
654
655 2005-12-05  Peter Dennis Bartok  <pbartok@novell.com>
656
657         * Font.cs: 
658           - Implemented FromLogFont
659           - Implemented ToLogFont
660           - Whitespace fixes
661         * gdipFunctions.cs:
662           - Added GdipGetLogFontW method
663           - Specified charset for GdipGetLogFontA method
664         * gdipStructs.cs: Added LOGFONTW structure
665
666 2005-12-05 Gert Driesen <drieseng@users.sourceforge.net>
667
668         * BufferedGraphics.cs: Removed duplicate class. Set eol-style to
669         native.
670         * BufferedGraphicsManager.cs: Removed duplicate class. Set eol-style
671         to native.
672
673 2005-12-05 Jordi Mas i Hernandez <jordimash@gmail.com>
674
675         * gdipFunctions.cs: DllExports need it to implement 
676           new Graphics.CopyFromScreen .Net 2.0 methods
677         * IDeviceContext.cs: New .Net 2.0 interface
678         * Color.cs: Fixes for new .Net 2.0 KnowColors
679         * PointF.cs: New .Net 2.0 Add/Subtract methods
680         * gdipStructs.cs: Structs need it for Graphics.CopyFromScreen
681         * SystemBrushes.cs: New standard SystemBrushes for .Net 2.0
682         * SizeF.cs: New .Net 2.0 Add/Subtract methods
683         * FontConverter.cs: New .Net 2.0 fixes
684         * SystemColors.cs: New standard SystemColors for .Net 2.0
685         * SizeFConverter.cs: New .Net 2.0 class (based on SizeConverter)
686         * CharacterRange.cs: : New .Net 2.0 methods
687         * Size.cs: New .Net 2.0 Add/Subtract methods
688         * SystemPens.cs: New standard SystemPens for .Net 2.0
689         * Bitmap.cs: New .Net 2.0 methods
690         * Region.cs: New .Net 2.0 methods
691         * Brush.cs: New .Net 2.0 constructor
692         * Icon.cs: New .Net 2.0 Constructors and methods
693         * Point.cs: New .Net 2.0 Add/Subtract methods
694         * BufferedGraphicsManager.cs: New .Net 2.0 class
695         * Graphics.cs: New methods for .Net 2.0 and fixes
696         * BufferedGraphics.cs: New .Net 2.0 class
697         * Font.cs:  New .Net 2.0 properties
698         * Image.cs: New .Net 2.0 tag property
699         * KnownColor.cs: New .Net 2.0 know colors
700         * CopyPixelOperation.cs: New .Net 2.0 enum
701         * SystemFonts.cs: New .Net 2.0 class
702         * BufferedGraphicsContext.cs: New .Net 2.0 class
703
704 2005-11-28 Konstantin Triger <kostat@mainsoft.com>
705
706         * SystemIcons.jvm.cs: refactoring.
707
708 2005-11-28 Konstantin Triger <kostat@mainsoft.com>
709
710         * Icon.cs: TARGET_JVM changes.
711
712 2005-11-17 Vladimir Krasnov <vladimirk@mainsoft.com>
713
714         * Image.jvm.cs: fixed Save, flush output stream
715
716 2005-11-17 Konstantin Triger <kostat@mainsoft.com>
717
718         * StrokeFactory.jvm.cs, Pen.jvm.cs, Graphics.jvm.cs: performance - use BasicStroke when possible.
719
720 2005-11-17 Vladimir Krasnov <vladimirk@mainsoft.com>
721
722         * ColorConverter.cs: fixed ConvertFrom, to be able
723         to convert from three digit notation color (#abc)
724
725 2005-11-16 Konstantin Triger <kostat@mainsoft.com>
726
727         * Bitmap.jvm.cs: open a correct stream.
728
729 2005-11-16 Konstantin Triger <kostat@mainsoft.com>
730
731         * FontFamily.jvm.cs, Font.jvm.cs: throw exception if invalid params.
732
733 2005-11-16 Konstantin Triger <kostat@mainsoft.com>
734
735         * FontFamily.jvm.cs: fix for custom font collection
736
737 2005-11-14 Vladimir Krasnov <vladimirk@mainsoft.com>
738
739         * FontFamily.jvm.cs: fixed GetName
740
741 2005-11-14 Vladimir Krasnov <vladimirk@mainsoft.com>
742
743         * Bitmap.jvm.cs: fixed InternalSave() error handling
744         * Image.jvm.cs: fixed Save() error handling
745
746 2005-11-13 Konstantin Triger <kostat@mainsoft.com>
747
748         * FontFamily.jvm.cs: Refactoring.
749
750 2005-11-13 Konstantin Triger <kostat@mainsoft.com>
751
752         * Font.jvm.cs: Refactoring.
753
754 2005-11-13 Konstantin Triger <kostat@mainsoft.com>
755
756         * StringFormat.jvm.cs, Graphics.jvm.cs: DrawString,
757                 MeasureString support
758
759 2005-11-13 Konstantin Triger <kostat@mainsoft.com>
760
761         * FontFamily.jvm.cs: correctly initialize fontcollection
762
763 2005-11-13 Konstantin Triger <kostat@mainsoft.com>
764
765         * FontFamily.jvm.cs: DrawMargin, refactoring.
766
767 2005-11-13 Konstantin Triger <kostat@mainsoft.com>
768
769         * Graphics.jvm.cs, Pen.jvm.cs, AdvancedStroke.jvm.cs:
770                 Differentiate standard and AntiAlias stroking
771
772 2005-11-10 Vladimir Krasnov <vladimirk@mainsoft.com>
773
774         * Graphics.jvm.cs: added UnitConversion property
775         * FontFamily.jvm.cs: refactoring
776         * Font.jvm.cs: refactoring
777
778 2005-11-03  Peter Dennis Bartok  <pbartok@novell.com>
779
780         * Font.cs: 
781           - Implemented serialization constructor
782           - Implemented GetObjectData()
783
784 2005-11-01 Vladimir Krasnov <vladimirk@mainsoft.com>
785
786         * StringFormat.jvm.cs: Refactoring
787
788 2005-10-31 Jordi Mas i Hernandez <jordi@ximian.com> 
789
790         * Image.cs: Default format for MemoryBMP should be Png
791
792 2005-10-27 Vladimir Krasnov <vladimirk@mainsoft.com>
793
794         * Bitmap.jvm.cs: fixed InternalSave
795         * Image.jvm.cs: fixed Save
796
797 2005-10-27 Vladimir Krasnov <vladimirk@mainsoft.com>
798
799         * Image.jvm.cs: fixed redolution properties
800
801 2005-10-27 Vladimir Krasnov <vladimirk@mainsoft.com>
802
803         * Bitmap.jvm.cs: fixed InternalSave, to remove alpha channel of saved jpeg
804         fixed clone, Initialize
805
806 2005-10-24  Peter Dennis Bartok  <pbartok@novell.com>
807
808         * Brush.cs: Don't delete the brush if the display handle is no longer
809           valid, otherwise cairo will try to use the handle and crash and burn
810
811 2005-10-23 Vladimir Krasnov <vladimirk@mainsoft.com>
812
813         * Graphics.jvm.cs: DrawImage refactoring
814
815 2005-10-23 Vladimir Krasnov <vladimirk@mainsoft.com>
816
817         * Graphics.jvm.cs: Clipping refactoring
818         fixed FillScaledShape, DrawShape, MeasureDraw, BeginContainer, 
819         ExcludeClip, IntersectClip, ResetClip, CombineClipArea, RestoreBaseClip,
820         TranslateClip, VisibleClipBounds
821
822 2005-10-21  Miguel de Icaza  <miguel@novell.com>
823
824         * Pen.cs: Add support for returning the Brush from Pens created
825         with a color constructor.
826
827         Plus: code style police, else does not go on its own line.
828
829         * Graphics.cs: Add various ArgumentNull checks.
830
831 2005-10-20 Konstantin Triger <kostat@mainsoft.com>
832
833         * Image.jvm.cs: make Clone abstract
834
835 2005-10-20 Konstantin Triger <kostat@mainsoft.com>
836
837         * Font.jvm.cs: make fallbacks for GdiCharSet, GdiVerticalFont
838
839 2005-10-19 Vladimir Krasnov <vladimirk@mainsoft.com>
840
841         * Bitmap.jvm.cs: fixed InternalSave, ToBufferedImageFormat, Clone
842         * PlainImage.jvm.cs: fixed Clone
843         * Graphics.jvm.cs: fixed FillShape, Clear, FillScaledShape
844
845 2005-10-19 Vladimir Krasnov <vladimirk@mainsoft.com>
846
847         * Brush.jvm.cs: added InternalClone() method
848         changed transformation methods access level
849         * TextureBrush.jvm.cs: refactoring, fixed clone()
850
851 2005-10-19 Vladimir Krasnov <vladimirk@mainsoft.com>
852
853         * AdvancedStroke.jvm.cs: fixed createStrokedShape, check for transform 
854         matrix singularity added
855         * Font.jvm.cs: implemetated ISerializable
856         * Pen.jvm.cs: fixed DashPattern property, 
857         fixed GetNativeObject() dash pattern calculation
858
859 2005-10-14 Jordi Mas i Hernandez <jordi@ximian.com> 
860
861         * SystemColors.cs: Fixes the Win32 light and lightlight colours
862
863 2005-10-11 Jordi Mas i Hernandez <jordi@ximian.com> 
864
865         * SystemColors.cs: Fixes the Win32 system colors including the color
866         name and the knownColor properties.
867
868 2005-10-07  Peter Dennis Bartok  <pbartok@novell.com>
869
870         * FontFamily.cs: Use Marshal.PtrToStringUni to do the string
871           conversion, it's less overhead than StringBuilder. (Part of the
872           bugfix for #74871 and #75534)
873
874         * gdipFunctions: Changed signature for GdipGetFamilyName to just
875           have an IntPtr for the buffer
876
877 2005-10-04  Peter Dennis Bartok  <pbartok@novell.com> 
878
879         * Graphics.cs, FontFamily.cs: Calling GC.SuppressFinalize from Dispose,
880           fixes bug #76329
881
882 2005-09-29  Peter Dennis Bartok  <pbartok@novell.com> 
883
884         * SystemColor.cs: Added code used to generate properties, updated with
885           Windows XP colors
886
887 2005-09-29  Peter Dennis Bartok  <pbartok@novell.com>
888
889         * SystemColor.cs: Make internal names predictable to allow scripted
890           generation of color table
891
892 2005-09-28  Peter Dennis Bartok  <pbartok@novell.com>
893
894         * Color.cs(UpdateKnownColor): Ensure knownColors exists before trying
895           to update it.
896
897 2005-09-27  Peter Dennis Bartok  <pbartok@novell.com>
898
899         * SystemColor.cs: 
900           - Changed properties to return colors from fields. This allows 
901             updating the colors via reflection, for example from MWF themes.
902           - Added code to retrieve system colors via Win32 GetSysColors if 
903             running on Win32, this makes us compatible with Microsoft instead
904             of returning static colors on Win32. Unix platforms still will
905             use the static colors
906         * Color.cs: Added UpdateKnownColor() method to allow updating of
907           the KnownColors array
908
909 2005-09-26  Kornél Pál  <kornelpal@hotmail.com>
910
911         * Graphics.cs: DrawImage: imageAttr can be null. Fixed to pass IntPtr.Zero
912           when imageAttr is null.
913
914 2005-09-26 Vladimir Krasnov <vladimirk@mainsoft.com>
915
916         * Brush.jvm.cs: fixed transform methods, createContext
917         * TextureBrush.jvm.cs: implemetated transform, WrapMode, ctors
918
919 2005-09-21 Vladimir Krasnov <vladimirk@mainsoft.com>
920
921         * Bitmap.jvm.cs: fixed Clone, InternalSave, Initialize, ctor refactoring, remarks refactoring
922         * Image.jvm.cs: fixed GetFrameCount, GetThumbnailImage, SelectActiveFrame, remarks refactoring
923         * PlainImage.jvm.cs: added metadata props, fixed ctor
924         * PlainImageCollection.jvm.cs: fixed class access
925
926 2005-09-21 Jordi Mas i Hernandez <jordi@ximian.com> 
927
928         * Graphics.cs: Fixes exception type at FromImage method
929
930 2005-09-20 Vladimir Krasnov <vladimirk@mainsoft.com>
931
932         * Graphics.jvm.cs: bitmap resolution fix in DrawImage
933
934 2005-09-20 Vladimir Krasnov <vladimirk@mainsoft.com>
935
936         * Graphics.jvm.cs: fixed DrawImage
937
938 2005-09-19  Miguel de Icaza  <miguel@novell.com>
939
940         * Graphics.cs: Removed restriction on the images that can be
941         loaded.  Indexed images *can* be loaded
942
943 2005-09-18  Miguel de Icaza  <miguel@novell.com>
944
945         * Image.cs: introduce a workaround that catches errors on systems
946         that lack GDI+ as this is being triggered too easily when we
947         enumerate attributes on loaded classes.
948
949         The real bug to fix is #76062.
950
951 2005-09-17  Kornél Pál  <kornelpal@hotmail.com>
952
953         * Image.cs: Implemented FromHbitmap.
954
955 2005-09-16  Sebastien Pouliot  <sebastien@ximian.com>
956
957         * gdipFunctions.cs: Add [SuppressUnmanagedCodeSecurity] attributes so 
958         the JIT won't add demands for UnmanagedCode.
959         * carbonFunctions.cs: Add [SuppressUnmanagedCodeSecurity] attributes 
960         so the JIT won't add demands for UnmanagedCode on Mac OSX.
961         * Bitmap.cs: Added LinkDemand for UnmanagedCode on GetHbitmap 
962         (+ overloads) and GetHicon methods.
963         * Graphics.cs: Added LinkDemand for UnmanagedCode on FromHdcInternal, 
964         FromHwndInternal and ReleaseHdcInternal methods (which are all public 
965         despite their names).
966
967 2005-09-15 Konstantin Triger <kostat@mainsoft.com>
968
969         * Graphics.jvm.cs: text transform, headless session
970
971 2005-09-14 Vladimir Krasnov <vladimirk@mainsoft.com>
972
973         * Bitmap.jvm.cs: native object refactoring
974         * Image.jvm.cs: native object refactoring
975         * Graphics.jvm.cs: fixed access to image native object
976         * TextureBrush.jvm.cs: fixed access to image native object
977         * Added PlainImage.jvm.cs, PlainImageCollection.jvm.cs
978
979 2005-09-14  Geoff Norton  <gnorton@customerdna.com>
980
981         * carbonFunctions.cs: Add GetCGContextForNSView for Cocoa# integration
982         * Graphics.cs: Check GDIPlus.UseCocoaDrawable for Cocoa# integration
983         * gdipFunctions.cs: Set UseCocoaDrawable depending on the environment variable MONO_GDIP_USE_COCOA_BACKEND
984                                                                                          
985 2005-09-14 Konstantin Triger <kostat@mainsoft.com>
986
987         * Graphics.jvm.cs: transform, container, thin pen
988
989 2005-09-12 Konstantin Triger <kostat@mainsoft.com>
990
991         * AdvancedStroke.jvm.cs: constants for pen fitting calculations
992         * Pen.jvm.cs: fixing transform, pen fitting
993
994 2005-09-12 Konstantin Triger <kostat@mainsoft.com>
995
996          * Region.jvm.cs: IsVisible is about intersection 
997
998 2005-09-12 Gert Driesen <drieseng@users.sourceforge.net>
999
1000         * ImageConverter.cs: Use default TypeDescriptor implementation of 
1001         GetProperties.
1002
1003 2005-09-11 Konstantin Triger <kostat@mainsoft.com>
1004
1005         * Graphics.jvm.cs: fixing clipping with rotate transform
1006
1007 2005-09-11 Konstantin Triger <kostat@mainsoft.com>
1008
1009         * Region.jvm.cs: default region is infinite
1010
1011 2005-09-10 Konstantin Triger <kostat@mainsoft.com>
1012
1013         * Graphics.jvm.cs: fixing clipping stuff
1014
1015 2005-09-07 Vladimir Krasnov <vladimirk@mainsoft.com>
1016
1017         * Bitmap.jvm.cs: fixed bitamp accessors
1018         * Image.jvm.cs: fixed image accessors
1019
1020 2005-09-07 Konstantin Triger <kostat@mainsoft.com>
1021         * AdvancedStroke.jvm.cs: fix matrix translate
1022         * Graphics.jvm.cs: fix matrix concatenation order
1023
1024 2005-09-07 Vladimir Krasnov <vladimirk@mainsoft.com>
1025
1026         * Brush.jvm.cs: added transform methods
1027
1028 2005-09-06 Konstantin Triger <kostat@mainsoft.com>
1029
1030         * StrokeFactory.jvm.cs, AdvancedStroke.jvm.cs, Pen.jvm.cs:
1031                 implementing fitting, output transform
1032         * Graphics.jvm.cs: fixing DrawXXX, Fill, Clipping, Containers
1033
1034 2005-09-06 Konstantin Triger <kostat@mainsoft.com>
1035
1036         * ColorTranslator.cs: perform case insensitive check
1037
1038 2005-09-05 Jordi Mas i Hernandez <jordi@ximian.com> 
1039
1040         * gdipFunctions.cs: define new functions
1041         * Bitmap.cs: fixes image loading and exceptions
1042         * Image.cs: fixes image loading and exceptions
1043         
1044         Thanks Kornél Pál for its help
1045
1046 2005-08-30 Vladimir Krasnov <vladimirk@mainsoft.com>
1047
1048         * Brush.jvm.cs: added brush transform field
1049
1050 2005-08-28 Vladimir Krasnov <vladimirk@mainsoft.com>
1051
1052         * Graphics.jvm.cs: fixed .ctor (InterpolationMode)
1053
1054 2005-08-28 Konstantin Triger <kostat@mainsoft.com>
1055
1056         * StrokeFactory.jvm.cs, AdvancedStroke.jvm.cs, Pen.jvm.cs
1057         Graphics.jvm.cs: adjust stroke before widening
1058
1059 2005-08-28 Vladimir Krasnov <vladimirk@mainsoft.com>
1060
1061         * Graphics.jvm.cs: Implemented BeginContainer, EndContainer,
1062         Save, Restore
1063
1064 2005-08-26 Gert Driesen <drieseng@users.sourceforge.net>
1065
1066         * PointConverter.cs: Use Int32Converter instead of Int32.Parse. First
1067         convert string to int before checking number of components.
1068         * RectangleConverter.cs: same.
1069         * SizeConverter.cs: same.
1070
1071 2005-08-26 Gert Driesen <drieseng@users.sourceforge.net>
1072
1073         * ColorConverter.cs: Use Int32Converter instead of Int32.Parse to
1074         convert individual components. Special case string containing hex
1075         prefix. Convert components before checking count.
1076
1077 2005-08-25 Marek Safar  <marek.safar@seznam.cz>
1078
1079         * gdipFunctions.cs: GetIconInfo new user32 method.
1080         GdipGetDC uses IntPtr.
1081         
1082         * gdipStructs.cs: Defined IconInfo struct.
1083         
1084         * Graphics.cs: FromImage throws exception when image has an indexed format.
1085         GetHdc fixed.
1086         
1087         * Icon.cs: Implemented FromHandle, Dispose.
1088
1089 2005-05-24 Michael Hutchinson <m.j.hutchinson@gmail.com>
1090
1091         * ToolboxBitmapAttribute.cs: Implemented retrieving the image
1092
1093 2005-08-23 Vladimir Krasnov <vladimirk@mainsoft.com>
1094
1095         * Graphics.jvm.cs: Fixed ResetTransform, TransfromPoints
1096         Fixed SmoothingMode property
1097
1098 2005-08-23 Jordi Mas i Hernandez <jordi@ximian.com> 
1099
1100         * Brushes: Do not create the objects every time that they are requested
1101         as in Pens we create and cache them only once when need it. This also 
1102         fixes the Equals method between two objects requested to Brushes
1103
1104 2005-08-22 Jordi Mas i Hernandez <jordi@ximian.com> 
1105
1106         * SolidBrush.cs: Fixes Dispose to avoid non-disposing some objects
1107         * Brush.cs Fixes Dispose to avoid non-disposing some objects
1108         * Pen.cs: Fixes Dispose to avoid non-disposing some objects
1109         * Region.cs: Dipose always frees if the resource was allocated
1110
1111 2005-08-19 Jordi Mas i Hernandez <jordi@ximian.com> 
1112
1113         * gdipFunctions.cs: Before calling GdiplusShutdown we make that all of handles
1114         from gdiplus have been released
1115
1116 2005-08-18 Vladimir Krasnov <vladimirk@mainsoft.com>
1117
1118         * Pen.jvm.cs: Fixed DashSpacing in createStrokedShape
1119         * Color.cs: Fixed java NativeObject property
1120         * Image.jvm.cs: Fixed Save method
1121
1122 2005-08-16 Andrew Skiba <andrews@mainsoft.com>
1123
1124         * Icon.jvm.cs: match Bitmap internal constructor change
1125         * Image.jvm.cs: use ImageCodecInfo.Clsid as primary format id, not ImageFormat
1126         * Bitmap.jvm.cs: started changes for supporting ImageCodecInfo
1127
1128 2005-08-16 Gert Driesen <drieseng@users.sourceforge.net>
1129
1130         * Color.cs: To match MS.NET, throw ArgumentException instead of 
1131         ArgumentOutOfRangeException when color is not between 0 and 255.
1132         * RectangleConverter.cs: Take culture into account when converting
1133         to/from string. Use culture's ListSeparator as separator character.
1134
1135 2005-08-16 Gert Driesen <drieseng@users.sourceforge.net>
1136
1137         * Color.cs: Fixed line endings. Set eol-style to native.
1138         * ColorConverter.cs: Fixed line endings. Set eol-style to native.
1139         * Size.cs: Set eol-style to native.
1140         * SizeF.cs: Use current culture in ToString(), set eol-style to native.
1141         * SizeConverter.cs: Take culture into account when converting to/from
1142         string. Set eol-style to native.
1143         * Point.cs: Fixed line endings. Set eol-style to native.
1144         * PointF.cs: Use current culture in ToString(), set eol-style to native.
1145         * PointConverter.cs: Take culture into account when converting to/from
1146         string. Set eol-style to native.
1147         * ImageFormatConverter.cs: Fixed line endings. Set eol-style to
1148         native.
1149         * RectangleConverter.cs: Fixed line endings. Set eol-style to native.
1150
1151 2005-08-16 Vladimir Krasnov <vladimirk@mainsoft.com>
1152
1153         * Graphics.jvm.cs: Fixed InterpolationMode property
1154
1155 2005-08-15 Vladimir Krasnov <vladimirk@mainsoft.com>
1156
1157         * Graphics.jvm.cs: Fixed DrawImage
1158
1159 2005-08-14 Gert Driesen <drieseng@users.sourceforge.net>
1160
1161         * ColorConverter.cs: Use TextInfo.ListSeparator as separator, as this
1162         appears to be what MS.NET uses.
1163
1164 2005-08-14 Gert Driesen <drieseng@users.sourceforge.net>
1165
1166         * Point.cs: Use invariant culture for converting numbers to string.
1167         * PointF.cs: same
1168         * SizeF.cs: same
1169
1170 2005-08-14 Gert Driesen <drieseng@users.sourceforge.net>
1171
1172         * Color.cs: Fixed ToString for uninitialized color.
1173         * ColorConverter.cs: Support conversion from whitespace-only string to
1174         Color.Empty. Fixed conversion from Color.Empty and known colors to
1175         string.
1176
1177 2005-08-14 Konstantin Triger <kostat@mainsoft.com>
1178
1179         * Graphics.jvm.cs: Initial properties implementation
1180
1181 2005-08-14 Vladimir Krasnov <vladimirk@mainsoft.com>
1182
1183         * Graphics.jvm.cs: DrawImage refactoring
1184         
1185 2005-08-14 Vladimir Krasnov <vladimirk@mainsoft.com>
1186
1187         * Graphics.jvm.cs: Implemented PageUnit, PageScale. 
1188         Added UpdateInternalTransform
1189         Fixed DrawImage, Transform, ConcatenateTransform
1190
1191 2005-08-14 Vladimir Krasnov <vladimirk@mainsoft.com>
1192
1193         * Icon.jvm.cs: Internal constructor from bitmap
1194         * Added SystemIcons.jvm.cs with implementation of SystemIcons
1195         
1196 2005-08-14 Vladimir Krasnov <vladimirk@mainsoft.com>
1197
1198         * Region.jvm.cs: Fixed GetBounds, IsVisible, IsEmpty, IsInfinite, Equals
1199         (all methods that use Graphics object)  
1200
1201 2005-08-11 Konstantin Triger <kostat@mainsoft.com>
1202
1203         * Graphics.jvm.cs: Refactoring
1204
1205 2005-08-11 Konstantin Triger <kostat@mainsoft.com>
1206
1207         * Graphics.jvm.cs: Fixed Clear, Refactoring
1208
1209 2005-08-11 Konstantin Triger <kostat@mainsoft.com>
1210
1211         * Graphics.jvm.cs: Fixed FillClosedCurve
1212
1213 2005-08-10  Zoltan Varga  <vargaz@freemail.hu>
1214
1215         * Rectangle.cs (Intersect): Return a non-empty rectangle if the two
1216         rectangles touch each other.
1217
1218 2005-08-09 Konstantin Triger <kostat@mainsoft.com>
1219
1220         * Graphics.jvm.cs: Fixed DrawCurve.
1221
1222 2005-08-09 Konstantin Triger <kostat@mainsoft.com>
1223
1224         * StrokeFactory.jvm.cs: use correct stroke
1225
1226 2005-08-09 Konstantin Triger <kostat@mainsoft.com>
1227
1228         * Added AdvancedStoke.jvm.cs and StrokeFactory.jvm.cs
1229         * Pen refactoring.
1230
1231 2005-08-09 Andrew Skiba <andrews@mainsoft.com>
1232
1233         * FontConverter.cs: exclude not implemented destructor from TARGET_JVM
1234
1235 2005-08-09 Andrew Skiba <andrews@mainsoft.com>
1236
1237         * ColorConverter.cs, ColorTranslator.cs: fixes to pass tests
1238         committed in r48150
1239
1240 2005-08-08 Konstantin Triger <kostat@mainsoft.com>
1241
1242         * Graphics.jvm.cs: Refactoring
1243
1244 2005-08-08 Vladimir Krasnov <vladimirk@mainsoft.com>
1245
1246         * Graphics.jvm.cs: Fixed DrawPolygon
1247
1248 2005-08-08 Konstantin Triger <kostat@mainsoft.com>
1249
1250         * Graphics.jvm.cs: Refactoring
1251         * Pen.jvm.cs: setting awt.Stroke as a base
1252
1253 2005-08-07 Konstantin Triger <kostat@mainsoft.com>
1254
1255         * Graphics.jvm.cs: Refactoring
1256
1257 2005-08-07 Vladimir Krasnov <vladimirk@mainsoft.com>
1258
1259         * Graphics.jvm.cs: Fixed DrawLines, DrawPolygon to use GraphicsPath
1260
1261 2005-08-07 Andrew Skiba <andrews@mainsoft.com>
1262
1263         * Rectangle.cs: Intersect fixed
1264         * RectandleF.cs: Intersect and Inflate fixed
1265
1266 2005-08-07 Andrew Skiba <andrews@mainsoft.com>
1267
1268         * Point.cs: Produce same ToString result as dotnet
1269
1270 2005-08-07 Andrew Skiba <andrews@mainsoft.com>
1271
1272         * Color.cs: GetHashCode is affected by Name, too
1273
1274 2005-08-07 Vladimir Krasnov <vladimirk@mainsoft.com>
1275
1276         * Pen.jvm.cs: Fixed ctor, LineCap, SetLineCap
1277         
1278 2005-08-07 Vladimir Krasnov <vladimirk@mainsoft.com>
1279
1280         * Graphics.jvm.cs: Fixed DrawLines, DrawPolygon
1281
1282 2005-08-03 Andrew Skiba <andrews@mainsoft.com>
1283
1284         * SolidBrush.jvm.cs: fix a typo
1285
1286 2005-08-03 Andrew Skiba <andrews@mainsoft.com>
1287
1288         * Image.jvm.cs, StringFormat.jvm.cs, FontFamily.jvm.cs, Bitmap.jvm.cs,
1289         Pen.jvm.cs, Region.jvm.cs, Brush.jvm.cs, Graphics.jvm.cs, TextureBrush.jvm.cs,
1290         Font.jvm.cs: Added TARGET_JVM implementation
1291
1292 2005-08-03 Andrew Skiba <andrews@mainsoft.com>
1293
1294         * Rectangle.cs, RectangleF.cs: TARGET_JVM - Add NativeObect property
1295
1296 2005-08-03 Andrew Skiba <andrews@mainsoft.com>
1297
1298         * BasicShape.jvm.cs: Added TARGET_JVM specific class
1299
1300 2005-08-03 Andrew Skiba <andrews@mainsoft.com>
1301
1302         * Icon.jvm.cs, SystemColors.jvm.cs: Added TARGET_JVM implementations
1303
1304 2005-08-03 Andrew Skiba <andrews@mainsoft.com>
1305
1306         * ColorTranslator.cs: (GH merge) recognise HTML system colors
1307
1308 2005-08-02 Andrew Skiba <andrews@mainsoft.com>
1309         
1310         * SolidBrush.jvm.cs: added TARGET_JVM implementation of this class
1311
1312 2005-08-02 Andrew Skiba <andrews@mainsoft.com>
1313
1314         * Color.cs: TARGET_JVM - NativeObject property
1315
1316 2005-07-27 Andrew Skiba <andrews@mainsoft.com>
1317
1318         * Color.cs: Fixes equality operators, change isXXXcolor booleans into flags enum.
1319
1320 2005-07-27 Jordi Mas i Hernandez <jordi@ximian.com> 
1321
1322         * RectangleF.cs: Fixes IsEmpty logic
1323
1324 2005-06-23 Jordi Mas i Hernandez <jordi@ximian.com> 
1325
1326         * Graphics.cs: implements FromHwndInternal
1327
1328
1329 2005-06-13  Peter Bartok  <pbartok@novell.com>
1330
1331         * Icon.cs(ToBitmap): If the icon is not 32bits, create the bitmap
1332           through an intermediary step, which turns it into a 32bit version.
1333           Fixes #75254
1334
1335 2005-06-13  Kornél Pál <kornelpal@hotmail.com>
1336
1337         * ComIStreamMarshaler.cs: Dispose releases managed objects as well,
1338           removed some unnecessary code
1339         * ComIStreamWrapper.cs: Reworked Seek method to proper support of
1340           positions beyond the size of stream
1341
1342 2005-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1343
1344         * Font.cs: fix platform checks.
1345
1346 2005-06-08 Jordi Mas i Hernandez <jordi@ximian.com> 
1347
1348         * Rectangle.cs:
1349                 - Fixes is empty method IsEmpty logic
1350                 - Fixes Contains method logic
1351                 - Fixes IntersectsWith logic
1352                 
1353         * RectangleF.cs:
1354                 - Fixes is empty method IsEmpty logic
1355                 - Fixes Contains method logic
1356                 - Fixes IntersectsWith logic
1357
1358 2005-05-28  Kornél Pál <kornelpal@hotmail.com>
1359
1360         * ComIStreamMarshaler.cs: GC.SuppressFinalize(this) is not called in
1361           destructors. Some methods renamed. Removed unnecessary variables.
1362
1363 2005-05-25  Jonathan Gilbert  <logic@deltaq.org>
1364
1365         * Image.cs: Added retrieveGDIPalette () and storeGDIPalette ()
1366           and modified the Palette property to call them. This non-
1367           persistent behaviour was discovered by trial and error with
1368           Microsoft's implementation. In fact, the Palette property
1369           does not behave like a property at all! It is the only way an
1370           instance of System.Drawing.Imaging.ColorPalette can be created,
1371           and it reflects a backing store that is only updated when the
1372           property 'set' method is called. Also updated Clone () since
1373           the palette is no longer cached at image load time.
1374         * Image.cs: Added IsIndexedPixelFormat () in the same vein as
1375           Image::IsAlphaPixelFormat and Image::IsCanonicalPixelFormat.
1376           As such a function is not listed in MSDN nor given in
1377           Microsoft's implementation, I have made it a private function
1378           within the class that uses it.
1379
1380 2005-05-24  Kornél Pál <kornelpal@hotmail.com>
1381
1382         * Graphics.cs: Revised DrawString methods
1383
1384 2005-03-22  Peter Bartok  <pbartok@novell.com>
1385
1386         * Graphics.cs: Fixed bug #74762, DrawString was crashing on s.Length
1387           if s was null.
1388
1389 2005-05-20  Kornél Pál <kornelpal@hotmail.com>
1390
1391         * Image.cs: Uses MemoryStream wrapping on all platforms if needed
1392         * gdipFunctions.cs: Modified conditional compilation syntax
1393         * ComIStreamWrapper.cs: Modified conditional compilation syntax
1394         * ComIStreamMarshaler.cs: Modified conditional compilation syntax
1395
1396 2005-05-18  Marek Safar  <marek.safar@seznam.cz>
1397
1398         * Bitmap.cs: Add null check into ctor.
1399
1400 2005-05-16 Jordi Mas i Hernandez <jordi@ximian.com> <kornelpal@hotmail.com>
1401
1402         * gdipFunctions.cs: Kornél Pál's IStream bug fixing
1403         * ComIStreamWrapper.cs: Kornél Pál's IStream bug fixing
1404         * ComIStreamMarshaler.cs: Kornél Pál's IStream bug fixing
1405
1406 2005-05-14 Jordi Mas i Hernandez <jordi@ximian.com> <kornelpal@hotmail.com>
1407
1408         * Bitmap.cs: Kornél Pál's Bitmap class ctor and MakeTransparent leak fixes
1409
1410 2005-05-11 Jordi Mas i Hernandez <jordi@ximian.com>
1411
1412         * gdipFunctions.cs: add GdipLoadImageFromStream and GdipSaveImageToStream
1413         * ComIStreamWrapper.cs: Kornel Pal COM Stream for Win32
1414         * ComIStreamMarshaler.cs: Kornel Pal COM Stream for Win32 
1415         * Image.cs: uses new Win32 Stream functions when need it
1416
1417 2005-05-10 Juraj Skripsky <juraj@hotfeet.ch>
1418
1419         * Color.cs: Fix GetSaturation() again and remove
1420         obsolete constants.
1421
1422 2005-05-10 Juraj Skripsky <juraj@hotfeet.ch>
1423
1424         * Color.cs: New, correct implementations for GetHue(),
1425         GetBrightness() and GetSaturation().
1426
1427 2005-05-09  Sebastien Pouliot  <sebastien@ximian.com>
1428
1429         * gdipFunctions.cs: Use PlatformID.Unix under NET_2_0. 
1430         * Graphics.cs: Use PlatformID.Unix under NET_2_0. 
1431         * Image.cs: Use PlatformID.Unix under NET_2_0. 
1432
1433 2005-05-05  Miguel de Icaza  <miguel@novell.com>
1434
1435         * Bitmap.cs, Icon.cs (constructor): Use
1436         GetManifestResourceStream(Type,string) in the constructor that
1437         takes a type. 
1438
1439 2005-04-27  Lluis Sanchez Gual  <lluis@novell.com>
1440
1441         * PointF.cs: Make serialization compatible with MS.
1442
1443 2005-04-10  Geoff Norton  <gnorton@customerdna.com>
1444
1445         * Graphics.cs:
1446           carbonFunctions.cs:
1447                 Use CGContextSynchronize instead of CGContextFlush.  This saves
1448                 on average 20000 ticks per drawing operation.
1449
1450 2005-04-04 Jordi Mas i Hernandez <jordi@ximian.com>
1451
1452         * Color.cs: take into account the name color in == and != operators
1453         * Font.cs: Use Equals instead of == to compare the family name
1454         * FontFamily.cs:
1455            -  Removes generic fontfamilies cache (done at libgdiplus level)
1456            -  Fixes Equals method
1457
1458 2005-03-30 Jordi Mas i Hernandez <jordi@ximian.com>
1459
1460         * Pen.cs: remove locks. They are done at gdiplus level
1461         * Brush.cs: remove locks. They are done at gdiplus level
1462         * Image.cs: remove locks. They are done at gdiplus level
1463
1464 2005-03-30  Rogério Pereira Araújo <rogerio.araujo@gmail.com>
1465
1466         * Icon.cs: Finished Icon(Type, String) ctor
1467
1468 2005-03-23 Jordi Mas i Hernandez <jordi@ximian.com>
1469
1470         * gdipFunctions.cs: fixes GdipGetImagePalette signature
1471         * Image.cs: Implements Palette property using gdiplus     
1472
1473 2005-03-17  Peter Bartok  <pbartok@novell.com>
1474
1475         * gdipFunctions.cs: 
1476           - Changed P/Invoke signature for GdipLoadImageFromDelegate_linux()
1477             method, now includes a get header delegate
1478           - Added StreamGetHeaderImpl method, to allow libgdiplus to determine 
1479             the image type even on non-seekable streams
1480           - Fixed StreamGetBytesImpl to consider the bytes already retrieved
1481             via StreamGetHeaderImpl
1482         * Image.cs: Fixed call to GdipLoadImageFromDelegate_linux() to include
1483           the new StreamGetHeader delegate
1484
1485 2005-03-15 Jordi Mas i Hernandez <jordi@ximian.com>
1486
1487         * Pen.cs: Fixes dispose method to allow to be called multiple times
1488         * Graphics.cs: matrix are saved and restored at gdiplus level   
1489
1490 2005-02-24  Geoff Norton  <gnorton@customerdna.com>
1491
1492         * gdipFunctions.cs: Cache the delegates in the GdiPlusStreamHelper
1493         so they dont get garbage collected before use.
1494
1495 2005-02-11  Peter Bartok  <pbartok@novell.com>
1496
1497         * gdipFunctions.cs: Fixed prototype to match previous checkin
1498
1499 2005-02-11  Peter Bartok  <pbartok@novell.com>
1500
1501         * Graphics.cs (FromImage): Fixed type of graphics to be IntPtr (since
1502           it really is a pointer)
1503
1504 2005-02-10  Geoff Norton  <gnorton@customerdna.com>
1505
1506         * Icon.cs: Implement GetObjectData ()
1507         * Image.cs: Implement GetObjectData ()
1508
1509 2005-02-09  Geoff Norton  <gnorton@customerdna.com>
1510
1511         * Icon.cs: Implement deserializer
1512         * Bitmap.cs: Implement deserializer
1513
1514 2005-02-06  Ben Maurer  <bmaurer@ximian.com>
1515
1516         * Brushes.cs: Kill the static ctor here, it has tons of code bloat.
1517
1518 2005-02-03 Jordi Mas i Hernandez <jordi@ximian.com>
1519
1520         * Region.cs: revert Jackson's patch and fix this at libgdiplus level
1521
1522 2005-02-02  Jackson Harper  <jackson@ximian.com>
1523
1524         * Region.cs: The default region constructor creates and infinite
1525         region, not an empty one.
1526
1527 2005-01-27  Peter Bartok  <pbartok@novell.com>
1528
1529         * Color.cs (GetBrightness, GetSaturation, GetHue): Fixed calculations
1530           of HSV numbers. Previous implementation returned wrong numbers and NaN
1531           on achromatic colors
1532
1533 2005-01-27  Lluis Sanchez Gual  <lluis@novell.com>
1534
1535         * PointConverter.cs, ImageFormatConverter.cs, RectangleConverter.cs,
1536         SizeConverter.cs, ColorConverter.cs, FontConverter.cs
1537         : Implemented support for InstanceDescriptor.
1538
1539 2005-01-26  Peter Bartok  <pbartok@novell.com>
1540
1541         * Icon.cs (ToBitmap): Now sets transparency in according to
1542           icon AND mask
1543
1544 2004-01-22 Jordi Mas i Hernandez <jordi@ximian.com>
1545
1546         * gdipFunctions.cs: Fixes GdipGet* function signatures
1547         * FontFamily.cs: Fixes GdipGet* function calls
1548         * Font.cs: Fixes ToString method
1549         
1550 2004-01-17 Jordi Mas i Hernandez <jordi@ximian.com>
1551
1552         * Graphics.cs: calls XCloseDisplay on X11 when need it
1553         * gdipFunctions.cs: calls XCloseDisplay on X11 when need it
1554
1555 2004-12-27  Zoltan Varga  <vargaz@freemail.hu>
1556
1557         * gdipFunctions.cs Image.cs: Fix marshalling of arrays on amd64.
1558
1559 2004-12-16  Peter Bartok  <pbartok@novell.com>
1560
1561         * Graphics.cs (GetHdc): Removed Wine assumptions, the handle is now
1562           equivalent to the gdi+ native object
1563
1564         * Font.cs (GetHfont): Removed Wine assumptions, the handle is now
1565           equivalent to the gdi+ native object
1566
1567 2004-12-09  Geoff Norton  <gnorton@customerdna.com>
1568
1569         * carbonFunctions.cs: New carbon functions/structures
1570         * Graphics.cs: Update FromHwnd to work without being in the carbon eventing loop
1571
1572 2004-12-08  Geoff Norton  <gnorton@customerdna.com>
1573
1574         * Graphics.cs:  Drop FromHwndWithSize; we can't change the public API
1575         Add Quartz support to FromHwnd marshalling a struct back with the ptr/width/height.
1576
1577 2004-12-07  Geoff Norton  <gnorton@customerdna.com>
1578
1579         * Graphics.cs:  Add FromHwndWithSize for the MWF/Quartz backend
1580         * gdipFunctions.cs: Add the quartz dllimport into libgdiplus
1581
1582 2004-12-06  Miguel de Icaza  <miguel@ximian.com>
1583
1584         * FontFamily.cs: This one is static.
1585
1586 2004-11-25  Ravindra  <rkumar@novell.com>
1587
1588         * gdipFunctions.cs (GdipCreateFontFromLogfontA): Changed return
1589         type from int to Status type.
1590
1591 2004-11-25  Marek Safar  <marek.safar@seznam.cz>
1592
1593         * Image.cs: Add CheckStatus to SaveAdd.
1594
1595 2004-11-22  Ravindra  <rkumar@novell.com>
1596
1597         * Graphics.cs: Fixed null values handling in all overloads of
1598         MeasureString method.
1599
1600 2004-11-18  Ravindra  <rkumar@novell.com>
1601
1602         * gdipFunctions.cs: Removed the .so extension from a DllImport
1603         that hooks to X11.
1604
1605 2004-10-27 Jordi Mas i Hernandez <jordi@ximian.com>
1606
1607         * gdipFunctions.cs: calls GdiplusShutdown to propery signal GDI+ 
1608         termination
1609
1610 2004-11-03  Miguel de Icaza  <miguel@ximian.com>
1611
1612         * TextureBrush.cs (Clone): While cloning, it is not enough to let
1613         GDIPlus clone the underlying data, we must alos clone the managed
1614         information. 
1615
1616         * Pen.cs (Dispose): Set the nativeObject to IntPtr.Zero to catch
1617         errors in the future, set the lock on the object before doing any
1618         other tests, not after.
1619         
1620         (Clone): While cloning, it is not enough to let
1621         GDIPlus clone the underlying data, we must alos clone the managed
1622         information. 
1623
1624         * Brush.cs (Dispose): Set the nativeObject to IntPtr.Zero to catch
1625         errors in the future.
1626
1627         Set the lock in the object before checkign disposed.
1628
1629         * SolidBrush.cs (Clone): While cloning, it is not enough to let
1630         GDIPlus clone the underlying data, we must alos clone the managed
1631         information. 
1632
1633         (Dispose): Set the nativeObject to IntPtr.Zero to catch
1634         errors in the future.
1635
1636 2004-10-28  Ravindra  <rkumar@novell.com>
1637
1638         * gdipFunctions.cs: Added checks for null stream in the
1639         StreamHelper internal class.
1640         * Icon.cs: Removed an ugly hack that used temp files in
1641         ToBitmap () method. We use MemoryStream instead.
1642
1643 2004-10-27 Jordi Mas i Hernandez <jordi@ximian.com>
1644
1645         * Font.cs: fixes bug 66533
1646         
1647 2004-10-22 Jordi Mas i Hernandez <jordi@ximian.com>
1648         
1649         * Bitmap.cs, Font.cs FontFamily.cs Graphics.cs Region.cs
1650         SolidBrush.cs StringFormat.cs TextureBrush.cs: removes the
1651         lock operations after conversation with Miguel. Do not really
1652         need it.
1653
1654 2004-10-22 Jordi Mas i Hernandez <jordi@ximian.com>
1655         
1656         * Bitmap.cs: Fixes MakeTransparent problem with 24bbps
1657
1658 2004-10-19 Jordi Mas i Hernandez <jordi@ximian.com>
1659         
1660         * Bitmap.cs: Fixes MakeTransparent method
1661
1662 2004-10-13  Ravindra  <rkumar@novell.com>
1663
1664         * Graphics.cs: Moved the initialization of 'use_x_drawable'
1665         member out of private constructor to class initialization.
1666         So that, we get it right even if Graphics is not instantiated.
1667         This fixes the problem we face (otherwise) when we make first
1668         call to Graphics.FromHwnd () method.
1669
1670 2004-10-08  Ravindra  <rkumar@novell.com>
1671
1672         * Image.cs: Suppress finalization in Dispose () method.
1673
1674 2004-10-04  Ravindra  <rkumar@novell.com>
1675
1676         * gdipFunctioncs.cs: Fix from Alois for bug #67383.
1677
1678 2004-09-29  Jackson Harper  <jackson@ximian.com>
1679
1680         * Graphics.cs: Use FromHdcInternal to set the X display
1681         handle. Add a flag to check if we are on unix so we aren't calling
1682         Environment.OSVersion.Platform all the time. Mad props to Peter
1683         Bartok for this.
1684
1685 2004-09-17  Marek Safar <marek.safar@seznam.cz>
1686
1687         * Font.cs (FromHfont, ToHfont): Fixed windows implementation.
1688         ToLogFont: Implemented.
1689
1690         * gdipFunctions.cs: GdipCreateFromHDC changed int to IntPtr to
1691         avoid casts.
1692         GdipCreateFontFromLogfontA: A new extern call.
1693
1694 2004-09-13  Ravindra <rkumar@novell.com>
1695
1696         * Graphics.cs: MSDN says that using image width and height gives
1697         better performance, hence we are using image width and height to
1698         avoid autoscaling in DrawImageUnscaled.
1699
1700 2004-09-10  Ravindra <rkumar@novell.com>
1701
1702         * Graphics.cs: Implemented DrawIcon methods and fixed
1703         DrawImageUnscaled method implementation.
1704
1705 2004-08-21  Jackson Harper  <jackson@ximian.com>
1706
1707         * ImageAnimator.cs: Run animator as a background thread so we do
1708         not hang on exit.
1709
1710 2004-08-21  Ravindra  <rkumar@novell.com>
1711
1712         * gdipFunctions.cs: Modified exception message to include the case
1713         of missing required libraries for different formats.
1714
1715 2004-08-10  Jackson Harper  <jackson@ximian.com>
1716
1717         * SystemColors.cs: Make Highlight colour match colour from windows
1718         classic color scheme.
1719
1720 2004-07-30 Ravindra <rkumar@novell.com>
1721
1722         * Font.cs: Fixed Height property implementation and implemented
1723         GetHeight method and its overloads.
1724
1725 2004-07-29 Sanjay Gupta <gsanjay@novell.com>
1726
1727         * gdipFunctions.cs: Corrected signature of GdipGetPropertyItem
1728         P/Invoke function for Image.
1729         * Image.cs: Implemented GetPropertyItem() and SetPropertyItem() method.
1730
1731 2004-07-29 Sanjay Gupta <gsanjay@novell.com>
1732
1733         * gdipFunctions.cs: Corrected signatures of GdipGetPropertySize and 
1734         GdipGetAllPropertyItems P/Invoke function for Image.
1735         * gdipStructs.cs: Corrected MarshalTo() method of GdipPropertyItem.
1736         * Image.cs: Corrected implementation of PropertyItems property.
1737
1738 2004-07-29 Sanjay Gupta <gsanjay@novell.com>
1739
1740         * gdipFunctions.cs: Corrected signature of GdipGetPropertyIdList 
1741         P/Invoke function for Image.
1742         * Image.cs: Changed implementation of PropertyIdList property.
1743
1744 2004-07-28 Sanjay Gupta <gsanjay@novell.com>
1745
1746         * gdipStructs.cs: Implementing PropertyItem property in Image.cs.
1747         * Image.cs: Implemented PropertyItems and PropertyIdList properties.
1748
1749 2004-07-21  Ravindra <rkumar@novell.com>
1750
1751         * gdipFunctions.cs: Corrected signatures of GdipPathIterCopyData and
1752         GdipPathIterEnumerate P/Invoke functions for GraphicsPathIterator.
1753
1754 2004-07-21 Jordi Mas i Hernandez <jordi@ximian.com>
1755         
1756         * Graphics.cs:  fixes MeasureCharacterRanges function. It was completely wrong. 
1757         * StringFormat.cs: MeasurableCharacterRanges should be passed to GDI+
1758         * gdipFunctions.cs: new GDI function calls
1759
1760 2004-07-16  Ravindra <rkumar@novell.com>
1761
1762         * gdipFunctions.cs: Added P/Invokes for GraphicsPathIterator.
1763
1764 2004-07-15  Ravindra <rkumar@novell.com>
1765
1766         * gdipFunctions.cs: Removed GdipGetPathData P/Invoke. It is redundant.
1767
1768 2004-07-13  Ravindra <rkumar@novell.com>
1769
1770         * gdipFunctions.cs: Removed GdipGetPathGradientRectI P/Invoke.
1771         This was redundant. It was kept in previous checkin to avoid
1772         build breakage.
1773
1774 2004-07-13  Ravindra <rkumar@novell.com>
1775
1776         * gdipFunctions.cs: Added some P/Invokes for PathGradientBrush.
1777
1778 2004-07-09  Peter Bartok <pbartok@novell.com>
1779         * Graphics.cs: Added support required for new managed SWF library
1780         * gdipFunctions.cs: Added XOpenDisplay definition/import
1781
1782 2004-07-02 Jordi Mas i Hernandez <jordi@ximian.com>
1783
1784         * gdipFunctions.cs: fixes bug 61050
1785
1786 2004-06-24  Sanjay Gupta <gsanjay@novell.com>
1787
1788         * ImageAnimator.cs: Rewrote complete implementation.
1789
1790 2004-06-24  Sanjay Gupta <gsanjay@novell.com>
1791
1792         * gdipFunctions.cs: Corrected issue in GdiPlusStreamHelper class.
1793         If read function was called after seek function call, the 
1794         implementation  was returning data from bytes already peeked and 
1795         not from the new position in stream, which we have seeked.
1796         
1797 2004-06-22 Jordi Mas i Hernandez <jordi@ximian.com>
1798
1799         * Graphics.cs: added MeasureString wrappers
1800
1801 2004-06-22 Jordi Mas i Hernandez <jordi@ximian.com>
1802
1803         * Graphics.cs, gdipFunctions.cs: define and use GdipSetVisibleClip_linux 
1804
1805 2004-06-20 Jordi Mas i Hernandez <jordi@ximian.com>
1806
1807         * Graphics.cs, gdipFunctions.cs: added missing clip function wrappers
1808
1809 2004-06-18  Ravindra <rkumar@novell.com>
1810
1811         * FontConverter.cs: Implemented the missing functions.
1812         * Font.cs: Added some notes.
1813
1814 2004-06-16  Sanjay Gupta <gsanjay@novell.com>
1815         
1816         * gdipFunctions.cs: Modified Function signature for 
1817         GdipSaveImageToDelegate_linux() method for saving tiff images 
1818         to streams.
1819         * image.cs: Modified function call GdipSaveImageToDelegate_linux()
1820         with new signature.
1821
1822 2004-06-15  Sanjay Gupta <gsanjay@novell.com>
1823         
1824         * gdipFunctions.cs: Added delegate and StreamHelper functions, Close
1825         and Size, required by TIFFCodec. Modifed Function signature for 
1826         GdipLoadImageFromDelegate_linux() method.
1827         * image.cs: Modified function call GdipLoadImageFromDelegate_linux()
1828         with new signature.
1829
1830 2004-06-11  Ravindra <rkumar@novell.com>
1831
1832         * gdipFunctions.cs: (GdipCreateSolidFill): Changed one argument
1833         from out int to out IntPtr.
1834         * SolidBrush.cs: Same.
1835
1836 2004-06-10  Gert Driesen <drieseng@users.sourceforge.net>
1837
1838         * Image.cs: API signature fixes, meaning DisposeResources is now
1839         private and marked InitFromStream internal
1840
1841 2004-05-12  Jordi Mas i Hernandez <jordi@ximian.com>
1842
1843         * FontFamily.cs: simplifies object destruction and fixes
1844
1845 2004-05-12  Jordi Mas i Hernandez <jordi@ximian.com>
1846
1847         * FontFamily.cs: added destructor 
1848         * Graphics.cs: added destructor to stop leaking, remove debugging code
1849
1850
1851 2004-05-12  Jordi Mas i Hernandez <jordi@ximian.com>
1852
1853         * gdipFunctions.cs: added GdipSaveAddImage
1854         * Image.cs: added SaveAdd methods
1855
1856 2004-06-02  Peter Bartok <pbartok@novell.com>
1857         * gdipFunctions.cs: Fixed reference to wrong DLLs for GetDC/ReleaseDC
1858           (This fixes bug #59479)
1859
1860 2004-06-01  Gert Driesen <drieseng@users.sourceforge.net>
1861
1862         * Font.cs: Added missing Browsable attribute on SizeInPoints.
1863         * Region.cs: Removed extra ComVisible attribute from Clone().
1864
1865 2004-06-01  Ravindra <rkumar@novell.com>
1866
1867         * Pen.cs: Added a note on Dispose method.
1868         * Brush.cs: Fixed Dispose method.
1869         * SolidBrush.cs: Fixed Dispose method.
1870
1871 2004-05-28  Ravindra <rkumar@novell.com>
1872
1873         * gdipFunctions.cs: Added some P/Invoke calls for Draw/Fill
1874         rectangles.
1875         * Graphics.cs: Implemented Dispose method and changed Draw/Fill
1876         rectangles implementation (This is basically done to avoid lots
1877         of brush and pen setup happening in libgdiplus.)
1878
1879 2004-05-27  Ravindra <rkumar@novell.com>
1880
1881         * Color.cs: Changed Color.Green to what MS.NET has. Conforming to MS.
1882
1883 2004-05-26  Sanjay Gupta <gsanjay@novell.com>
1884
1885         * ImageFormatConverter.cs: Fixed issues discovered from nunit 
1886         test cases.
1887
1888 2004-05-26  Ravindra <rkumar@novell.com>
1889
1890         * Color.cs: Corrected Color.Green property.
1891
1892 2004-05-24  Jordi Mas i Hernandez <jordi@ximian.com>
1893         * gdipStructs.cs: remove unnecessary code, since bug 57706 is fixed
1894
1895 2004-05-20  Sanjay Gupta <gsanjay@novell.com>
1896
1897         * Icon.cs: Fixed issue with size property.
1898
1899 2004-05-18  Ravindra <rkumar@novell.com>
1900
1901         * Pen.cs: Added value checks in DashPattern and CompoundArray
1902         properties.
1903
1904 2004-05-16  Gert Driesen <drieseng@users.sourceforge.net>
1905
1906         * Graphics.cs: fixed warning
1907         * ImageAnimator.cs: fixed warning
1908         * FontConverter.cs: fixed public API
1909
1910 2004-05-14  Vladimir Vukicevic  <vladimir@pobox.com>
1911
1912         * gdipFunctions.cs: Fixed prototype for
1913         GdipGetEncoderParameterList
1914         
1915         * Image.cs: Reworked Save functions to handle EncoderParameters.
1916         Implemented GetEncoderParameterList
1917         Also removed unused setGDIPalette internal method.
1918
1919 2004-05-14  Peter Bartok <pbartok@novell.com>
1920         * StringFormat.cs: Added CharacterRange handling
1921         * Graphics.cs: Implemented MeasureCharacterRanges method
1922
1923 2004-05-14  Peter Bartok <pbartok@novell.com>
1924         * Graphics.cs: Added error check
1925
1926 2004-05-14  Duncan Mak  <duncan@ximian.com>
1927         * gdipFunctions.cs (GdipCreatePath2I, GdipAddPathPieI):
1928         (GdipFlattenPath, GdipWarpPath, GdipWidenPath):
1929         (GdipGetPathWorldBounds, GdipGetPathWorldBoundsI): Imported.
1930
1931 2004-05-14  Sanjay Gupta <gsanjay@novell.com>
1932         * ImageFormatConverter.cs: Modified implementation of ConvertFrom() method.
1933
1934 2004-05-13  Sanjay Gupta <gsanjay@novell.com>
1935         * ImageFormatConverter.cs: Implemented GetStandardValuesSupported () method. 
1936
1937 2004-05-13  Peter Bartok <pbartok@novell.com>
1938         * Bitmap.cs: Fixed bug #52868, Bitmap(Image, Size) did not
1939         resize the image.
1940
1941 2004-05-12  Peter Bartok <pbartok@novell.com>
1942         * Image.cs: Implemented GetThumbnailImage
1943
1944 2004-05-13  Sanjay Gupta <gsanjay@novell.com>
1945         * Graphics.cs: Made method DrawRectangle (Pen , RectangleF) and 
1946         FromXDrawable(IntPtr, IntPtr) internal.
1947                         
1948 2004-05-12  Jordi Mas i Hernandez <jordi@ximian.com>
1949         * Color.cs: work for API compatibilty: private date, todos
1950         * Font.cs: work for API compatibilty: private date, todos
1951         * FontFamily.cs: work for API compatibilty: private date, todos
1952         * Graphics.cs: work for API compatibilty: private date, todos
1953         * Icon.cs: work for API compatibilty: private date, todos 
1954         * Image.cs: work for API compatibilty: private date, todos
1955         * ImageAnimator.cs: work for API compatibilty: private date, todos
1956         * Point.cs: work for API compatibilty: private date, todos
1957         * PointF.cs: work for API compatibilty: private date, todos
1958         * Rectangle.cs: work for API compatibilty: private date, todos
1959         * RectangleF.cs: work for API compatibilty: private date, todos
1960         * Region.cs: work for API compatibilty: private date, todos
1961         * Size.cs: work for API compatibilty: private date, todos
1962         * SizeF.cs: work for API compatibilty: private date, todos
1963         * SolidBrush.cs: work for API compatibilty: private date, todos
1964         * StringFormat.cs: work for API compatibilty: private date, todos
1965         * SystemPens.cs: work for API compatibilty: private date, todos
1966         * TextureBrush.cs: work for API compatibilty: private date, todos
1967         * gdipStructs.cs: work for API compatibilty: private date, todos
1968
1969 2004-05-12  Ravindra <rkumar@novell.com>
1970
1971         * Bitmap.cs, Font.cs, FontConverter.cs, Graphics.cs, Icon.cs, Image.cs
1972         ImageAnimator.cs, Point.cs, PointF.cs, Rectangle.cs, RectangleF.cs
1973         Region.cs, Size.cs, SizeF.cs, ToolboxBitmapAttribute.cs, gdipFunctions.cs:
1974         Added missing attributes and some coding style fixes.
1975         * Pen.cs: Implementing CustomStartCap and CustomEndCap properties and 
1976         some fixes.
1977
1978 2004-05-11  Sanjay Gupta <gsanjay@novell.com>
1979
1980         * ImageAnimator.cs: Implemented first version. 
1981
1982 2004-05-11  Ravindra  <rkumar@novell.com>
1983
1984         * gdipFunctions.cs: Implementing AdjustableArrowCap. Added P/Invokes
1985         for the same.
1986
1987 2004-05-10  Ravindra  <rkumar@novell.com>
1988
1989         * gdipFunctions.cs: Implementing CustomLineCap. Added P/Invokes
1990         for the same. Added few related P/Invokes for Pen also.
1991
1992 2004-05-06  Sanjay Gupta <gsanjay@novell.com>
1993
1994         * ImageAnimator.cs: Corrected implementation of CanAnimate() method.
1995
1996 2004-05-06  Ravindra <rkumar@novell.com>
1997
1998         * RectangleConverter.cs: Implemented GetProperties () method.
1999         * SizeConverter.cs: Implemented GetProperties () method.
2000         * PointConverter.cs: Implemented GetProperties () method.
2001         * FontConverter.cs: Implemented some of the methods.
2002
2003 2004-05-06  Ravindra <rkumar@novell.com>
2004
2005         * Color.cs: Fixed Name property.
2006         * ColorTranslator.cs: Fixed the existing methods and implemented
2007         the missing methods.
2008         * ColorConverter.cs: Fixed the existing methods and implemented 
2009         the missing methods. Also, fixed coding style.
2010
2011 2004-05-05  Jordi Mas i Hernandez <jordi@ximian.com>
2012         * Bitmap.cs: Let GDI+ calculate the strides, as it does in Win32.
2013
2014 2004-05-05  Jordi Mas i Hernandez <jordi@ximian.com>
2015         * Image.cs: raw_format should be handled by GDI+
2016         * Bitmap.cs: raw_format should be handled by GDI+
2017
2018 2004-05-04  Ravindra <rkumar@novell.com>
2019
2020         * Pen.cs: Modified exception message. Fixed Transform, DashPattern,
2021         and DashCap properties. Implementing CoumpoundArray, StartCap, EndCap
2022         properties and SetLineCap method. In constructors use IntPtr instead
2023         of int.
2024         * SolidBrush.cs: Modified exception message.
2025         * TextureBrush.cs: Fixed Transform property.
2026         * gdipFunctions.cs: Fixed P/Invokes for Pen.cs, TextureBrush.cs and
2027         LinearGradientBrush.cs.
2028
2029 2004-04-30  Sanjay Gupta <gsanjay@novell.com>
2030
2031         * Image.cs: Implemented FrameDimensionsList property.
2032
2033 2004-04-30  Ravindra <rkumar@novell.com>
2034
2035         * gdipFunctions.cs: Added few more P/Invoke calls for
2036         lineargradient brush and added one case statement in 
2037         CheckStatus method.
2038
2039 2004-04-30  Jordi Mas i Hernandez <jordi@ximian.com>
2040
2041         * Image.cs: takes into account MemoryBmp format when saving
2042
2043 2004-04-30  Ravindra <rkumar@novell.com>
2044
2045         * StringFormat.cs: Added checks for status.
2046
2047 2004-04-30  Sanjay Gupta <gsanjay@novell.com>
2048
2049         * Image.cs: Removed calls which passes byte[] for Guid parameter.
2050         * gdipFunctions.cs: Removed unwanted unix specific function calls.
2051
2052 2004-04-30  Ravindra <rkumar@novell.com>
2053
2054         * Graphics.cs: Added checks for status.
2055         * Image.cs: Added a check for status.
2056         * FontFamily.cs: Added checks for status.
2057
2058 2004-04-29  Peter Bartok <pbartok@novell.com>
2059
2060         * Brushes.cs: Fixed bug #52695. No longer creates a new
2061         brush for every request and behaves Microsoft compatible
2062
2063 2004-04-29  Jordi Mas i Hernandez <jordi@ximian.com>
2064
2065         * Image.cs: fixes Save method. It now retrieves the proper encoder and uses
2066         its ClsID instead of the formatID (as GDI+ expects)
2067
2068 2004-04-29  Ravindra <rkumar@novell.com>
2069
2070         * Font.cs: Added checks for status.
2071         * Bitmap.cs: Added checks for status.
2072         * Pen.cs: Added checks for status.
2073
2074 2004-04-28  Sanjay Gupta  <gsanjay@novell.com>
2075
2076         * ColorTranslator.cs, StringFormat.cs, SystemIcons.cs, ToolBoxBitmapAttributes.cs:
2077         Converted to unix format from dos format.
2078
2079 2004-04-28  Sanjay Gupta  <gsanjay@novell.com>
2080
2081         * ImageConverter.cs: Implemented GetProperties() and GetPropertiesSupported () methods.
2082
2083 2004-04-28  Jordi Mas i Hernandez <jordi@ximian.com>
2084
2085         * gdipStructs.cs: added GdipImageCodecInfo struct
2086
2087 2004-04-28  Sanjay Gupta  <gsanjay@novell.com>
2088
2089         * ImageFormatConverter.cs: Corrected ConvertFrom method.
2090
2091 2004-04-27  Sanjay Gupta  <gsanjay@novell.com>
2092
2093         * ImageConverter.cs: Added exception message.
2094         * IconConverter.cs: Added exception message.
2095         * ImageFormatConverter.cs: Implemented first version.
2096
2097 2004-04-27  Sanjay Gupta  <gsanjay@novell.com>
2098
2099         * ImageConverter.cs: Implemented first version.
2100
2101 2004-04-27  Sanjay Gupta  <gsanjay@novell.com>
2102
2103         * IconConverter.cs: Implemented first version.
2104
2105 2004-04-26  Sanjay Gupta  <gsanjay@novell.com>
2106
2107         * Image.cs: Corrected implementation of Property RawFormat.
2108         * gdipFunctions.cs: Corrected declaration of GdipGetImageRawFormat.
2109
2110 2004-04-25  Sanjay Gupta  <gsanjay@novell.com>
2111
2112         * Bitmap.cs: Resolved a compile time error.
2113         * Image.cs: Changed the implementation of few methods to progress
2114           with ImageAnimator class.
2115         * gdipFunctions.cs: Added few linux only function calls.
2116         * Icon.cs: Removed unused variable from code.
2117
2118 2004-04-25  Vladimir Vukicevic  <vladimir@pobox.com>
2119
2120         * Graphics.cs, gdipFunctions.cs: Added CreateFromXDrawable_linux.
2121
2122 2004-04-23  Vladimir Vukicevic  <vladimir@pobox.com>
2123
2124         * Commited patch from pcgod@gmx.net (Bnehamin Jemlich) for
2125         serialization for Bitmaps.  (Bugzilla #52568)
2126
2127 2004-04-23  Ravindra <rkumar@novell.com>
2128
2129         * RectangleConverter.cs: Fixed ConvertTo () method.
2130         * SizeConverter.cs: Fixed ConvertTo () method.
2131         * PointConverter.cs: Fixed ConvertTo () method.
2132
2133 2004-04-23 Sanjay Gupta <gsanjay@novell.com>
2134         * ImageAnimator.cs: Implemented CanAnimate() method.
2135
2136 2004-04-22 Jordi Mas i Hernandez <jordi@ximian.com>
2137         * Image.cs: added RotateFlip and RemovePropertyItem calls
2138         
2139 2004-04-22  Ravindra <rkumar@novell.com>
2140
2141         * RectangleConverter.cs: Implemented. Also changed file format
2142         dos2unix.
2143         * Rectangle.cs: Fixed ToString method.
2144         * RectangleF.cs: Fixed ToString method.
2145
2146 2004-04-22  Ravindra <rkumar@novell.com>
2147
2148         * SizeConverter.cs: Implemented some of the functions.
2149         * PointConveter.cs: Implemented.
2150         * gdipFunctions.cs: Corrected one typo.
2151         * Brushes.cs: Added a comment.
2152
2153 2004-04-22  Vladimir Vukicevic  <vladimir@pobox.com>
2154
2155         * gdipFunctions.cs: Fix StreamGetBytesImpl to handle
2156         returning portions of the peek buffer back.  Fixes #57379.
2157
2158 2004-04-21 Peter Bartok <pbartok@novell.com>
2159    * Font.cs: Implemented Font.FromHfont method
2160    * gdipStructs.cs: fixed sign for LOGFONTA lfHeight member
2161    * gdipFunctions.cs: Added imports for functions required to support
2162    Font.FromHfont method
2163
2164 2004-04-21 Jordi Mas i Hernandez <jordi@ximian.com>
2165         * RectangleConverter.cs: stubbed out
2166         * Font.cs : added missing members
2167
2168 2004-04-19  Sanjay Gupta <gsanjay@novell.com>
2169         * Icon.cs: Fixed problem in extracting bitmap from Icon.
2170
2171 2004-04-16  Ravindra <rkumar@novell.com>
2172
2173         * Pen.cs: GC should be allowed to collect any pen including
2174         system pens.
2175         * SolidBrush.cs: GC should be allowed to collect any SolidBrush
2176         including system brushes.
2177         * Brushes.cs: Coding style.
2178         * Pens.cs: Objects created by Pens are not modifiable on
2179         MS.NET, so we are now. Also, coding style fixes.
2180         * SystemPens.cs: Removed static constructor and changed file
2181         format dos2unix.
2182         * SystemBrushes.cs: Some cosmetic changes.
2183
2184 2004-04-15  Sanjay Gupta <gsanjay@novell.com>
2185         * Icon.cs: Implemented more missing bits and fixed the problem
2186                 of icon not getting saved in proper format
2187
2188 2004-04-14  Sanjay Gupta <gsanjay@novell.com>
2189         * Icon.cs: Implemented more missing bits
2190
2191 2004-04-13  Sanjay Gupta <gsanjay@novell.com>
2192         * Icon.cs: Implemented few more missing bits
2193
2194 2004-04-12  Sanjay Gupta <gsanjay@novell.com>
2195         * Icon.cs: Implemented first version
2196
2197 2004-04-11  Peter Bartok <pbartok@novell.com>
2198    * Font.cs: Implemented Font.ToHfont method; used Jordi's suggestion of splitting
2199    the code and using our own private gdiplus function when on Unix and using Win32
2200    functions when running on Windows
2201    * gdipStructs.cs: Added LOGFONTA structure
2202    * gdipFunctions.cs: Added various DllImports required for Font.ToHfont
2203
2204 2004-04-10  Vladimir Vukicevic  <vladimir@pobox.com>
2205
2206         * Image.cs: Save should use encoder.FormatID, not Clsid
2207
2208 2004-04-06  Jordi Mas i Hernandez <jordi@ximian.com>
2209         * Region.cs: fixes GdipCombineRegionRect and GdipCombineRegionRectI signature
2210         * gdipFunctions.cs: fixes GdipCombineRegionRect and GdipCombineRegionRectI signature
2211
2212 2004-04-06  Duncan Mak  <duncan@ximian.com>
2213
2214         * gdipFunctions.cs (GdipCreatePath2): Fixed signature.
2215
2216 2004-04-06  Jordi Mas i Hernandez <jordi@ximian.com>
2217         * Region.cs: fixes GetRegionScans
2218         * gdipFunctions.cs: fixes GetRegionScans
2219
2220 2004-04-06  Vladimir Vukicevic  <vladimir@pobox.com>
2221
2222         * gdipFunctions.cs: Added stream delegate helpers for
2223         stream loading/saving on linux
2224
2225         * Image.cs, Bitmap.cs: Converted to call into GDIPlus for
2226         loading/saving image data.
2227
2228 2004-04-05  Jordi Mas i Hernandez <jordi@ximian.com>
2229         * Region.cs: implemented new methods
2230         * Graphics.cs: implemented new methods
2231
2232 2004-04-02  Jordi Mas i Hernandez <jordi@ximian.com>
2233         * Region.cs: implemented
2234
2235 2004-04-01  Duncan Mak  <duncan@ximian.com>
2236
2237         * Graphics.cs (DrawCurve): Call the correct GDI+ wrappers.
2238
2239         * gdipFunctions.cs (GdipAddPathCurveI):
2240         (GdipAddPathCurve2, GdipAddPathCurve2I):
2241         (GdipAddPathCurve3, GdipAddPathCurve3I):
2242         (GdipAddPathClosedCurve, GdipAddPathClosedCurveI):
2243         (GdipAddPathClosedCurve2, GdipAddPathClosedCurve2I): Added new
2244         wrappers from GDI+.
2245
2246 2004-03-30  Jordi Mas i Hernandez <jordi@ximian.com>    
2247         * Image.cs: implemented a few GDI+ wrapper calls
2248
2249 2004-03-30  Jordi Mas i Hernandez <jordi@ximian.com>
2250         * Bitmap.cs: remove redundant data already present at Image.cs
2251         * Image.cs: use GDI+ functions to get image details
2252         * StringFormat.cs: missing constructor and property
2253
2254 2004-03-24  Jordi Mas i Hernandez <jordi@ximian.com>
2255         * FontFamily.cs: added missing members and style clean
2256         * Graphics.cs: fixed signature of DrawArc and DrawPie
2257         * Image.cs: added missing members, fixes
2258         * StringFormat.cs: missing constructor and property
2259
2260 2004-03-24  Jordi Mas i Hernandez <jordi@ximian.com>
2261         * Graphics.cs: Added missing DrawImage GDI+ calls
2262         * gdipFunctions.cs: Added missing DrawImage GDI+ calls  
2263
2264 2004-03-23  Ravindra <rkumar@novell.com>
2265         * gdipFunctions.cs: Added few more P/Invoke calls for
2266         LinearGradientBrush.
2267
2268 2004-03-22  Ravindra <rkumar@novell.com>
2269         * gdipFunctions.cs: Added P/Invoke calls for LinearGradientBrush
2270         and did few coding style fixes.
2271
2272 2004-03-18  Ravindra <rkumar@novell.com>
2273         * Brush.cs: Fixed Dispose method.
2274         * SolidBrush.cs: Fixed clone method.
2275         * TextureBrush.cs: Fixed clone method.
2276         * gdipFunctions.cs: Fixed P/Invokes for PathGradientBrush.
2277
2278 2004-03-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2279
2280         * SizeConverter.cs: fixd typo in ConvertFrom that made height be wrong.
2281
2282 2004-03-10  Ravindra  <rkumar@novell.com>
2283         * Pen.cs: Implemented PenType property.
2284         * Brush.cs: Coding style.
2285
2286 2004-03-06  Ravindra  <rkumar@novell.com>
2287         * gdipFunctions.cs: Added few more GDI+ P/Invoke calls
2288         for PathGradientBrush.
2289
2290 2004-03-06  Ravindra  <rkumar@novell.com>
2291         * gdipFunctions.cs: Added GDI+ P/Invoke calls for
2292         PathGradientBrush.
2293
2294 2004-03-04  Duncan Mak  <duncan@ximian.com>
2295
2296         * Region.cs: Indentation.
2297
2298         * RectangleF.cs: Changed the internal structure from a PointF,
2299         SizeF to floats in order to match the layout from the C API.
2300
2301 2004-03-04  Jordi Mas i Hernandez <jordi@ximian.com>
2302         * StringFormat.cs: DigitSubstitution and TabStob methods, coding-style
2303
2304 2004-03-03  Sanjay Gupta <gsanjay@novell.com>
2305         * gdipFunctions.cs: Added functions for ImageAttributes
2306
2307 2004-03-03  Sanjay Gupta <gsanjay@novell.com>
2308         * Icon.cs: Missing function stubs added
2309         * Icon.cs: Missing function stubs added
2310         * IconConverter.cs: Missing function stubs added
2311         * ImageAnimator.cs: Missing function stubs added
2312         * ImageConverter.cs: Missing function stubs added
2313         * ImageFormatConverter.cs: Missing function stubs added
2314
2315 2004-03-02  Jordi Mas i Hernandez <jordi@ximian.com>
2316         * Font.cs: Allow multiple styles
2317         
2318 2004-02-25  Jordi Mas i Hernandez <jordi@ximian.com>
2319         * StringFormat.cs: Clone method
2320         
2321 2004-02-24  Jordi Mas i Hernandez <jordi@ximian.com>
2322         * font.cs: fixes, Clone, and ToString   
2323         
2324 2004-02-21  Jordi Mas i Hernandez <jordi@ximian.com>
2325         * gdipFunctions.cs: MeasureString 
2326         * Graphics.cs : MeasureString
2327         
2328 2004-02-17  Jordi Mas i Hernandez <jordi@ximian.com>
2329         * Font.cs: destructor and unit conversion 
2330         * Graphics.cs : system dpi support
2331
2332 2004-02-13  Ravindra <rkumar@novell.com>
2333         * Pen.cs: Fixed some bugs.
2334         * TextureBrush.cs: Fixed some bugs.
2335
2336 2004-02-13  Sanjay Gupta <gsanjay@novell.com>
2337         * gdipFunctions.cs: Added ImageCodecInfo functions
2338         * Image.cs: Added few methods 
2339
2340 2004-02-13  Jordi Mas i Hernandez <jordi@ximian.com>
2341         * FontFamily.cs: remove hardcoded font names, a few bug fixes
2342         
2343 2004-02-12  Sanjay Gupta <gsanjay@novell.com>
2344         * gdipFunctions.cs: Added Image class functions
2345         * Image.cs: Added few methods 
2346
2347 2004-02-10  Jordi Mas i Hernandez <jordi@ximian.com>
2348         * graphics.cs: fixes parameters for DrawStrings functions
2349
2350 2004-02-07  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2351
2352         * SRDescriptionAttribute.cs: Added and implemented
2353         * ToolboxBitmapAttribute.cs: Implemented a few members
2354         * SystemIcons.cs: Stubbed
2355         * StringFormat.cs: Implemented method
2356         * Region.cs: Added Todo, fixed attribute
2357         * Size.cs: Added attribute
2358         * SizeF.cs: Added attribute
2359         * RectangleF.cs: Added attributes
2360         * Rectangle.cs: Added attributes
2361         * PointF.cs: Added attribute
2362         * Point.cs: Added attribute
2363
2364 2004-02-06  Ravindra  <rkumar@novell.com>
2365
2366         * Brush.cs: Renamed GetException method to CheckStatus
2367         and moved it to gdipFunctions.cs.
2368         * gdipFunctions.cs: Added CheckStatus method.
2369         * SolidBrush.cs: Using CheckStatus method.
2370         * TextureBrush.cs: Using CheckStatus method.
2371         * gdipEnums.cs: Added a missing value.
2372
2373 2004-02-05  Ravindra  <rkumar@novell.com>
2374
2375         * Brush.cs: Added a missing namespace.
2376
2377 2004-02-05  Ravindra  <rkumar@novell.com>
2378
2379         * gdipFunctions.cs: Added methods for HatchBrush and 
2380         SolidBrush.
2381         * SolidBrush.cs: Added checks for status.
2382         * Brush.cs: Added support for HatchBrush and TextureBrush 
2383         types in internal CreateBrush() method.
2384
2385 2004-02-03  Jordi Mas  <jordi@ximian.com>
2386         * Font.cs: Setup font properties
2387
2388 2004-02-03  Ravindra  <rkumar@novell.com>
2389
2390         * TextureBrush.cs and Brush.cs: Moved GetException (Status)
2391         method from TextureBrush.cs to Brush.cs.
2392         * Brush.cs: Made GetException (Status) method internal.
2393
2394 2004-02-03  Sanjay Gupta <gsanjay@novell.com>
2395         
2396         * gdipFunctions.cs: Added methods for Image class.
2397
2398 2004-01-30  Ravindra  <rkumar@novell.com>
2399
2400         * TextureBrush.cs: Added more methods to complete it.
2401         * gdipFunctions.cs: Added methods for TextureBrush class.
2402
2403 2004-01-30  Ravindra  <rkumar@novell.com>
2404
2405         * gdipFunctions.cs: Added methods for TextureBrush class.
2406
2407 2004-01-30  Ravindra  <rkumar@novell.com>
2408
2409         * Pen.cs: Modified to handle TextureBrush also.
2410         * Bitmap.cs: Added one internal constructor.
2411         * TextureBrush.cs: Implemented.
2412
2413 2004-01-29  Duncan Mak  <duncan@ximian.com>
2414
2415         * gdipFunctions.cs
2416         * Graphics.cs: Indentation fixes, removed long dangling lines and
2417         extra spaces. 
2418
2419         * Graphics.cs (IsVisible): Renamed variable to not use hungarian
2420         notation.
2421
2422 2004-01-29  Sanjay Gupta <gsanjay@novell.com>
2423         
2424         * FontFamily.cs: Implemented few methods and a constructor
2425
2426 2004-01-28  Sanjay Gupta <gsanjay@novell.com>
2427
2428         * gdipFunctions.cs: Added FontFamily and FontCollection functions.
2429         * FontFamily.cs: Implemented missing functionalities.
2430
2431 2004-01-24  Duncan Mak  <duncan@ximian.com>
2432
2433         * Graphics.cs (DrawPath): Implemented.
2434
2435 2004-01-23  Ravindra  <rkumar@novell.com>
2436
2437         * Point.cs: ToString modified.
2438         * PointF.cs: ToString modified.
2439         * Size.cs: ToString modified.
2440         * SizeF.cs: ToString modified. ToPoint and ToSize methods
2441         are added.
2442
2443 2004-01-21  Jordi Mas i Hernàndez
2444         * Bitmap.cs: Several new methods added.
2445                 
2446 2004-01-21  Duncan Mak  <duncan@ximian.com>
2447
2448         * gdipFunctions.cs (GdipGetPathTypes, GdipGetPathPoints): Add
2449         OutAttribute to the array argument. This fixes the PathPoints
2450         property in System.Drawing.Drawing2D.GraphicsPath.
2451
2452 2004-01-20  Ravindra  <rkumar@novell.com>
2453
2454         * Pen.cs: Fixed bug #52811 in Pen.Transform property. Setting
2455         this property was hanging and getting was throwing a NullRef
2456         Exception. Earlier we were passing Matrix object to and fro
2457         which was causing the problem. Now, we are using IntPtr.
2458         Thanks to Duncan for helping me.
2459         Also, .NET behavior is to maintain Pen.Color and Pen.Brush
2460         together. If color is set, a SolidBrush automatically gets
2461         set with the same color, Pen loses the old brush object.
2462         If a SolidBrush is set, Pen.Color gets the value same as that
2463         of brush color losing the old value. Pen shows this behavior
2464         now.
2465         * gdipFunctions.cs: Changed the signature of GdipGetPenTransform
2466         and GdipSetPenTransform methods to use IntPtr instead of Matrix.
2467
2468 2004-01-19  Duncan Mak  <duncan@ximian.com>
2469
2470         * gdipFunctions.cs: Import functions for GraphicsPath.
2471
2472 2004-01-14  Ravindra <rkumar@novell.com>
2473                                                                                 
2474         * SolidBrush.cs: Made SolidBrush to initialize its color
2475         from IntPtr.
2476                                                                                 
2477         * gdipFunctions.cs: Added call to GdipGetSolidFillColor GDI+ API.
2478
2479 2004-01-11  Duncan Mak  <duncan@ximian.com>
2480
2481         * Bitmap.cs (LockBits): 
2482         * Graphics.cs (DrawString): Removed reference to GpRectF.
2483
2484 2004-01-09  Duncan Mak  <duncan@ximian.com>
2485
2486         * gdipStructs.cs (GpRectF, GpRect, GpPointF, GpPoint):
2487         Removed. Didn't know that structs are laid out sequentially by
2488         default. We don't need these anymore.
2489
2490 2004-01-12 Ben Maurer  <bmaurer@users.sourceforge.net>
2491
2492         * Color.cs: Keep KnownColors in an array so that we avoid ht lookup.
2493
2494 2004-01-11  Daniel Morgan <danielmorgan@verizon.net>
2495
2496         * Graphics.cs: fix compile error on Windows builds for out 
2497         parameter state in call to GdipSaveGraphics
2498
2499 2004-01-10  Ravindra  <rkumar@novell.com>
2500
2501         * All Enums: Made serializable.
2502
2503         * Image.cs: Corrected signature of Dispose(bool) method.
2504
2505         * Pen.cs, SolidBrush.cs, SystemPens.cs, SystemBrushes.cs: 
2506         Corrected coding style mistakes of my previous commit.
2507
2508         * PointConverter.cs, RectangleConverter.cs: Inherit TypeConverter.
2509
2510         * PointF.cs, RectangleF.cs, SizeF.cs: Made serializable.
2511
2512         * StringFormat.cs: Inherits MarshalByRefObject.
2513
2514         * ToolboxBitmapAttribute.cs: Added missing attribute [AttributeUsage].
2515
2516 2004-01-08  Ravindra  <rkumar@novell.com>
2517
2518         * Pen.cs: Added isModifiable (bool) variable. It is required to
2519         make Pens created by SystemPens.cs unmodifiable. All property
2520         setters are modified for this.
2521
2522         * SolidBrush.cs: Added isModifiable variable (bool). It is
2523         required to make Brushes created by SystemBrushes.cs unmodifiable.
2524         All property setters are modified for this.
2525
2526         * SystemBrushes.cs: Modified all the properties as per the .NET
2527         specs, so that Brushes are not created every time. Also, missing
2528         properties are added.
2529
2530         * SystemPens.cs: Modified all the properties as per the .NET
2531         specs, so that Brushes are not created every time. Also, missing
2532         properties are added.
2533
2534 2003-12-12  Miguel de Icaza  <miguel@ximian.com>
2535
2536         * Rectangle.cs: Patch from Bryan Bulten, fixes Inflate and makes
2537         it serializable
2538
2539 2004-01-06  Duncan Mak  <duncan@ximian.com>
2540
2541         * gdipFunctions.cs: Import GraphicsPath functions from GDI+.
2542
2543 2003-12-21  Duncan Mak  <duncan@ximian.com>
2544
2545         * Graphics.cs (DrawArc): Fixed the method signature and hooked it
2546         up to the GDI+ implementation.
2547         (RotateTransform): Uncommented.
2548
2549         * gdipFunctions.cs (DrawArc, DrawArcI): Import from
2550         libgdiplus.so.dll.
2551
2552 2003-12-13  Todd Berman  <tberman@sevenl.net>
2553
2554         * Font.cs: Implementing a couple things for porting purposes
2555         * SystemBrushes.cs: ^
2556         * StringFormat.cs: ^^
2557
2558 2003-11-28  Duncan Mak  <duncan@ximian.com>
2559
2560         * Pen.cs (CompoundArray): Hide this for now.
2561
2562 2003-11-28  Duncan Mak  <duncan@ximian.com>     
2563
2564         * Brush.cs (CreateBrush): new internal factory method for creating
2565         specific brushes based on the internal (GDI+ C API) BrushType
2566         enum.
2567         (Brush (IntPtr)): new internal constructor.
2568
2569         * Pen.cs: Removed all the C# fields. We are using GDI+ completely
2570         now.
2571         (Pen (IntPtr)): new internal constructor.
2572         (Pen (Brush, float)): Use GdipCreateBrush2.
2573         (Clone): Implemented using GdipClonePen.
2574         (Alignment, Brush, Color, Width): Use GDI+ implementations
2575         instead.
2576         (CompoundArray, DashCap, DashOffset, DashPattern, DashStyle):
2577         Implemented these properties.
2578         (CustomStartCap, CustomEndCap, StartCap, EndCap, SetLineCap): Stubbed.
2579         (MultiplyTransform, ResetTransform, RotateTransform):
2580         (ScaleTransform, TranslateTransform): Implemented these methods.
2581
2582         * SolidBrush.cs (SolidBrush (IntPtr)): new internal constructor.
2583
2584         * gdipEnums.cs (BrushType): Added new GDI+ enum.
2585
2586         * gdipFunctions.cs: Imported new Brush and Pen functions.
2587
2588 2003-11-22  Duncan Mak  <duncan@ximian.com>
2589
2590         * gdipFunctions.cs
2591         (GdipResetWorldTransform, GdipSetWorldTransform):
2592         (GdipGetWorldTransform, GdipScaleWorldTransform): Imported.
2593
2594         * Graphics.cs: Remove unnecessary TODO, and reformatted the code.
2595         (transform): Removed this field. Always use the
2596         matrix associated in the GpGraphics ptr.
2597         (DrawBeziers): Implemented.
2598         (DrawLine): Don't need to manually invoke the transform now.
2599         (MultiplyTransform, ResetTransform): 
2600         (ScaleTransform, TranslateTransform): Use GDI+ implementation.
2601         (Transform): Instead of storing a Matrix in managed code, use
2602         equivalent GDI+ functions.
2603
2604 2003-11-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2605
2606         * SizeConverter.cs: fixed class signature and implemented some methods.
2607
2608 2003-11-17  Duncan Mak  <duncan@ximian.com>
2609
2610         * gdipFunctions.cs (GdipGetMatrixElements): Fix signature.
2611         
2612         * Graphics.cs (MultiplyTransform): Commented out until my Matrix commit.
2613
2614 2003-11-17  Duncan Mak  <duncan@ximian.com>
2615         
2616         * Bitmap.cs (LockBits):
2617         * Graphics.cs (DrawString): Use GpRectF.
2618
2619         * gdipFunctions.cs: Updated method signatures.  
2620
2621         * Graphics.cs (MultiplyTransform): Implemented using
2622         GdipMultiplyWorldTransform from GDI+.
2623
2624         * gdipStructs.cs (GdipRectF, GdipRect): Renamed to GpRectF and
2625         GpRect, to be more consistent with the C naming.
2626
2627 2003-11-16  Miguel de Icaza  <miguel@ximian.com>
2628
2629         * Graphics.cs: Implement the other DrawString overloads .
2630
2631 2003-11-16  Miguel de Icaza  <miguel@ximian.com>
2632
2633         * gdipStructs.cs (GdipRectF): Added utility constructor
2634
2635 2003-11-15  Duncan Mak  <duncan@ximian.com>
2636
2637         * gdipFunctions.cs: Imported matrix functions.
2638
2639 2003-11-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2640
2641         * Bitmap.cs: Added Attributes
2642         * ColorTranslator.cs: Added private constructor
2643         * Font.cs: Added Attributes
2644         * FontFamily.cs: sealed
2645         * Icon.cs: Added Attributes
2646         * IconConverter.cs: Fixed signature
2647         * Image.cs: Added attributes
2648         * ImageAnimator.cs: 
2649         * ImageConverter.cs:
2650         * ImageFormatConverter.cs:
2651         * SolidBrush.cs:
2652         * StringFormat.cs:
2653         * SystemBrushes.cs:
2654         * SystemColors.cs:
2655         * SystemIcons.cs:
2656         * SystemPens.cs:
2657         * TextureBrush.cs: Fixed signature
2658         * Color.cs: Added attributes
2659         * Point.cs:
2660         * PointF.cs:
2661         * Rectangle.cs:
2662         * Size.cs:
2663         * SizeF.cs: Added attributes
2664         * ContentAlignment.cs: Added attribute
2665
2666 2003-11-13  Duncan Mak  <duncan@ximian.com>
2667
2668         * Pen.cs (LineCap, LineJoin, MiterLimit, Transform): implemented.
2669
2670         * gdipFunctions.cs
2671         (GdipSetPenMiterLimit, GdipGetPenMiterLimit):
2672         (GdipSetPenLineJoin, GdipGetPenLineJoin): 
2673         (GdipSetPenLineJoin, GdipGetPenTransform): imported.
2674
2675 2003-11-12  Alexandre Pigolkine <pigolkine@gmx.de>
2676         * Bitmap.cs
2677         * gdipFunctions.cs              copy image in Bitmap constructor
2678         
2679 2003-11-06  Duncan Mak  <duncan@ximian.com>
2680         * Graphics.cs (DrawPie): Use DrawPieI instead of DrawPie and fix
2681         angle parameters for the integer case.
2682         (DrawBezier): Hook it up with GdipDrawBezier.
2683         (DrawEllipse): Fix Width, Height ordering.
2684
2685 2003-11-05  Duncan Mak  <duncan@ximian.com>
2686
2687         * Graphics.cs (DrawPie): 
2688         * gdipFunctions.cs (GdipDrawPie): Add hooks to the implementation
2689         in graphics.c.
2690         
2691 2003-10-28  Duncan Mak  <duncan@ximian.com>
2692
2693         * Graphics.cs (DrawEllipse, DrawLine, DrawPolygon):
2694         (FillEllipse, FillPolygon): implemented.
2695         (RenderingOrigin): implemented.
2696
2697         * gdipFunctions.cs: Added new GDI+ equivalents.
2698
2699 2003-10-25  Alexandre Pigolkine <pigolkine@gmx.de>
2700         * Bitmap.cs
2701         * Image.cs                      small fixes
2702         
2703 2003-10-25  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
2704
2705         * Image.cs : renamed 'pallete' to 'colorPallete' for CLS compliance.
2706
2707 2003-10-24  Miguel de Icaza  <miguel@ximian.com>
2708
2709         * SystemBrushes.cs: Some more brushe3s.
2710
2711         * SystemPens.cs: More pens.
2712
2713         * Pen.cs: Implement IDisposable, ICloneable.
2714
2715         * Region.cs: Add some more stubs here.
2716
2717         * StringFormat.cs: Add some more code here.
2718
2719 2003-10-23  Miguel de Icaza  <miguel@ximian.com>
2720
2721         * Image.cs: Kill the InternalImageInfo, everything is now done in
2722         terms of Image and BitmapData.
2723
2724         * Rectangle.cs: Make this one also sequential, change from using
2725         Point + Size to use x, y, width, height;  So we can use GdiPlus.
2726
2727         * gdipFunctions.cs (GdipBitmapLockBits): Remove the ref from the
2728         BitmapData class argument, and instead use the [In,Out]
2729         attributes, which will do struct marshalling on the fields.   Now
2730         we can use C#'s BitmapData directly to talk to Gdiplus.
2731
2732         * gdipStructs.cs: Every internal structure that has to talk to
2733         Gdi+ is properly prefixed, to minimize the confussion.
2734
2735         * Bitmap.cs Bitmap (int width, int height, PixelFormat format):
2736         Compute the stride here where we have the BPP information,
2737         allocate a buffer of the proper size, and pass this to
2738         GdipCreateBitmapFromScan0 
2739
2740         * Image.cs: Implement Dispose pattern.
2741
2742 2003-10-14  Alexandre Pigolkine <pigolkine@gmx.de>
2743         * Graphics.cs
2744         * gdipFunctioncs.cs             
2745         * gdipStructs.cs                DrawString function added
2746
2747 2003-10-12  Alexandre Pigolkine <pigolkine@gmx.de>
2748         * gdipEnums.cs 
2749         * gdipFunctions.cs 
2750         * gdipStructs.cs                added 
2751                                                 
2752
2753 2003-10-12  Alexandre Pigolkine <pigolkine@gmx.de>
2754         * Bitmap.cs
2755         * Brush.cs
2756         * Font.cs
2757         * FontFamily.cs
2758         * Graphics.cs
2759         * Image.cs
2760         * Pen.cs
2761         * SolidBrush.cs
2762                                                 implementation changed to gdi+
2763
2764 2003-09-08  Duncan Mak  <duncan@ximian.com>
2765
2766         * Factories.cs (DefaultImplementationNamespace): Change it from
2767         "XrImpl" to "Cairo".
2768
2769 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2770
2771         * Color.cs: fixed FromArgb to handle alpha value correctly. Closes
2772         bug #47727.
2773
2774 2003-08-08  Duncan Mak  <duncan@ximian.com>
2775
2776         * Graphics.cs (DrawBezier): Fixed.
2777
2778 2003-08-03  Alexandre Pigolkine <pigolkine@gmx.de>
2779         * Graphics.cs  delegate Dispose to implementation
2780
2781 2003-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2782
2783         * FontConverter.cs: stub it out so that system.web compiles.
2784
2785 2003-07-30 Alexandre Pigolkine <pigolkine@gmx.de>
2786         * Image.cs      InternalImageInfo class improved
2787
2788 2003-07-23  Miguel de Icaza  <miguel@ximian.com>
2789
2790         * Factories.cs: If the AppDomain key `Mono.Running.Windows.Forms'
2791         is set, default to Win32Impl 
2792
2793 2003-07-22 Alexandre Pigolkine <pigolkine@gmx.de>
2794         * Image.cs      implementation added
2795         
2796 2003-07-21  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2797
2798         * Icon.cs: Stubed out (fix for System.Drawing.Design)
2799
2800 2003-07-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2801
2802         * StringFormat.cs: Changes to become CLS-compliant
2803
2804 2003-07-14  Miguel de Icaza  <miguel@ximian.com>
2805
2806         * Factories.cs: Remove debugging message.
2807
2808 2003-07-01 Alexandre Pigolkine <pigolkine@gmx.de>
2809         * Color.cs      code generation program modified
2810
2811 2003-06-29 Alexandre Pigolkine
2812         * Graphics.cs   image drawing
2813
2814 2003-06-28 Alexandre Pigolkine <pigolkine@gmx.de>
2815         * Color.cs                      
2816         * SystemColors.cs       
2817                 supply KnowColor enum value to save Enum.Parse at runtime
2818
2819 2003-06-26 Alexandre Pigolkine <pigolkine@gmx.de>
2820         * Graphics.cs           coordinate transformations
2821         * Image.cs                      small fix
2822
2823 2003-06-22 Alexandre Pigolkine <pigolkine@gmx.de>
2824         * Factories.cs
2825         * FontFamily.cs         more implementation
2826
2827 2003-06-20 Alexandre Pigolkine <pigolkine@gmx.de>
2828         * Font.cs
2829         * FontFamily.cs         more implementation
2830
2831 2003-06-18 Alexandre Pigolkine <pigolkine@gmx.de>
2832         * Graphics.cs           few more calls to implementation
2833
2834 2003-06-15 Alexandre Pigolkine <pigolkine@gmx.de>
2835     * Bitmap.cs                 BITMAP declaration removed
2836         * Graphics.cs           few more calls to implementation
2837         * Image.cs                      InternalImageInfo structure, image read/write functions
2838                         
2839                         
2840 2003-05-26 Alexandre Pigolkine <pigolkine@gmx.de>
2841         * Factories.cs  analyse environment variable and machine.config to select implementation
2842         * Image.cs              PixelFormat property added
2843
2844 2003-04-30  Nick Drochak <ndrochak@gol.com>
2845
2846         * Factories.cs: Change weird characters that broke build on windows.
2847
2848 2003-04-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2849
2850         * ColorConverter.cs:
2851         (ConvertFrom): return a system or named color if there's one that fits
2852         teh values parsed with Color.FromArgb.
2853
2854 2003-04-26  Alexandre Pigolkine <pigolkine@gmx.de>
2855         * Bitmap.cs
2856         * Brush.cs
2857         * Font.cs
2858         * Graphics.cs
2859         * Image.cs
2860         * Pen.cs
2861         * SolidBrush.cs
2862         * SystemBrushes.cs
2863         * Factories.cs
2864                         delegate function calls to implementation
2865
2866 2003-04-26  Alexandre Pigolkine <pigolkine@gmx.de>
2867         * Bitmap.cs
2868         * ChangeLog
2869         * Image.cs
2870         * SystemBrushes.cs              switch to Linux style line terminators
2871
2872 2003-03-29 Alan Tam <Tam@SiuLung.com>
2873         * ToolboxBitmapAttribute
2874                 stubbed more constructors and fixed base class
2875
2876 2003-03-01 Alexandre Pigolkine <pigolkine@gmx.de>
2877         * SystemBrushes.cs
2878                         added stubs to compile SWF
2879
2880
2881 2003-02-21  Alexandre Pigolkine <pigolkine@gmx.de>
2882         * Font.cs
2883         * Graphics.cs
2884         * Image.cs
2885         * SystemBrushes.cs
2886                         small changes to be able to run SWF apps
2887
2888 2003-02-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2889
2890         * Graphics.cs: stubbed out all the methods.
2891
2892 2003-02-08 Piers Haken <piersh@friskit.com>
2893
2894         * fixed case of pens.cs and font.cs
2895
2896 2003-02-07 Alexandre Pigolkine <pigolkine@gmx.de>
2897         * Font.cs Added
2898         * Graphics.cs
2899         * StringFormat.cs 
2900         * SystemBrushes.cs
2901                 stubs added
2902
2903 2002-11-21 Dennis Hayes (dennish@raytek.com)
2904         * checkin for Matt Stump (mstump@swfo.arizona.edu)
2905         * Pens.cs
2906         * Added file
2907
2908 2002-10-19  Rachel Hestilow <hestilow@ximian.com>
2909
2910         * ColorTranslator.cs (FromHtml): Implement.
2911         
2912 2002-10-14 Dennis Hayes (dennish@raytek.com)
2913         * Region.cs
2914         * changed using namespace from Drawing2d to Drawing2D
2915
2916  2002-9-15 Asier Llano <asierllano@infonegocio.com>
2917         
2918         * Fixes the enum values in the following enums
2919         * ContentAlignment.cs:
2920         * FontStyle.cs:
2921         * GraphicsUnit.cs:
2922         * KnownColor.cs:
2923         * RotateFlipType.cs:
2924         * StringAligment.cs:
2925         * StringDigitSubstitute.cs:
2926         * StringFormatFlags.cs:
2927         * StringTrimming.cs:
2928         * StringUnit.cs: 
2929         * SolidBrush.cs: Easy implementation
2930         * Brushes.cs:    Implementation based on SolidBrush and Color class.
2931         * Brush.cs:      Fixes based on the status web).
2932         * CharacterRange.cs: Implemented the missing Lenth property.
2933
2934 2002-9-14 Dennis Hayes (dennish@raytek.com)
2935         
2936         * sample.cs
2937         * removed personal template that should not have been checked in
2938
2939 2002-09-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2940
2941         * ColorConverter.cs: readded MonoTODOs and implemented a couple of
2942         methods.
2943
2944 2002-9-14  DennisHayes <dennish@raytek.com>
2945
2946         * FontConverter.cs
2947         * FontFamily.cs
2948         * Icon.cs
2949         * IconConverter.cs
2950         * ImageAnimator.cs
2951         * ImageConverter.cs
2952         * ImageFormatConverter.cs
2953         * PointConverter.cs
2954         * RectangleConverter.cs
2955         * Sample.cs
2956         * SizeConverter.cs
2957         * SolidBrush.cs
2958         * StringFormat.cs
2959         * SystemBrushes.cs
2960         * SystemIcons.cs
2961         * SystemPens.cs
2962         * TextureBrush.cs
2963         * ToolboxBitmapAttribute.cs
2964         * Added null classes for most/all classes, Many stubs, and some implmentation
2965
2966 2002-9-2  DennisHayes <dennish@raytek.com>
2967
2968         * Bitmap.cs
2969         * Color.cs
2970         * ColorConverter.cs
2971         * Image.cs
2972         * Pen.cs
2973         * Added stubs, implmentation
2974
2975 2002-9-2  DennisHayes <dennish@raytek.com>
2976
2977         * Brushes.cs : stubbed, added colors. Not sure how to implement,
2978                                  but this should at least save someone some typing.
2979         * CharacterRange.cs :Implmented
2980         * Region.cs : stub needed for system.windows.forms
2981
2982 2002-07-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2983
2984         * ColorTranslator.cs: use Color.Name.
2985
2986 2002-07-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2987
2988         * Color.cs: implemented SystemColors and NamedColors properties that
2989         are used by ColorConverter, removed public constructor, use
2990         SystemColors, and misc. fixes to make it behave as MS (ToString,
2991         parsing names, FromKnownColor,...).
2992
2993         * ColorConverter.cs: use NamedColors and SystemColors from Color when
2994         trying to get the color from its name.
2995
2996         * SystemColors.cs: new file.
2997
2998 2002-07-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2999
3000         * Color.cs: changed static properties to use FromArgbNamed. Also
3001         modified the program included in comments that get the values for
3002         static properties.
3003
3004         (FromArgbNamed): build named colors.
3005         (FromKnownColor): fixed.
3006         (FromName): use a hash to look up colors by name.
3007         (FillColorNames): create the hash of colors.
3008         (Equals): compare values and name.
3009         (ToString): improved.
3010
3011         * ColorTranslator.cs: implemented ToHtml.
3012
3013 2002-06-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3014
3015         * Color.cs: added TypeConverter attribute.
3016         
3017         * ColorConverter.cs: added constructor.
3018
3019 2002-06-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3020
3021         * ColorConverter.cs: implemented minimal set of features needed by xsp.
3022
3023 2002-05-03  Mike Kestner <mkestner@speakeasy.net>
3024
3025         * Bitmap.cs : using System.IO
3026         * ColorTranslator.cs : Stubbed off build breakers.
3027         * Image.cs : Stub off IDisposable and ICloneable.
3028         
3029 2002-04-27  Christian Meyer  <Christian.Meyer@cs.tum.edu>
3030
3031         * Bitmap.cs: Ximian is the new copyright holder now.
3032         * Image.cs: ditto
3033
3034 2002-04-05  Christian Meyer  <Christian.Meyer@cs.tum.edu>
3035
3036         * Uppercased several files.
3037
3038 2002-04-05  Christian Meyer  <Christian.Meyer@cs.tum.edu>
3039
3040         * color.cs: Fixed a typo in GetSaturation ().
3041
3042 2002-02-26  Christian Meyer  <Christian.Meyer@cs.tum.edu>
3043
3044         * Bitmap.cs: Added method headers.
3045
3046 2002-02-25  Christian Meyer  <Christian.Meyer@cs.tum.edu>
3047
3048         * Bitmap.cs: Added, no implementation's done, yet.
3049
3050 2001-12-15  Mike Kestner <mkestner@speakeasy.net>
3051
3052         * Rectangle.cs : Add a doc comment.
3053         * RectangleF.cs : New struct implementation.
3054
3055 2001-12-15  Mike Kestner <mkestner@speakeasy.net>
3056
3057         * Rectangle.cs : New struct implementation.
3058
3059 2001-08-17  Mike Kestner <mkestner@speakeasy.net>
3060
3061         * PointF.cs, Size.cs, SizeF.cs : New struct implementations.
3062
3063 2001-08-16  Mike Kestner <mkestner@speakeasy.net>
3064
3065         * Point.cs : New. Implementation of System.Drawing.Point struct.
3066