]> git.saurik.com Git - wxWidgets.git/blame_incremental - src/mgl/settings.cpp
Merge in from trunk r64802 - r68625
[wxWidgets.git] / src / mgl / settings.cpp
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: src/mgl/settings.cpp
3// Author: Vaclav Slavik, Robert Roebling
4// Id: $Id$
5// Copyright: (c) 2001-2002 SciTech Software, Inc. (www.scitechsoft.com)
6// Licence: wxWindows licence
7/////////////////////////////////////////////////////////////////////////////
8
9// For compilers that support precompilation, includes "wx.h".
10#include "wx/wxprec.h"
11
12#ifdef __BORLANDC__
13 #pragma hdrstop
14#endif
15
16#include "wx/settings.h"
17
18#ifndef WX_PRECOMP
19 #include "wx/colour.h"
20 #include "wx/font.h"
21 #include "wx/gdicmn.h"
22 #include "wx/module.h"
23#endif
24
25// ----------------------------------------------------------------------------
26// global data
27// ----------------------------------------------------------------------------
28
29static wxFont *gs_fontDefault = NULL;
30
31class wxSystemSettingsModule : public wxModule
32{
33public:
34 virtual bool OnInit() { return true; }
35 virtual void OnExit()
36 {
37 wxDELETE(gs_fontDefault);
38 }
39
40private:
41 DECLARE_DYNAMIC_CLASS(wxSystemSettingsModule)
42};
43
44IMPLEMENT_DYNAMIC_CLASS(wxSystemSettingsModule, wxModule)
45
46
47
48wxColour wxSystemSettingsNative::GetColour(wxSystemColour WXUNUSED(index))
49{
50 // overridden by wxSystemSettings::GetColour in wxUniversal
51 return wxColour(0,0,0);
52}
53
54wxFont wxSystemSettingsNative::GetFont(wxSystemFont index)
55{
56 switch (index)
57 {
58 case wxSYS_OEM_FIXED_FONT:
59 case wxSYS_ANSI_FIXED_FONT:
60 case wxSYS_SYSTEM_FIXED_FONT:
61 {
62 return *wxNORMAL_FONT;
63 }
64 case wxSYS_ANSI_VAR_FONT:
65 case wxSYS_SYSTEM_FONT:
66 case wxSYS_DEVICE_DEFAULT_FONT:
67 case wxSYS_DEFAULT_GUI_FONT:
68 {
69 if ( !gs_fontDefault )
70 gs_fontDefault = new wxFont(10, wxSWISS, wxNORMAL, wxNORMAL, false, "Arial");
71 return *gs_fontDefault;
72 }
73 default:
74 {
75 }
76 }
77
78 return wxNullFont;
79}
80
81int wxSystemSettingsNative::GetMetric(wxSystemMetric index, wxWindow* WXUNUSED(win))
82{
83 int val;
84
85 switch (index)
86 {
87 case wxSYS_SCREEN_X:
88 wxDisplaySize(&val, NULL);
89 return val;
90 case wxSYS_SCREEN_Y:
91 wxDisplaySize(NULL, &val);
92 return val;
93 default:
94 {
95 }
96 }
97
98 return -1; // unsupported metric
99}
100
101bool wxSystemSettingsNative::HasFeature(wxSystemFeature index)
102{
103 switch (index)
104 {
105 case wxSYS_CAN_ICONIZE_FRAME:
106 case wxSYS_CAN_DRAW_FRAME_DECORATIONS:
107 case wxSYS_TABLET_PRESENT:
108 return false;
109
110 default:
111 wxFAIL_MSG( wxT("unknown feature") );
112 }
113
114 return false;
115}