X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/77ffb5937e89927b621128789401db8921fe580f..9e06a15fc2f2144f7161dc813941e5c5ccd41132:/include/wx/gtk/dcmemory.h diff --git a/include/wx/gtk/dcmemory.h b/include/wx/gtk/dcmemory.h index c56ee584e4..f9e4fcf664 100644 --- a/include/wx/gtk/dcmemory.h +++ b/include/wx/gtk/dcmemory.h @@ -4,38 +4,39 @@ // Author: Robert Roebling // RCS-ID: $Id$ // Copyright: (c) 1998 Robert Roebling -// Licence: wxWidgets licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// +#ifndef _WX_GTK_DCMEMORY_H_ +#define _WX_GTK_DCMEMORY_H_ -#ifndef __GTKDCMEMORYH__ -#define __GTKDCMEMORYH__ - -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface -#endif - -#include "wx/defs.h" #include "wx/dcclient.h" -//----------------------------------------------------------------------------- -// classes -//----------------------------------------------------------------------------- - -class wxMemoryDC; - //----------------------------------------------------------------------------- // wxMemoryDC //----------------------------------------------------------------------------- -class wxMemoryDC : public wxWindowDC + +#if wxUSE_NEW_DC +class WXDLLIMPEXP_CORE wxGTKMemoryImplDC : public wxGTKWindowImplDC, public wxMemoryImplDCBase +#else +#define wxGTKMemoryImplDC wxMemoryDC +class WXDLLIMPEXP_CORE wxMemoryDC : public wxWindowDC, public wxMemoryDCBase +#endif { public: + +#if wxUSE_NEW_DC + wxGTKMemoryImplDC( wxMemoryDC *owner ); + wxGTKMemoryImplDC( wxMemoryDC *owner, wxBitmap& bitmap ); + wxGTKMemoryImplDC( wxMemoryDC *owner, wxDC *dc ); +#else wxMemoryDC(); - wxMemoryDC( wxDC *dc ); // Create compatible DC - ~wxMemoryDC(); - virtual void SelectObject( const wxBitmap& bitmap ); - void DoGetSize( int *width, int *height ) const; + wxMemoryDC(wxBitmap& bitmap); + wxMemoryDC( wxDC *dc ); +#endif + + virtual ~wxGTKMemoryImplDC(); // these get reimplemented for mono-bitmaps to behave // more like their Win32 couterparts. They now interpret @@ -48,12 +49,25 @@ public: virtual void SetTextBackground( const wxColour &col ); // implementation - wxBitmap m_selected; + wxBitmap GetSelectedBitmap() const { return m_selected; } + +protected: + // overridden from wxImplDC + virtual void DoGetSize( int *width, int *height ) const; + virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const; + +public: + // overridden from wxMemoryImplDCBase + virtual void DoSelect(const wxBitmap& bitmap); + virtual const wxBitmap& DoGetSelectedBitmap() const; + virtual wxBitmap& DoGetSelectedBitmap(); + wxBitmap m_selected; + private: - DECLARE_DYNAMIC_CLASS(wxMemoryDC) -}; + void Init(); -#endif - // __GTKDCMEMORYH__ + DECLARE_ABSTRACT_CLASS(wxGTKMemoryImplDC) +}; +#endif // _WX_GTK_DCMEMORY_H_