Fix handling of bitmaps with alpha channel in wxMSW wxImageList.

Don't use mask and alpha together, this results in visual artefacts and masks
are unnecessary with RGBA bitmaps anyhow.

The only potentially problematic remaining case is mixing bitmaps with alpha
and mask inside the same image list (as we need to indicate whether we use the
mask or not when creating it), but this should probably be rare and in the
meanwhile we can at least RGBA bitmaps with image lists, which includes doing
this implicitly when they are used as button bitmaps.

Also refactor wxBitmap code to extract part of CopyFromIconOrCursor() to allow
reusing it in the newly added MSWUpdateAlpha().

See #11476.

[This is the backport of r75567 from trunk.]

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2014-10-03 01:52:10 +00:00
parent 46e1b4b805
commit 7d94e9fafd
5 changed files with 113 additions and 61 deletions

View File

@@ -610,6 +610,7 @@ wxMSW:
- Fix drawing on wxDC when using right-to-left layout (Artur Wieczorek).
- Fix wxGrid appearance and behaviour in RTL (Artur Wieczorek).
- Fix creating wxBitmap from monochrome wxIcon or wxCursor (Artur Wieczorek).
- Fix handling of bitmaps with alpha in wxImageList (Artur Wieczorek).
- Add paragraph spacing attributes support to wxTextCtrl (dannchr).
- Show new style directory selector even for non existent paths (raychow).
- Fix order of radial gradient stops (Alexandru Pana).