]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/display.h
wxMGL revitalised with OpenWatcom.
[wxWidgets.git] / include / wx / msw / display.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: display.h
3 // Purpose: wxDisplay class customization for WXMSW
4 // Author: Royce Mitchell III
5 // Modified by:
6 // Created: 06/21/02
7 // RCS-ID: $Id$
8 // Copyright: (c) wxWidgets team
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_MSW_DISPLAY_H_
13 #define _WX_MSW_DISPLAY_H_
14
15 class WXDLLEXPORT wxDisplay : public wxDisplayBase
16 {
17 public:
18 // this function may be called *before* using any other wxDisplay methods
19 // to tell it to use DirectX functions instead of the standard Windows ones
20 static void UseDirectX(bool useDX);
21
22 // create the display object for the given physical display
23 wxDisplay(size_t index = 0);
24
25 virtual ~wxDisplay();
26
27 // implement base class pure virtuals
28 virtual bool IsOk() const;
29 virtual wxRect GetGeometry() const;
30 virtual wxString GetName() const;
31
32 virtual wxArrayVideoModes
33 GetModes(const wxVideoMode& mode = wxVideoMode()) const;
34 virtual wxVideoMode GetCurrentMode() const;
35 virtual bool ChangeMode(const wxVideoMode& mode = wxVideoMode());
36
37 virtual bool IsPrimary() const;
38
39 private:
40 // get the display name to use with EnumDisplaySettings()
41 wxString GetNameForEnumSettings() const;
42
43 // we have different implementations using DirectDraw and without it
44 wxArrayVideoModes DoGetModesDirectX(const wxVideoMode& modeMatch) const;
45 bool DoChangeModeDirectX(const wxVideoMode& mode);
46
47 wxArrayVideoModes DoGetModesWindows(const wxVideoMode& modeMatch) const;
48 bool DoChangeModeWindows(const wxVideoMode& mode);
49
50
51 DECLARE_NO_COPY_CLASS(wxDisplay)
52 };
53
54 #endif // _WX_MSW_DISPLAY_H_