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