fix to wxMGL's wxBitmap(wxImage) ctor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@11875 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -48,6 +48,9 @@ static pixel_format_t gs_pixel_format_24 =
|
|||||||
static pixel_format_t gs_pixel_format_32 =
|
static pixel_format_t gs_pixel_format_32 =
|
||||||
{0xFF,0x18,0, 0xFF,0x10,0, 0xFF,0x08,0, 0xFF,0x00,0}; // RGBA 32bpp
|
{0xFF,0x18,0, 0xFF,0x10,0, 0xFF,0x08,0, 0xFF,0x00,0}; // RGBA 32bpp
|
||||||
|
|
||||||
|
static pixel_format_t gs_pixel_format_wxImage =
|
||||||
|
{0xFF,0x00,0, 0xFF,0x08,0, 0xFF,0x10,0, 0x00,0x00,0}; // RGB 24bpp for wxImage
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
// wxMask
|
// wxMask
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
@@ -275,7 +278,7 @@ wxBitmap::wxBitmap(const wxImage& image, int depth = -1)
|
|||||||
|
|
||||||
if ( !Create(width, height, depth) ) return;
|
if ( !Create(width, height, depth) ) return;
|
||||||
|
|
||||||
MGLMemoryDC idc(width, height, 24, &gs_pixel_format_24,
|
MGLMemoryDC idc(width, height, 24, &gs_pixel_format_wxImage,
|
||||||
width * 3, (void*)image.GetData(), NULL);
|
width * 3, (void*)image.GetData(), NULL);
|
||||||
wxASSERT_MSG( idc.isValid(), wxT("cannot create custom MGLDC") );
|
wxASSERT_MSG( idc.isValid(), wxT("cannot create custom MGLDC") );
|
||||||
|
|
||||||
@@ -309,7 +312,7 @@ wxImage wxBitmap::ConvertToImage() const
|
|||||||
wxImage image(width, height);
|
wxImage image(width, height);
|
||||||
wxASSERT_MSG( image.Ok(), wxT("cannot create image") );
|
wxASSERT_MSG( image.Ok(), wxT("cannot create image") );
|
||||||
|
|
||||||
MGLMemoryDC idc(width, height, 24, &gs_pixel_format_24,
|
MGLMemoryDC idc(width, height, 24, &gs_pixel_format_wxImage,
|
||||||
width * 3, (void*)image.GetData(), NULL);
|
width * 3, (void*)image.GetData(), NULL);
|
||||||
wxASSERT_MSG( idc.isValid(), wxT("cannot create custom MGLDC") );
|
wxASSERT_MSG( idc.isValid(), wxT("cannot create custom MGLDC") );
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user