]> git.saurik.com Git - wxWidgets.git/blame - interface/dcscreen.h
execute the usual cleanup code from EVT_END_SESSION handler under MSW, otherwise...
[wxWidgets.git] / interface / dcscreen.h
CommitLineData
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
11 @wxheader{dcscreen.h}
7c913512 12
23324ae1
FM
13 A wxScreenDC can be used to paint on the screen.
14 This should normally be constructed as a temporary stack object; don't store
15 a wxScreenDC object.
7c913512 16
23324ae1
FM
17 @library{wxcore}
18 @category{dc}
7c913512 19
e54c96f1 20 @see wxDC, wxMemoryDC, wxPaintDC, wxClientDC, wxWindowDC
23324ae1
FM
21*/
22class wxScreenDC : public wxDC
23{
24public:
25 /**
26 Constructor.
27 */
28 wxScreenDC();
29
30 /**
31 Use this in conjunction with StartDrawingOnTop().
23324ae1
FM
32 This function destroys the temporary window created to implement on-top drawing
33 (X only).
34 */
35 bool EndDrawingOnTop();
36
37 //@{
38 /**
39 Use this in conjunction with EndDrawingOnTop() to
40 ensure that drawing to the screen occurs on top of existing windows. Without
41 this,
42 some window systems (such as X) only allow drawing to take place underneath
43 other windows.
23324ae1
FM
44 By using the first form of this function, an application is specifying that
45 the area that will be drawn on coincides with the given window.
23324ae1
FM
46 By using the second form, an application can specify an area of the screen
47 which is to be drawn on. If @NULL is passed, the whole screen is available.
23324ae1
FM
48 It is recommended that an area of the screen is specified because with large
49 regions,
50 flickering effects are noticeable when destroying the temporary transparent
51 window used
52 to implement this feature.
23324ae1
FM
53 You might use this pair of functions when implementing a drag feature, for
54 example
55 as in the wxSplitterWindow implementation.
3c4f71cc 56
23324ae1 57 @remarks This function is probably obsolete since the X implementations
4cc4bfaf
FM
58 allow drawing directly on the screen now. However, the
59 fact that this function allows the screen to be
60 refreshed afterwards, may be useful to some
61 applications.
23324ae1
FM
62 */
63 bool StartDrawingOnTop(wxWindow* window);
4cc4bfaf 64 bool StartDrawingOnTop(wxRect* rect = NULL);
23324ae1
FM
65 //@}
66};
e54c96f1 67