2007-02-28 Sebastien Pouliot <sebastien@ximian.com>
[mono.git] / mcs / class / System.Drawing / System.Drawing / ChangeLog
index 97b97ac6509b119ddd34e1feca3c40f6b904bfba..f89764a96aea1d62333ea72d708d7839ce35af43 100644 (file)
@@ -1,3 +1,244 @@
+2007-02-28  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Font.cs: Remove internal SysFontName setter property and add a new
+       ctor to replace it.
+       * SystemFonts.cs: We can't cache font instance (because anyone can
+       dispose them) so we must return new instances each time.
+
+2007-02-27  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Bitmap.cs: Removed unrequired ctors.
+       * TextureBrush.cs: Change which GDI+ calls is used to create the 
+       brush (to better match what you expect from libgdiplus source). Add
+       [MonoLimitation] to ctors accepting ImageAttributes (not supported
+       by libgdiplus). Split some long lines into two lines.
+
+2007-02-26  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * gdipFunctions.cs: Add p/invoke signature for GDI DeleteObject.
+       * Region.cs: Under Windows use DeleteObject when calling ReleaseHrgn.
+       Fix bug #80956.
+
+2007-02-21  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Image.cs: Fix Metefile.ctor usage (to avoid creating, and leaking,
+       an unmanaged metafile object);
+
+2007-02-16  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * gdipFunctions.cs: Fix some p/invoke definitions (int versus uint) 
+       and add more for metafile functions.
+       * Image.cs: Fix usage of corrected p/invoke signatures.
+
+2007-02-14  Jonathan Pobst  <monkey@jpobst.com>
+
+       * SystemColors.cs: Query Windows for the colors added to this class
+       for 2.0.  (Windows-only path of course.)
+
+2007-02-13  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Icon.cs: Ignore Vista 256x256 icons, just like MS does.
+
+2007-02-09  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Icon.cs: Resurrected some old Icon to Bitmap code from SVN history
+       to handle convertion for Win32, where MS GDI+ ICO codec doesn't 
+       support all the icon formats supported by the Icon class.
+
+2007-02-08  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Bitmap.cs: Adapt code wrt Image changes. Reuse the serialization 
+       ctor from Image to avoid duplicate code.
+       * gdipEnums.cs: Added ImageType. Clean up extra stuff.
+       * gdipFunctions.cs: Added GdipGetImageType and some metafile 
+       definitions.
+       * Image.cs: Refactor code not to create a Bitmap for every images
+       (e.g. FromFile, FromStream) as the result can also be a Metafile.
+
+2007-01-30  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Image.cs: Fix serialization of Image/Bitmap that contains ICO. In 
+       this case the image is serialized as a PNG bitmap (note: the ICO codec
+       is a decoder-only codec).
+
+2007-01-19  Sebastien Pouliot  <sebastien@ximian.com> 
+
+       * Graphics.cs: Fix FromImage to check for indexed images inside
+       managed code (and not GDI+ which will report the wrong error code
+       for the exception we expect).
+       * Image.cs: Remove unused private method IsIndexedPixelFormat.
+
+2007-01-19  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Font.cs: Fix calls to GDIPlus.ReleaseDC (missing parameter). This
+       fix the GDI object leaks under Win32 (#80552).
+       * gdipFunctions.cs: Fix ReleaseDC signature (missing hWnd).
+       * Graphics.cs: Fix ReleaseDC signature (missing hWnd) in NET_2_0.
+
+2007-01-19  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Font.cs: Under Win32 cache the LOGFONT we use to create the HFONT
+       handle. This "hides" the fact that ToLogFont leaks (#80552).
+
+2007-01-17  Sebastien Pouliot  <sebastien@ximian.com> 
+
+       * gdipFunctions.cs: Added Win32 CreateIconIndirect and DestoryIcon
+       imports. Both are required under Win32 to get HICON stuff working.
+       Added some GDI+ Metafile related definitions too.
+       * gdipStructs.cs: Update IconInfo structure so it can be used when
+       calling CreateIconIndirect on Win32.
+       * Icon.cs: Add support for handles under Win32.
+
+2007-01-16  Sebastien Pouliot  <sebastien@ximian.com> 
+
+       * Icon.cs: Implement saving an icon from it's bitmap representation.
+       This allows roundtripped icons (Handle or HICON) to be saved.
+
+2007-01-15  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Icon.cs: Refactor Save code to allow saving a single icon size.
+       This allows ToBitmap to produce the right (sized) bitmap wrt the
+       selected icon size. Fix #80509 under UNIX.
+
+2007-01-15  Sebastien Pouliot  <sebastien@ximian.com> 
+
+       * Bitmap.cs: Make sure we're not building bitmaps using stream that
+       can be disposed (as GDI+ may require access to them anytime);
+       * Icon.cs: Change icon selection to match either width *or* height.
+       * Image.cs: Track user versus internal streams in InitFromStream
+
+2007-01-12  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Graphics.cs: Change DrawIcon* methods to use the internal bitmap
+       we keep for the Icon. This is required to let HICON support work with 
+       libgdiplus (and should be faster than creating a new bitmap each time)
+       * Icon.cs: Fix ctor exceptions. Select the correct icon when multiple
+       size are available (and do not match the requested size). Fix handle
+       support for work under UNIX (Win32 support still missing). Keep an
+       internal bitmap for the Icon to use for HICON support.
+
+2007-01-11  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Icon.cs: Fix .ctor(string) to load, when available, the 32x32 icon.
+       Remove TARGET_JVM from file (Mainsoft now use Icon2.jvm.cs). Use GDI+
+       to implement ToBitmap method (previous results were wrong).
+
+2007-01-10  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Image.cs: Fix Palette to call into GDI+ even for non-indexed images.
+       This case can occurs with the ICOn codec where the returned image is a
+       32bpp ARGB bitmap *with* a palette.
+
+2007-01-09  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Font.cs: Unify platform detection code.
+       * gdipFunctions.cs: Unify platform detection code.
+       * Graphics.cs: Unify platform detection code.
+       * Image.cs: Unify platform detection code.
+       * SystemColors.cs: Unify platform detection code.
+
+2007-01-08  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * gdipStructs.cs: Add support for SignaturePatterns and 
+       SiggnatureMasks values.
+
+2006-12-30  Alexander Olk  <alex.olk@googlemail.com>
+
+       * gdipFunctions.cs: Don't create "millions" of byte arrays in
+       GdiPlusStreamHelper. Just create a default size array and resize it
+       only when needed. (as an example: the FileDialog sample created more
+       than 1700 new byte arrays on my system before the patch, now only 74)
+
+2006-12-29  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * Brush.cs: Fixed line endings.
+       * BufferedGraphicsContext.cs: Fixed line endings.
+       * CharacterRange.cs: Fixed line endings.
+       * Graphics.cs: Fixed line endings.
+       * IDeviceContext.cs: Fixed line endings.
+       * SizeFConverter.cs: Fixed line endings.
+       * SystemBrushes.cs: Fixed line endings.
+       * SystemFonts.cs: Fixed line endings.
+       * SystemPens.cs: Fixed line endings.
+
+2006-12-22  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Graphics.cs: Splitted CopyFromScreen into platform specific methods
+       and added MonoLimitations to all overloads. This should get better 
+       results from MoMA.
+
+2006-12-19  Sebastien Pouliot  <sebastien@ximian.com> 
+
+       * FontFamily.cs: More accurate Mono* attributes to avoid confusion.
+       * Icon.cs: Dummy implementation of ExtractAssociatedIcon to always 
+       return SystemIcons.WinLogo (which is better than throwing an NIE).
+       Updated MonoTODO, to a MonoLimitation, to reflect the change.
+
+2006-12-14  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Image.cs: Rework Clone so it doesn't confuse MoMA to report a NIE.
+       Cloning works for bitmap. Metafiles aren't (actually) supported.
+
+2006-12-07  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Icon.cs: Revert a change from r68882. The type is also part of the 
+       icon's name. Fix bug #80181.
+
+2006-12-03  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Icon.cs: Add a new ctor that returns undisposable Icon instances 
+       (required when used from SystemIcons). Added a dispose check in 
+       ToBitmap (many other are missing).
+       * SystemIcons.cs: Change icons to the one already in SVN.
+
+2006-12-02  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * FontConverter.cs: Add a comment why the empty finalizer is required.
+       * gdipFunctions.cs: Remove warning from build (unused variable).
+       * Icon.cs: Fix .ctor accepting a type - the type is to find the 
+       assembly, not the type of the ressource.
+       * SystemIcons.cs: Load some icons from the assembly (all the same Mono
+       icon for tonight).
+
+2006-11-22  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * BufferedGraphicsContext.cs: Better MonoTODO.
+       * BufferedGraphics.cs: Better MonoTODO.
+       * Font.cs: Better MonoTODO.
+       * FontFamily.cs: Better MonoTODO.
+       * Graphics.cs: Better MonoTODO.
+       * Icon.cs: Better MonoTODO.
+       * Image.cs: Second chance while saving using the current RawFormat.
+       This allows icons to be saved as PNG (strange but look at unit tests).
+       * ImageFormatConverter.cs: Implement GetStandardValues (and remove
+       it's MonoTODO) and fix GetStandardValuesSupported (to return true).
+       * Region.cs: Implement ReleaseHrgn (2.0) - not really useful (as the
+       handle is never exposed) but it's easier than to document the TODO ;-)
+       * SystemIcons.cs: Better MonoTODO.
+
+2006-11-06  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * RectangleF.cs: Fix operator !=. Patch by Manuel Alejandro CerĂ³n 
+       Estrada.
+
+2006-11-04  Chris Toshok  <toshok@ximian.com>
+
+       * SystemColors.cs: reassign the given color to the return value of
+       UpdateKnownColor.  This makes sure that the color has the same
+       SystemColor name.  So, SystemColors.Control.Name always equals
+       "Control", regardless of the values the theme has stuffed in it.
+
+       * Color.cs: UpdateKnownColor now returns the new color.
+
+2006-10-11  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Graphics.cs: In MeasureCharacterRanges throw an ArgumentException if
+       StringFormat is null and return an empty region array if no range exists 
+       (avoid GDI+ error/exeception). In MeasureString (2 overloads) replace 
+       999999 by Int32.MaxValue (now that the real bug is fixed).
+       * StringFormat.cs: Ensure we are clearing the handle before throwing
+       any exception.
+
 2006-09-21  Sebastien Pouliot  <sebastien@ximian.com>
 
        * gdipFunctions.cs: Throw an OverflowException for the ValueOverflow