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