]> git.saurik.com Git - wxWidgets.git/blame - interface/wx/display.h
Allow to not create wxPaintDC in EVT_PAINT handler in wxMSW.
[wxWidgets.git] / interface / wx / display.h
CommitLineData
23324ae1
FM
1/////////////////////////////////////////////////////////////////////////////
2// Name: display.h
e54c96f1 3// Purpose: interface of wxDisplay
23324ae1
FM
4// Author: wxWidgets team
5// RCS-ID: $Id$
6// Licence: wxWindows license
7/////////////////////////////////////////////////////////////////////////////
8
9/**
10 @class wxDisplay
7c913512 11
23324ae1 12 Determines the sizes and locations of displays connected to the system.
7c913512 13
23324ae1 14 @library{wxcore}
3c99e2fd 15 @category{cfg}
7c913512 16
e54c96f1 17 @see wxClientDisplayRect(), wxDisplaySize(), wxDisplaySizeMM()
23324ae1 18*/
7c913512 19class wxDisplay
23324ae1
FM
20{
21public:
22 /**
bc85d676
BP
23 Constructor, setting up a wxDisplay instance with the specified
24 display.
3c4f71cc 25
7c913512 26 @param index
bc85d676
BP
27 The index of the display to use. This must be non-negative and
28 lower than the value returned by GetCount().
23324ae1 29 */
76e9224e 30 wxDisplay(unsigned int index = 0);
23324ae1
FM
31
32 /**
33 Destructor.
34 */
35 ~wxDisplay();
36
37 /**
bc85d676
BP
38 Changes the video mode of this display to the mode specified in the
39 mode parameter.
40
41 If wxDefaultVideoMode is passed in as the mode parameter, the defined
42 behaviour is that wxDisplay will reset the video mode to the default
43 mode used by the display. On Windows, the behavior is normal. However,
44 there are differences on other platforms. On Unix variations using X11
45 extensions it should behave as defined, but some irregularities may
46 occur.
47
48 On wxMac passing in wxDefaultVideoMode as the mode parameter does
49 nothing. This happens because carbon no longer has access to
50 @c DMUseScreenPrefs(), an undocumented function that changed the video
51 mode to the system default by using the system's "scrn" resource.
23324ae1
FM
52 */
53 bool ChangeMode(const wxVideoMode& mode = wxDefaultVideoMode);
54
55 /**
bc85d676
BP
56 Returns the client area of the display. The client area is the part of
57 the display available for the normal (non full screen) windows, usually
58 it is the same as GetGeometry() but it could be less if there is a
59 taskbar (or equivalent) on this display.
23324ae1 60 */
328f5751 61 wxRect GetClientArea() const;
23324ae1
FM
62
63 /**
64 Returns the number of connected displays.
65 */
382f12e4 66 static unsigned int GetCount();
23324ae1
FM
67
68 /**
69 Returns the current video mode that this display is in.
70 */
328f5751 71 wxVideoMode GetCurrentMode() const;
23324ae1 72
23324ae1 73 /**
bc85d676 74 Returns the index of the display on which the given point lies, or
23324ae1 75 @c wxNOT_FOUND if the point is not on any connected display.
3c4f71cc 76
7c913512 77 @param pt
4cc4bfaf 78 The point to locate.
23324ae1
FM
79 */
80 static int GetFromPoint(const wxPoint& pt);
81
82 /**
83 Returns the index of the display on which the given window lies.
bc85d676
BP
84
85 If the window is on more than one display it gets the display that
86 overlaps the window the most.
87
23324ae1 88 Returns @c wxNOT_FOUND if the window is not on any connected display.
3c4f71cc 89
7c913512 90 @param win
4cc4bfaf 91 The window to locate.
23324ae1
FM
92 */
93 static int GetFromWindow(const wxWindow* win);
94
95 /**
bc85d676
BP
96 Returns the bounding rectangle of the display whose index was passed to
97 the constructor.
98
99 @see GetClientArea(), wxDisplaySize()
23324ae1 100 */
328f5751 101 wxRect GetGeometry() const;
23324ae1
FM
102
103 /**
bc85d676
BP
104 Fills and returns an array with all the video modes that are supported
105 by this display, or video modes that are supported by this display and
106 match the mode parameter (if mode is not wxDefaultVideoMode).
23324ae1 107 */
328f5751 108 wxArrayVideoModes GetModes(const wxVideoMode& mode = wxDefaultVideoMode) const;
23324ae1
FM
109
110 /**
bc85d676 111 Returns the display's name. A name is not available on all platforms.
23324ae1 112 */
328f5751 113 wxString GetName() const;
23324ae1
FM
114
115 /**
bc85d676
BP
116 Returns @true if the display is the primary display. The primary
117 display is the one whose index is 0.
23324ae1 118 */
adaaa686 119 bool IsPrimary() const;
23324ae1 120};
e54c96f1 121