X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/336b8a4257b2723804ed6aa5a033e86b7edb8dad..0bd2681966523df88ad5cf8e505b532843e58d74:/src/msw/dcmemory.cpp?ds=sidebyside diff --git a/src/msw/dcmemory.cpp b/src/msw/dcmemory.cpp index 7a2de900bf..5565670444 100644 --- a/src/msw/dcmemory.cpp +++ b/src/msw/dcmemory.cpp @@ -1,11 +1,11 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: dcmemory.cpp +// Name: src/msw/dcmemory.cpp // Purpose: wxMemoryDC class // Author: Julian Smart // Modified by: // Created: 01/02/97 // RCS-ID: $Id$ -// Copyright: (c) Julian Smart and Markus Holzem +// Copyright: (c) Julian Smart // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -17,10 +17,6 @@ // headers // ---------------------------------------------------------------------------- -#ifdef __GNUG__ - #pragma implementation "dcmemory.h" -#endif - // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" @@ -28,6 +24,8 @@ #pragma hdrstop #endif +#include "wx/dcmemory.h" + #ifndef WX_PRECOMP #include "wx/utils.h" #include "wx/log.h" @@ -35,8 +33,6 @@ #include "wx/msw/private.h" -#include "wx/dcmemory.h" - // ---------------------------------------------------------------------------- // wxWin macros // ---------------------------------------------------------------------------- @@ -51,23 +47,12 @@ IMPLEMENT_DYNAMIC_CLASS(wxMemoryDC, wxDC) // wxMemoryDC // ---------------------------------------------------------------------------- -wxMemoryDC::wxMemoryDC() -{ - CreateCompatible(NULL); - - Init(); -} - wxMemoryDC::wxMemoryDC(wxDC *dc) { wxCHECK_RET( dc, _T("NULL dc in wxMemoryDC ctor") ); - dc->BeginDrawing(); - CreateCompatible(dc); - dc->EndDrawing(); - Init(); } @@ -89,14 +74,14 @@ bool wxMemoryDC::CreateCompatible(wxDC *dc) m_hDC = (WXHDC)::CreateCompatibleDC(dc ? GetHdcOf(*dc) : NULL); // as we created the DC, we must delete it in the dtor - m_bOwnsDC = TRUE; + m_bOwnsDC = true; m_ok = m_hDC != 0; return m_ok; } -void wxMemoryDC::SelectObject(const wxBitmap& bitmap) +void wxMemoryDC::DoSelect( const wxBitmap& bitmap) { // select old bitmap out of the device context if ( m_oldBitmap ) @@ -104,7 +89,9 @@ void wxMemoryDC::SelectObject(const wxBitmap& bitmap) ::SelectObject(GetHdc(), (HBITMAP) m_oldBitmap); if ( m_selectedBitmap.Ok() ) { +#ifdef __WXDEBUG__ m_selectedBitmap.SetSelectedInto(NULL); +#endif m_selectedBitmap = wxNullBitmap; } } @@ -119,7 +106,9 @@ void wxMemoryDC::SelectObject(const wxBitmap& bitmap) if ( !hBmp ) return; +#ifdef __WXDEBUG__ m_selectedBitmap.SetSelectedInto(this); +#endif hBmp = (WXHBITMAP)::SelectObject(GetHdc(), (HBITMAP)hBmp); if ( !hBmp ) @@ -203,4 +192,3 @@ void wxMemoryDC::DoDrawRectangle(wxCoord x, wxCoord y, wxCoord width, wxCoord he wxDC::DoDrawRectangle(x, y, width, height); } } -