]> git.saurik.com Git - wxWidgets.git/blame - interface/wx/dcscreen.h
don't place NULL pointers in the GDK window array in GTKGetWindow()
[wxWidgets.git] / interface / wx / 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
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*/
20class wxScreenDC : public wxDC
21{
22public:
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