/////////////////////////////////////////////////////////////////////////////
// Name: wx/settings.h
-// Purpose: wxSystemSettingsBase class
+// Purpose: wxSystemSettings class
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c) Julian Smart and Markus Holzem
-// Licence: wxWindows licence
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_SETTINGS_H_BASE_
};
// possible values for wxSystemSettings::GetMetric() parameter
+//
+// NB: update the conversion table in msw/settings.cpp if you change the values
+// of the elements of this enum
enum wxSystemMetric
{
wxSYS_MOUSE_BUTTONS = 1,
};
// ----------------------------------------------------------------------------
-// wxSystemSettingsBase: defines the API for wxSystemSettings class
+// wxSystemSettingsNative: defines the API for wxSystemSettings class
// ----------------------------------------------------------------------------
// this is a namespace rather than a class: it has only non virtual static
// files (i.e. this is not a real base class as we can't override its virtual
// functions because it doesn't have any)
-#if 0
-class WXDLLEXPORT wxSystemSettingsBase
+class WXDLLEXPORT wxSystemSettingsNative
{
public:
// get a standard system colour
// return true if the port has certain feature
static bool HasFeature(wxSystemFeature index);
+};
+// ----------------------------------------------------------------------------
+// include the declaration of the real platform-dependent class
+// ----------------------------------------------------------------------------
+
+class wxSystemSettings : public wxSystemSettingsNative
+{
+public:
+#ifdef __WXUNIVERSAL__
+ // in wxUniversal we want to use the theme standard colours instead of the
+ // system ones, otherwuse wxSystemSettings is just the same as
+ // wxSystemSettingsNative
+ static wxColour GetColour(wxSystemColour index);
+#endif // __WXUNIVERSAL__
- // the backwards compatible versions, don't use these methods in the new
- // code!
+
+ // the backwards compatible versions of wxSystemSettingsNative functions,
+ // don't use these methods in the new code!
static wxColour GetSystemColour(int index)
{ return GetColour((wxSystemColour)index); }
static wxFont GetSystemFont(int index)
{ return GetFont((wxSystemFont)index); }
static int GetSystemMetric(int index)
{ return GetMetric((wxSystemMetric)index); }
- static bool GetCapability(int index)
- { return HasFeature((wxSystemFeature)index); }
};
-#endif
-
-// ----------------------------------------------------------------------------
-// include the declaration of the real platform-dependent class
-// ----------------------------------------------------------------------------
-
-#if defined(__WXMSW__)
- #include "wx/msw/settings.h"
-#elif defined(__WXMOTIF__)
- #include "wx/motif/settings.h"
-#elif defined(__WXGTK__)
- #include "wx/gtk/settings.h"
-#elif defined(__WXMGL__)
- #include "wx/mgl/settings.h"
-#elif defined(__WXMAC__)
- #include "wx/mac/settings.h"
-#elif defined(__WXPM__)
- #include "wx/os2/settings.h"
-#endif
#endif
// _WX_SETTINGS_H_BASE_