]>
Commit | Line | Data |
---|---|---|
23324ae1 FM |
1 | ///////////////////////////////////////////////////////////////////////////// |
2 | // Name: dcscreen.h | |
e54c96f1 | 3 | // Purpose: interface of wxScreenDC |
23324ae1 FM |
4 | // Author: wxWidgets team |
5 | // RCS-ID: $Id$ | |
6 | // Licence: wxWindows license | |
7 | ///////////////////////////////////////////////////////////////////////////// | |
8 | ||
9 | /** | |
10 | @class wxScreenDC | |
7c913512 | 11 | |
3a7fb603 BP |
12 | A wxScreenDC can be used to paint on the screen. This should normally be |
13 | constructed as a temporary stack object; don't store a wxScreenDC object. | |
7c913512 | 14 | |
23324ae1 FM |
15 | @library{wxcore} |
16 | @category{dc} | |
7c913512 | 17 | |
e54c96f1 | 18 | @see wxDC, wxMemoryDC, wxPaintDC, wxClientDC, wxWindowDC |
23324ae1 FM |
19 | */ |
20 | class wxScreenDC : public wxDC | |
21 | { | |
22 | public: | |
23 | /** | |
24 | Constructor. | |
25 | */ | |
26 | wxScreenDC(); | |
27 | ||
28 | /** | |
29 | Use this in conjunction with StartDrawingOnTop(). | |
3a7fb603 BP |
30 | |
31 | This function destroys the temporary window created to implement on-top | |
32 | drawing (X only). | |
23324ae1 | 33 | */ |
adaaa686 | 34 | static bool EndDrawingOnTop(); |
23324ae1 | 35 | |
23324ae1 | 36 | /** |
3a7fb603 BP |
37 | Use this in conjunction with EndDrawingOnTop() to ensure that drawing |
38 | to the screen occurs on top of existing windows. Without this, some | |
39 | window systems (such as X) only allow drawing to take place underneath | |
23324ae1 | 40 | other windows. |
3a7fb603 BP |
41 | |
42 | This version of StartDrawingOnTop() is used to specify that the area | |
43 | that will be drawn on coincides with the given window. It is | |
44 | recommended that an area of the screen is specified with | |
45 | StartDrawingOnTop(wxRect*) because with large regions, flickering | |
46 | effects are noticeable when destroying the temporary transparent window | |
47 | used to implement this feature. | |
48 | ||
49 | You might use this function when implementing a drag feature, for | |
50 | example as in the wxSplitterWindow implementation. | |
3c4f71cc | 51 | |
23324ae1 | 52 | @remarks This function is probably obsolete since the X implementations |
3a7fb603 BP |
53 | allow drawing directly on the screen now. However, the fact |
54 | that this function allows the screen to be refreshed | |
55 | afterwards, may be useful to some applications. | |
23324ae1 | 56 | */ |
adaaa686 | 57 | static bool StartDrawingOnTop(wxWindow* window); |
3a7fb603 BP |
58 | /** |
59 | Use this in conjunction with EndDrawingOnTop() to ensure that drawing | |
60 | to the screen occurs on top of existing windows. Without this, some | |
61 | window systems (such as X) only allow drawing to take place underneath | |
62 | other windows. | |
63 | ||
64 | This version of StartDrawingOnTop() is used to specify an area of the | |
65 | screen which is to be drawn on. If @NULL is passed, the whole screen is | |
66 | available. It is recommended that an area of the screen is specified | |
67 | with this function rather than with StartDrawingOnTop(wxWindow*), | |
68 | because with large regions, flickering effects are noticeable when | |
69 | destroying the temporary transparent window used to implement this | |
70 | feature. | |
71 | ||
72 | You might use this function when implementing a drag feature, for | |
73 | example as in the wxSplitterWindow implementation. | |
74 | ||
75 | @remarks This function is probably obsolete since the X implementations | |
76 | allow drawing directly on the screen now. However, the fact | |
77 | that this function allows the screen to be refreshed | |
78 | afterwards, may be useful to some applications. | |
79 | */ | |
adaaa686 | 80 | static bool StartDrawingOnTop(wxRect* rect = NULL); |
23324ae1 | 81 | }; |
e54c96f1 | 82 |