X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ab7ce33c563651f790f99d64ee56727706047ae3..cf516c2bb2b8bc462f6f0cb852fb2fc2d86c9c66:/include/wx/gtk/dcmemory.h diff --git a/include/wx/gtk/dcmemory.h b/include/wx/gtk/dcmemory.h index a4493740d1..ff470015c8 100644 --- a/include/wx/gtk/dcmemory.h +++ b/include/wx/gtk/dcmemory.h @@ -7,35 +7,24 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// +#ifndef _WX_GTK_DCMEMORY_H_ +#define _WX_GTK_DCMEMORY_H_ -#ifndef __GTKDCMEMORYH__ -#define __GTKDCMEMORYH__ - -#if defined(__GNUG__) && !defined(__APPLE__) -#pragma interface -#endif - -#include "wx/defs.h" -#include "wx/dcclient.h" - -//----------------------------------------------------------------------------- -// classes -//----------------------------------------------------------------------------- - -class wxMemoryDC; +#include "wx/dcmemory.h" +#include "wx/gtk/dcclient.h" //----------------------------------------------------------------------------- -// wxMemoryDC +// wxMemoryDCImpl //----------------------------------------------------------------------------- -class wxMemoryDC : public wxWindowDC +class WXDLLIMPEXP_CORE wxMemoryDCImpl : public wxWindowDCImpl { public: - wxMemoryDC(); - wxMemoryDC( wxDC *dc ); // Create compatible DC - ~wxMemoryDC(); - virtual void SelectObject( const wxBitmap& bitmap ); - void DoGetSize( int *width, int *height ) const; + wxMemoryDCImpl( wxMemoryDC *owner ); + wxMemoryDCImpl( wxMemoryDC *owner, wxBitmap& bitmap ); + wxMemoryDCImpl( wxMemoryDC *owner, wxDC *dc ); + + virtual ~wxMemoryDCImpl(); // these get reimplemented for mono-bitmaps to behave // more like their Win32 couterparts. They now interpret @@ -43,16 +32,28 @@ public: // and everything else as drawing 1. virtual void SetPen( const wxPen &pen ); virtual void SetBrush( const wxBrush &brush ); + virtual void SetBackground( const wxBrush &brush ); virtual void SetTextForeground( const wxColour &col ); virtual void SetTextBackground( const wxColour &col ); - // implementation - wxBitmap m_selected; + // overridden from wxDCImpl + virtual void DoGetSize( int *width, int *height ) const; + virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const; + + // overridden for wxMemoryDC Impl + virtual void DoSelect(const wxBitmap& bitmap); + + virtual const wxBitmap& GetSelectedBitmap() const; + virtual wxBitmap& GetSelectedBitmap(); private: - DECLARE_DYNAMIC_CLASS(wxMemoryDC) + wxBitmap m_selected; + + void Init(); + + DECLARE_ABSTRACT_CLASS(wxMemoryDCImpl) }; -#endif - // __GTKDCMEMORYH__ +#endif + // _WX_GTK_DCMEMORY_H_