X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/432efcb004c8a7f4997acab1aa044c78226c36bb..6dc2e8233023023f7e3ced53be717bc61e9888ca:/include/wx/gtk/dcmemory.h diff --git a/include/wx/gtk/dcmemory.h b/include/wx/gtk/dcmemory.h index 0dbded2feb..a0fb9d6c23 100644 --- a/include/wx/gtk/dcmemory.h +++ b/include/wx/gtk/dcmemory.h @@ -7,29 +7,22 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifndef __GTKDCMEMORYH__ -#define __GTKDCMEMORYH__ +#ifndef _WX_GTK_DCMEMORY_H_ +#define _WX_GTK_DCMEMORY_H_ -#include "wx/defs.h" #include "wx/dcclient.h" -//----------------------------------------------------------------------------- -// classes -//----------------------------------------------------------------------------- - -class WXDLLIMPEXP_CORE wxMemoryDC; - //----------------------------------------------------------------------------- // wxMemoryDC //----------------------------------------------------------------------------- -class WXDLLIMPEXP_CORE wxMemoryDC : public wxWindowDC +class WXDLLIMPEXP_CORE wxMemoryDC : public wxWindowDC, public wxMemoryDCBase { public: - wxMemoryDC( const wxBitmap& bitmap = wxNullBitmap ); + wxMemoryDC() : wxWindowDC() { Init(); } + wxMemoryDC(wxBitmap& bitmap) : wxWindowDC() { Init(); SelectObject(bitmap); } wxMemoryDC( wxDC *dc ); // Create compatible DC virtual ~wxMemoryDC(); - virtual void SelectObject( const wxBitmap& bitmap ); // these get reimplemented for mono-bitmaps to behave // more like their Win32 couterparts. They now interpret @@ -42,15 +35,22 @@ public: virtual void SetTextBackground( const wxColour &col ); // implementation - virtual wxBitmap GetSelectedBitmap() const { return m_selected; } + wxBitmap GetSelectedBitmap() const { return m_selected; } wxBitmap m_selected; protected: void DoGetSize( int *width, int *height ) const; + virtual void DoSelect(const wxBitmap& bitmap); + virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const + { + wxBitmap bmp = GetSelectedBitmap(); + return subrect ? bmp.GetSubBitmap(*subrect) : bmp; + } + +private: + void Init(); DECLARE_DYNAMIC_CLASS(wxMemoryDC) }; -#endif - // __GTKDCMEMORYH__ - +#endif // _WX_GTK_DCMEMORY_H_