X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4bc67cc550bcd9d5f93f88ae22a4f6ac7fafb5f7..33f3e2b31ed781ba1446b49ec6d3e226c0a5c652:/include/wx/gtk/dcmemory.h diff --git a/include/wx/gtk/dcmemory.h b/include/wx/gtk/dcmemory.h index 10d0f2905f..576c5c53af 100644 --- a/include/wx/gtk/dcmemory.h +++ b/include/wx/gtk/dcmemory.h @@ -1,49 +1,60 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: dcmemory.h +// Name: wx/gtk/dcmemory.h // Purpose: // Author: Robert Roebling // RCS-ID: $Id$ // Copyright: (c) 1998 Robert Roebling -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// +#ifndef _WX_GTK_DCMEMORY_H_ +#define _WX_GTK_DCMEMORY_H_ -#ifndef __GTKDCMEMORYH__ -#define __GTKDCMEMORYH__ - -#ifdef __GNUG__ -#pragma interface -#endif - -#include "wx/defs.h" -#include "wx/dcclient.h" +#include "wx/dcmemory.h" +#include "wx/gtk/dcclient.h" //----------------------------------------------------------------------------- -// classes +// wxMemoryDCImpl //----------------------------------------------------------------------------- -class wxMemoryDC; +class WXDLLIMPEXP_CORE wxMemoryDCImpl : public wxWindowDCImpl +{ +public: + 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 + // wxWHITE, wxWHITE_BRUSH and wxWHITE_PEN as drawing 0 + // 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 ); + + // overridden from wxDCImpl + virtual void DoGetSize( int *width, int *height ) const; + virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const; + virtual void* GetHandle() const; + + // overridden for wxMemoryDC Impl + virtual void DoSelect(const wxBitmap& bitmap); -//----------------------------------------------------------------------------- -// wxMemoryDC -//----------------------------------------------------------------------------- + virtual const wxBitmap& GetSelectedBitmap() const; + virtual wxBitmap& GetSelectedBitmap(); -class wxMemoryDC: public wxWindowDC -{ - DECLARE_DYNAMIC_CLASS(wxMemoryDC) +private: + wxBitmap m_selected; -public: - wxMemoryDC(); - wxMemoryDC( wxDC *dc ); // Create compatible DC - ~wxMemoryDC(); - virtual void SelectObject( const wxBitmap& bitmap ); - void GetSize( int *width, int *height ) const; + void Init(); - // implementation - - wxBitmap m_selected; + DECLARE_ABSTRACT_CLASS(wxMemoryDCImpl) }; #endif - // __GTKDCMEMORYH__ + // _WX_GTK_DCMEMORY_H_