]> git.saurik.com Git - wxWidgets.git/blob - include/wx/gtk/dcmemory.h
moved wxCollapsiblePane to core from adv
[wxWidgets.git] / include / wx / gtk / dcmemory.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: dcmemory.h
3 // Purpose:
4 // Author: Robert Roebling
5 // RCS-ID: $Id$
6 // Copyright: (c) 1998 Robert Roebling
7 // Licence: wxWindows licence
8 /////////////////////////////////////////////////////////////////////////////
9
10 #ifndef __GTKDCMEMORYH__
11 #define __GTKDCMEMORYH__
12
13 #include "wx/defs.h"
14 #include "wx/dcclient.h"
15
16 //-----------------------------------------------------------------------------
17 // classes
18 //-----------------------------------------------------------------------------
19
20 class WXDLLIMPEXP_CORE wxMemoryDC;
21
22 //-----------------------------------------------------------------------------
23 // wxMemoryDC
24 //-----------------------------------------------------------------------------
25
26 class WXDLLIMPEXP_CORE wxMemoryDC : public wxWindowDC, public wxMemoryDCBase
27 {
28 public:
29 wxMemoryDC() : wxWindowDC() { Init(); }
30 wxMemoryDC(wxBitmap& bitmap) : wxWindowDC() { Init(); SelectObject(bitmap); }
31 wxMemoryDC( wxDC *dc ); // Create compatible DC
32 virtual ~wxMemoryDC();
33
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 );
43
44 // implementation
45 virtual wxBitmap GetSelectedBitmap() const { return m_selected; }
46 wxBitmap m_selected;
47
48 protected:
49 void DoGetSize( int *width, int *height ) const;
50 virtual void DoSelect(const wxBitmap& bitmap);
51
52 private:
53 void Init();
54 virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const
55 { return subrect == NULL ? GetSelectedBitmap() : GetSelectedBitmap().GetSubBitmap(*subrect); }
56
57 DECLARE_DYNAMIC_CLASS(wxMemoryDC)
58 };
59
60 #endif
61 // __GTKDCMEMORYH__
62