/////////////////////////////////////////////////////////////////////////////
-// Name: settings.h
-// Author: Vaclav Slavik
+// Name: src/mgl/settings.cpp
+// Author: Vaclav Slavik, Robert Roebling
// Id: $Id$
-// Copyright: (c) 2001 SciTech Software, Inc. (www.scitechsoft.com)
-// Licence: wxWindows licence
+// Copyright: (c) 2001-2002 SciTech Software, Inc. (www.scitechsoft.com)
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-
-#ifdef __GNUG__
-#pragma implementation "settings.h"
-#endif
-
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#endif
#include "wx/settings.h"
-#include "wx/colour.h"
-#include "wx/font.h"
-#include "wx/module.h"
+
+#ifndef WX_PRECOMP
+ #include "wx/colour.h"
+ #include "wx/font.h"
+ #include "wx/gdicmn.h"
+ #include "wx/module.h"
+#endif
// ----------------------------------------------------------------------------
// global data
class wxSystemSettingsModule : public wxModule
{
public:
- virtual bool OnInit() { return TRUE; }
+ virtual bool OnInit() { return true; }
virtual void OnExit()
{
delete gs_fontDefault;
-wxColour wxSystemSettings::GetSystemColour(int WXUNUSED(index))
+wxColour wxSystemSettingsNative::GetColour(wxSystemColour WXUNUSED(index))
{
- // FIXME_MGL
+ // overridden by wxSystemSettings::GetColour in wxUniversal
return wxColour(0,0,0);
}
-wxFont wxSystemSettings::GetSystemFont(int index)
+wxFont wxSystemSettingsNative::GetFont(wxSystemFont index)
{
- bool isDefaultRequested = (index == wxSYS_DEFAULT_GUI_FONT);
-
- if ( isDefaultRequested && gs_fontDefault )
+ switch (index)
{
- return *gs_fontDefault;
+ case wxSYS_OEM_FIXED_FONT:
+ case wxSYS_ANSI_FIXED_FONT:
+ case wxSYS_SYSTEM_FIXED_FONT:
+ {
+ return *wxNORMAL_FONT;
+ }
+ case wxSYS_ANSI_VAR_FONT:
+ case wxSYS_SYSTEM_FONT:
+ case wxSYS_DEVICE_DEFAULT_FONT:
+ case wxSYS_DEFAULT_GUI_FONT:
+ {
+ if ( !gs_fontDefault )
+ gs_fontDefault = new wxFont(10, wxSWISS, wxNORMAL, wxNORMAL, false, "Arial");
+ return *gs_fontDefault;
+ }
+ default:
+ {
+ }
}
- // FIXME_MGL
- wxFont font(10, wxSWISS, wxNORMAL, wxNORMAL, FALSE, "Arial");
+ return wxNullFont;
+}
+
+int wxSystemSettingsNative::GetMetric(wxSystemMetric index, wxWindow* WXUNUSED(win))
+{
+ int val;
- if ( isDefaultRequested )
+ switch (index)
{
- // if we got here it means we hadn't cached it yet - do now
- gs_fontDefault = new wxFont(font);
+ case wxSYS_SCREEN_X:
+ wxDisplaySize(&val, NULL);
+ return val;
+ case wxSYS_SCREEN_Y:
+ wxDisplaySize(NULL, &val);
+ return val;
+ default:
+ {
+ }
}
- return font;
+ return -1; // unsupported metric
}
-int wxSystemSettings::GetSystemMetric(int WXUNUSED(index))
-{
- // FIXME_MGL
- return 1;
-}
-
-bool wxSystemSettings::GetCapability(int index)
+bool wxSystemSettingsNative::HasFeature(wxSystemFeature index)
{
switch (index)
{
- case wxSYS_CAN_ICONIZE_FRAME:
- return FALSE; break;
+ case wxSYS_CAN_ICONIZE_FRAME:
case wxSYS_CAN_DRAW_FRAME_DECORATIONS:
- return FALSE; break;
+ case wxSYS_TABLET_PRESENT:
+ return false;
+
default:
- return FALSE;
+ wxFAIL_MSG( _T("unknown feature") );
}
+
+ return false;
}