X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/abc4685ebdf322c5695717eb334ee4f5b3bd352c..66c2bf7b1d9326fb650acfaae22ec50528cfbf7c:/include/wx/dcbuffer.h?ds=sidebyside diff --git a/include/wx/dcbuffer.h b/include/wx/dcbuffer.h index 203f7cd1a3..f4d27c7fb8 100644 --- a/include/wx/dcbuffer.h +++ b/include/wx/dcbuffer.h @@ -4,7 +4,6 @@ // Author: Ron Lee // Modified by: Vadim Zeitlin (refactored, added bg preservation) // Created: 16/03/02 -// RCS-ID: $Id$ // Copyright: (c) Ron Lee // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -112,14 +111,10 @@ private: // common part of Init()s void InitCommon(wxDC *dc, int style) { - wxASSERT_MSG( !m_dc, _T("wxBufferedDC already initialised") ); + wxASSERT_MSG( !m_dc, wxT("wxBufferedDC already initialised") ); m_dc = dc; m_style = style; - - // inherit the same layout direction as the original DC - if (dc && dc->IsOk()) - SetLayoutDirection(dc->GetLayoutDirection()); } // check that the bitmap is valid and use it @@ -138,8 +133,10 @@ private: // the buffering style int m_style; + wxSize m_area; + DECLARE_DYNAMIC_CLASS(wxBufferedDC) - DECLARE_NO_COPY_CLASS(wxBufferedDC) + wxDECLARE_NO_COPY_CLASS(wxBufferedDC); }; @@ -199,7 +196,7 @@ private: wxPaintDC m_paintdc; DECLARE_ABSTRACT_CLASS(wxBufferedPaintDC) - DECLARE_NO_COPY_CLASS(wxBufferedPaintDC) + wxDECLARE_NO_COPY_CLASS(wxBufferedPaintDC); }; @@ -216,9 +213,6 @@ private: #define wxAutoBufferedPaintDCBase wxBufferedPaintDC #endif - -#ifdef __WXDEBUG__ - class WXDLLIMPEXP_CORE wxAutoBufferedPaintDC : public wxAutoBufferedPaintDCBase { public: @@ -226,30 +220,18 @@ public: wxAutoBufferedPaintDC(wxWindow* win) : wxAutoBufferedPaintDCBase(win) { - TestWinStyle(win); + wxASSERT_MSG( win->GetBackgroundStyle() == wxBG_STYLE_PAINT, + "You need to call SetBackgroundStyle(wxBG_STYLE_PAINT) in ctor, " + "and also, if needed, paint the background in wxEVT_PAINT handler." + ); } virtual ~wxAutoBufferedPaintDC() { } private: - - void TestWinStyle(wxWindow* win) - { - // Help the user to get the double-buffering working properly. - wxASSERT_MSG( win->GetBackgroundStyle() == wxBG_STYLE_CUSTOM, - wxT("In constructor, you need to call SetBackgroundStyle(wxBG_STYLE_CUSTOM), ") - wxT("and also, if needed, paint the background manually in the paint event handler.")); - } - - DECLARE_NO_COPY_CLASS(wxAutoBufferedPaintDC) + wxDECLARE_NO_COPY_CLASS(wxAutoBufferedPaintDC); }; -#else // !__WXDEBUG__ - -// In release builds, just use typedef -typedef wxAutoBufferedPaintDCBase wxAutoBufferedPaintDC; - -#endif // Check if the window is natively double buffered and will return a wxPaintDC