X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/edccf4281bc8fbb9d8151240ba5b208339c9ac11..ca17eff36b7084f213ab3c233b6183ef8bd1a345:/src/common/image.cpp diff --git a/src/common/image.cpp b/src/common/image.cpp index 153472c88d..76afc83b77 100644 --- a/src/common/image.cpp +++ b/src/common/image.cpp @@ -150,7 +150,7 @@ void wxImage::Destroy() UnRef(); } -wxImage wxImage::Scale( int width, int height ) +wxImage wxImage::Scale( int width, int height ) const { wxImage image; @@ -592,11 +592,11 @@ wxBitmap wxImage::ConvertToBitmap() const // calc the number of bytes per scanline and padding int bytePerLine = width*3; int sizeDWORD = sizeof( DWORD ); - div_t lineBoundary = div( bytePerLine, sizeDWORD ); + int lineBoundary = bytePerLine % sizeDWORD; int padding = 0; - if( lineBoundary.rem > 0 ) + if( lineBoundary > 0 ) { - padding = sizeDWORD - lineBoundary.rem; + padding = sizeDWORD - lineBoundary; bytePerLine += padding; } // calc the number of DIBs and heights of DIBs @@ -607,9 +607,8 @@ wxBitmap wxImage::ConvertToBitmap() const height = bmpHeight; else { - div_t result = div( bmpHeight, height ); - numDIB = result.quot; - hRemain = result.rem; + numDIB = bmpHeight / height; + hRemain = bmpHeight % height; if( hRemain >0 ) numDIB++; } @@ -805,11 +804,11 @@ wxImage::wxImage( const wxBitmap &bitmap ) // calc the number of bytes per scanline and padding in the DIB int bytePerLine = width*3; int sizeDWORD = sizeof( DWORD ); - div_t lineBoundary = div( bytePerLine, sizeDWORD ); + int lineBoundary = bytePerLine % sizeDWORD; int padding = 0; - if( lineBoundary.rem > 0 ) + if( lineBoundary > 0 ) { - padding = sizeDWORD - lineBoundary.rem; + padding = sizeDWORD - lineBoundary; bytePerLine += padding; } @@ -944,7 +943,7 @@ wxBitmap wxImage::ConvertToBitmap() const // Retrieve depth GdkVisual *visual = gdk_window_get_visual( bitmap.GetPixmap() ); - if (visual == NULL) visual = gdk_window_get_visual( (GdkWindow*) &gdk_root_parent ); + if (visual == NULL) visual = gdk_visual_get_system(); int bpp = visual->depth; bitmap.SetDepth( bpp ); @@ -1485,7 +1484,7 @@ wxImage::wxImage( const wxBitmap &bitmap ) vi = XGetVisualInfo( dpy, VisualIDMask|VisualDepthMask, &vinfo_template, &nitem ); - wxCHECK_MSG( vi, wxNullBitmap, _T("no visual") ); + wxCHECK_RET( vi, _T("no visual") ); if ((bpp == 16) && (vi->red_mask != 0xf800)) bpp = 15;