From 6d55ca7cb13c6badbd9a3b4b3b42dd76f8e0f709 Mon Sep 17 00:00:00 2001 From: =?utf8?q?V=C3=A1clav=20Slav=C3=ADk?= Date: Thu, 24 Apr 2008 23:20:08 +0000 Subject: [PATCH] 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 --- src/mac/carbon/bmpbuttn.cpp | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/mac/carbon/bmpbuttn.cpp b/src/mac/carbon/bmpbuttn.cpp index aae979a862..5757f50b84 100644 --- a/src/mac/carbon/bmpbuttn.cpp +++ b/src/mac/carbon/bmpbuttn.cpp @@ -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 -- 2.47.2