X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1c9a789ed98cc1db72451cb2f812954ec173b6d9..9f7948af90ec2e3b907944e7d979f0863910c5c8:/src/os2/dcmemory.cpp diff --git a/src/os2/dcmemory.cpp b/src/os2/dcmemory.cpp index 8dc8321f77..5e2ed33694 100644 --- a/src/os2/dcmemory.cpp +++ b/src/os2/dcmemory.cpp @@ -150,6 +150,22 @@ void wxMemoryDC::SelectObject( if (!hBmp) { + // + // Bmps drawn to are upside down, so flip it before committing + // + POINTL vPoint[4] = { 0, m_vSelectedBitmap.GetHeight(), + m_vSelectedBitmap.GetWidth(), 0, + 0, 0, m_vSelectedBitmap.GetWidth(), m_vSelectedBitmap.GetHeight() + }; + + + ::GpiBitBlt( m_hPS + ,m_hPS + ,4 + ,vPoint + ,ROP_SRCCOPY + ,BBO_IGNORE + ); m_vSelectedBitmap.SetSelectedInto(NULL); } m_vSelectedBitmap = rBitmap; @@ -157,6 +173,7 @@ void wxMemoryDC::SelectObject( if (!hBmp) { + m_hOldBitmap = (WXHBITMAP)::GpiSetBitmap(m_hPS, NULLHANDLE); return; }