X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/28e27c34756e5e8766937980d7cc1a6ed5950d34..df97a4ef79613ac2f73a62601a9fa738d79c77a4:/src/propgrid/property.cpp diff --git a/src/propgrid/property.cpp b/src/propgrid/property.cpp index 0d0826386e..f878d4ddda 100644 --- a/src/propgrid/property.cpp +++ b/src/propgrid/property.cpp @@ -35,6 +35,8 @@ #include "wx/intl.h" #endif +#include "wx/image.h" + #include "wx/propgrid/propgrid.h" @@ -2097,6 +2099,7 @@ void wxPGProperty::SetValueImage( wxBitmap& bmp ) if ( imSz.y != maxSz.y ) { + #if wxUSE_IMAGE // Here we use high-quality wxImage scaling functions available wxImage img = bmp.ConvertToImage(); double scaleY = (double)maxSz.y / (double)imSz.y; @@ -2104,6 +2107,15 @@ void wxPGProperty::SetValueImage( wxBitmap& bmp ) ((double)bmp.GetHeight())*scaleY, wxIMAGE_QUALITY_HIGH); wxBitmap* bmpNew = new wxBitmap(img, 32); + #else + // This is the old, deprecated method of scaling the image + wxBitmap* bmpNew = new wxBitmap(maxSz.x,maxSz.y,bmp.GetDepth()); + wxMemoryDC dc; + dc.SelectObject(*bmpNew); + double scaleY = (double)maxSz.y / (double)imSz.y; + dc.SetUserScale(scaleY, scaleY); + dc.DrawBitmap(bmp, 0, 0); + #endif m_valueBitmap = bmpNew; }