]> git.saurik.com Git - wxWidgets.git/blob - include/wx/os2/dcclient.h
making wxHTML 8.3 compliant
[wxWidgets.git] / include / wx / os2 / dcclient.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: dcclient.h
3 // Purpose: wxClientDC class
4 // Author: Julian Smart
5 // Modified by:
6 // Created: 01/02/97
7 // RCS-ID: $Id$
8 // Copyright: (c) Julian Smart and Markus Holzem
9 // Licence: wxWindows license
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_DCCLIENT_H_
13 #define _WX_DCCLIENT_H_
14
15 // ----------------------------------------------------------------------------
16 // headers
17 // ----------------------------------------------------------------------------
18
19 #ifdef __GNUG__
20 #pragma interface "dcclient.h"
21 #endif
22
23 #include "wx/dc.h"
24 #include "wx/dynarray.h"
25
26 // ----------------------------------------------------------------------------
27 // array types
28 // ----------------------------------------------------------------------------
29
30 // this one if used by wxPaintDC only
31 struct WXDLLEXPORT wxPaintDCInfo;
32
33 WX_DECLARE_OBJARRAY(wxPaintDCInfo, wxArrayDCInfo);
34
35 // ----------------------------------------------------------------------------
36 // DC classes
37 // ----------------------------------------------------------------------------
38
39 class WXDLLEXPORT wxWindowDC : public wxDC
40 {
41 DECLARE_DYNAMIC_CLASS(wxWindowDC)
42
43 public:
44 wxWindowDC();
45
46 // Create a DC corresponding to the whole window
47 wxWindowDC(wxWindow *win);
48
49 virtual ~wxWindowDC();
50
51 // PM specific stuff
52 HPS m_hPS;
53 private:
54 HAB m_hab;
55 SIZEL m_PageSize;
56 };
57
58 class WXDLLEXPORT wxClientDC : public wxWindowDC
59 {
60 DECLARE_DYNAMIC_CLASS(wxClientDC)
61
62 public:
63 wxClientDC();
64
65 // Create a DC corresponding to the client area of the window
66 wxClientDC(wxWindow *win);
67
68 virtual ~wxClientDC();
69 };
70
71 class WXDLLEXPORT wxPaintDC : public wxWindowDC
72 {
73 DECLARE_DYNAMIC_CLASS(wxPaintDC)
74
75 public:
76 wxPaintDC();
77
78 // Create a DC corresponding for painting the window in OnPaint()
79 wxPaintDC(wxWindow *win);
80
81 virtual ~wxPaintDC();
82
83 protected:
84 static wxArrayDCInfo ms_cache;
85
86 // find the entry for this DC in the cache (keyed by the window)
87 wxPaintDCInfo *FindInCache(size_t *index = NULL) const;
88 };
89
90 #endif
91 // _WX_DCCLIENT_H_