Fixed handling of transparent background in borderless wxBitmapButton (patch #1477883)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -14,6 +14,7 @@
|
||||
#if wxUSE_BMPBUTTON
|
||||
|
||||
#include "wx/bmpbuttn.h"
|
||||
#include "wx/image.h"
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/dcmemory.h"
|
||||
@@ -63,14 +64,12 @@ static wxBitmap wxMakeStdSizeBitmap(const wxBitmap& bitmap)
|
||||
wxASSERT_MSG( width <= sizeStd && height <= sizeStd,
|
||||
_T("bitmap shouldn't be cropped") );
|
||||
|
||||
newBmp.Create(sizeStd, sizeStd);
|
||||
wxMemoryDC dcMem;
|
||||
dcMem.SelectObject(newBmp);
|
||||
dcMem.Clear();
|
||||
|
||||
dcMem.DrawBitmap(bitmap,
|
||||
(sizeStd - width)/2, (sizeStd-height)/2,
|
||||
true);
|
||||
wxImage square_image = bitmap.ConvertToImage();
|
||||
newBmp = square_image.Size
|
||||
(
|
||||
wxSize(sizeStd, sizeStd),
|
||||
wxPoint((sizeStd - width)/2, (sizeStd-height)/2)
|
||||
);
|
||||
}
|
||||
}
|
||||
//else: let the system rescale the bitmap
|
||||
|
Reference in New Issue
Block a user