1 /////////////////////////////////////////////////////////////////////////////
4 // Author: Robert Roebling
6 // Copyright: (c) 1998 Robert Roebling
7 // Licence: wxWindows licence
8 /////////////////////////////////////////////////////////////////////////////
10 #ifndef __GTKDCMEMORYH__
11 #define __GTKDCMEMORYH__
14 #include "wx/dcclient.h"
16 //-----------------------------------------------------------------------------
18 //-----------------------------------------------------------------------------
20 class WXDLLIMPEXP_CORE wxMemoryDC
;
22 //-----------------------------------------------------------------------------
24 //-----------------------------------------------------------------------------
26 class WXDLLIMPEXP_CORE wxMemoryDC
: public wxWindowDC
, public wxMemoryDCBase
29 wxMemoryDC() : wxWindowDC() { Init(); }
30 wxMemoryDC(wxBitmap
& bitmap
) : wxWindowDC() { Init(); SelectObject(bitmap
); }
31 wxMemoryDC( wxDC
*dc
); // Create compatible DC
32 virtual ~wxMemoryDC();
34 // these get reimplemented for mono-bitmaps to behave
35 // more like their Win32 couterparts. They now interpret
36 // wxWHITE, wxWHITE_BRUSH and wxWHITE_PEN as drawing 0
37 // and everything else as drawing 1.
38 virtual void SetPen( const wxPen
&pen
);
39 virtual void SetBrush( const wxBrush
&brush
);
40 virtual void SetBackground( const wxBrush
&brush
);
41 virtual void SetTextForeground( const wxColour
&col
);
42 virtual void SetTextBackground( const wxColour
&col
);
45 virtual wxBitmap
GetSelectedBitmap() const { return m_selected
; }
49 void DoGetSize( int *width
, int *height
) const;
50 virtual void DoSelect(const wxBitmap
& bitmap
);
54 virtual wxBitmap
DoGetAsBitmap(const wxRect
*subrect
) const
55 { return subrect
== NULL
? GetSelectedBitmap() : GetSelectedBitmap().GetSubBitmap(*subrect
); }
57 DECLARE_DYNAMIC_CLASS(wxMemoryDC
)