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