]>
Commit | Line | Data |
---|---|---|
1 | ///////////////////////////////////////////////////////////////////////////// | |
2 | // Name: dcclient.h | |
3 | // Purpose: interface of wxClientDC and wxPaintDC | |
4 | // Author: wxWidgets team | |
5 | // RCS-ID: $Id$ | |
6 | // Licence: wxWindows license | |
7 | ///////////////////////////////////////////////////////////////////////////// | |
8 | ||
9 | /** | |
10 | @class wxPaintDC | |
11 | @wxheader{dcclient.h} | |
12 | ||
13 | A wxPaintDC must be constructed if an application wishes to paint on the | |
14 | client area of a window from within an EVT_PAINT() event handler. This | |
15 | should normally be constructed as a temporary stack object; don't store a | |
16 | wxPaintDC object. If you have an EVT_PAINT() handler, you @e must create a | |
17 | wxPaintDC object within it even if you don't actually use it. | |
18 | ||
19 | Using wxPaintDC within your EVT_PAINT() handler is important because it | |
20 | automatically sets the clipping area to the damaged area of the window. | |
21 | Attempts to draw outside this area do not appear. | |
22 | ||
23 | To draw on a window from outside your EVT_PAINT() handler, construct a | |
24 | wxClientDC object. | |
25 | ||
26 | To draw on the whole window including decorations, construct a wxWindowDC | |
27 | object (Windows only). | |
28 | ||
29 | @library{wxcore} | |
30 | @category{dc} | |
31 | ||
32 | @see wxDC, wxClientDC, wxMemoryDC, wxWindowDC, wxScreenDC | |
33 | */ | |
34 | class wxPaintDC : public wxWindowDC | |
35 | { | |
36 | public: | |
37 | /** | |
38 | Constructor. Pass a pointer to the window on which you wish to paint. | |
39 | */ | |
40 | wxPaintDC(wxWindow* window); | |
41 | }; | |
42 | ||
43 | ||
44 | ||
45 | /** | |
46 | @class wxClientDC | |
47 | @wxheader{dcclient.h} | |
48 | ||
49 | A wxClientDC must be constructed if an application wishes to paint on the | |
50 | client area of a window from outside an EVT_PAINT() handler. This should | |
51 | normally be constructed as a temporary stack object; don't store a | |
52 | wxClientDC object. | |
53 | ||
54 | To draw on a window from within an EVT_PAINT() handler, construct a | |
55 | wxPaintDC object instead. | |
56 | ||
57 | To draw on the whole window including decorations, construct a wxWindowDC | |
58 | object (Windows only). | |
59 | ||
60 | @library{wxcore} | |
61 | @category{dc} | |
62 | ||
63 | @see wxDC, wxMemoryDC, wxPaintDC, wxWindowDC, wxScreenDC | |
64 | */ | |
65 | class wxClientDC : public wxWindowDC | |
66 | { | |
67 | public: | |
68 | /** | |
69 | Constructor. Pass a pointer to the window on which you wish to paint. | |
70 | */ | |
71 | wxClientDC(wxWindow* window); | |
72 | }; | |
73 | ||
74 | ||
75 | ||
76 | /** | |
77 | @class wxWindowDC | |
78 | @wxheader{dcclient.h} | |
79 | ||
80 | A wxWindowDC must be constructed if an application wishes to paint on the | |
81 | whole area of a window (client and decorations). This should normally be | |
82 | constructed as a temporary stack object; don't store a wxWindowDC object. | |
83 | ||
84 | To draw on a window from inside an EVT_PAINT() handler, construct a | |
85 | wxPaintDC object instead. | |
86 | ||
87 | To draw on the client area of a window from outside an EVT_PAINT() handler, | |
88 | construct a wxClientDC object. | |
89 | ||
90 | @library{wxcore} | |
91 | @category{dc} | |
92 | ||
93 | @see wxDC, wxMemoryDC, wxPaintDC, wxClientDC, wxScreenDC | |
94 | */ | |
95 | class wxWindowDC : public wxDC | |
96 | { | |
97 | public: | |
98 | /** | |
99 | Constructor. Pass a pointer to the window on which you wish to paint. | |
100 | */ | |
101 | wxWindowDC(wxWindow* window); | |
102 | }; | |
103 |