X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/371a5b4e62eb415107e045588f614fa49e866e78..bfa78c63b9045c2a594ca6f04dc26a70c21f5f42:/include/wx/settings.h diff --git a/include/wx/settings.h b/include/wx/settings.h index 168db483f2..d9c2dd4049 100644 --- a/include/wx/settings.h +++ b/include/wx/settings.h @@ -15,6 +15,8 @@ #include "wx/colour.h" #include "wx/font.h" +class WXDLLIMPEXP_FWD_CORE wxWindow; + // possible values for wxSystemSettings::GetFont() parameter // // NB: wxMSW assumes that they have the same values as the parameters of @@ -26,9 +28,19 @@ enum wxSystemFont wxSYS_ANSI_VAR_FONT, wxSYS_SYSTEM_FONT, wxSYS_DEVICE_DEFAULT_FONT, + + // don't use: this is here just to make the values of enum elements + // coincide with the corresponding MSW constants wxSYS_DEFAULT_PALETTE, + + // don't use: MSDN says that this is a stock object provided only + // for compatibility with 16-bit Windows versions earlier than 3.0! wxSYS_SYSTEM_FIXED_FONT, - wxSYS_DEFAULT_GUI_FONT + + wxSYS_DEFAULT_GUI_FONT, + + // this was just a temporary aberration, do not use it any more + wxSYS_ICONTITLE_FONT = wxSYS_DEFAULT_GUI_FONT }; // possible values for wxSystemSettings::GetColour() parameter @@ -38,8 +50,7 @@ enum wxSystemFont enum wxSystemColour { wxSYS_COLOUR_SCROLLBAR, - wxSYS_COLOUR_BACKGROUND, - wxSYS_COLOUR_DESKTOP = wxSYS_COLOUR_BACKGROUND, + wxSYS_COLOUR_DESKTOP, wxSYS_COLOUR_ACTIVECAPTION, wxSYS_COLOUR_INACTIVECAPTION, wxSYS_COLOUR_MENU, @@ -54,16 +65,11 @@ enum wxSystemColour wxSYS_COLOUR_HIGHLIGHT, wxSYS_COLOUR_HIGHLIGHTTEXT, wxSYS_COLOUR_BTNFACE, - wxSYS_COLOUR_3DFACE = wxSYS_COLOUR_BTNFACE, wxSYS_COLOUR_BTNSHADOW, - wxSYS_COLOUR_3DSHADOW = wxSYS_COLOUR_BTNSHADOW, wxSYS_COLOUR_GRAYTEXT, wxSYS_COLOUR_BTNTEXT, wxSYS_COLOUR_INACTIVECAPTIONTEXT, wxSYS_COLOUR_BTNHIGHLIGHT, - wxSYS_COLOUR_BTNHILIGHT = wxSYS_COLOUR_BTNHIGHLIGHT, - wxSYS_COLOUR_3DHIGHLIGHT = wxSYS_COLOUR_BTNHIGHLIGHT, - wxSYS_COLOUR_3DHILIGHT = wxSYS_COLOUR_BTNHIGHLIGHT, wxSYS_COLOUR_3DDKSHADOW, wxSYS_COLOUR_3DLIGHT, wxSYS_COLOUR_INFOTEXT, @@ -74,11 +80,22 @@ enum wxSystemColour wxSYS_COLOUR_GRADIENTINACTIVECAPTION, wxSYS_COLOUR_MENUHILIGHT, wxSYS_COLOUR_MENUBAR, + wxSYS_COLOUR_LISTBOXTEXT, + wxSYS_COLOUR_LISTBOXHIGHLIGHTTEXT, + + wxSYS_COLOUR_MAX, - wxSYS_COLOUR_MAX + // synonyms + wxSYS_COLOUR_BACKGROUND = wxSYS_COLOUR_DESKTOP, + wxSYS_COLOUR_3DFACE = wxSYS_COLOUR_BTNFACE, + wxSYS_COLOUR_3DSHADOW = wxSYS_COLOUR_BTNSHADOW, + wxSYS_COLOUR_BTNHILIGHT = wxSYS_COLOUR_BTNHIGHLIGHT, + wxSYS_COLOUR_3DHIGHLIGHT = wxSYS_COLOUR_BTNHIGHLIGHT, + wxSYS_COLOUR_3DHILIGHT = wxSYS_COLOUR_BTNHIGHLIGHT, + wxSYS_COLOUR_FRAMEBK = wxSYS_COLOUR_BTNFACE }; -// possible values for wxSystemSettings::GetMetric() parameter +// possible values for wxSystemSettings::GetMetric() index parameter // // NB: update the conversion table in msw/settings.cpp if you change the values // of the elements of this enum @@ -120,14 +137,16 @@ enum wxSystemMetric wxSYS_NETWORK_PRESENT, wxSYS_PENWINDOWS_PRESENT, wxSYS_SHOW_SOUNDS, - wxSYS_SWAP_BUTTONS + wxSYS_SWAP_BUTTONS, + wxSYS_DCLICK_MSEC }; // possible values for wxSystemSettings::HasFeature() parameter enum wxSystemFeature { wxSYS_CAN_DRAW_FRAME_DECORATIONS = 1, - wxSYS_CAN_ICONIZE_FRAME + wxSYS_CAN_ICONIZE_FRAME, + wxSYS_TABLET_PRESENT }; // values for different screen designs @@ -152,7 +171,7 @@ enum wxSystemScreenType // files (i.e. this is not a real base class as we can't override its virtual // functions because it doesn't have any) -class WXDLLEXPORT wxSystemSettingsNative +class WXDLLIMPEXP_CORE wxSystemSettingsNative { public: // get a standard system colour @@ -162,7 +181,7 @@ public: static wxFont GetFont(wxSystemFont index); // get a system-dependent metric - static int GetMetric(wxSystemMetric index); + static int GetMetric(wxSystemMetric index, wxWindow * win = NULL); // return true if the port has certain feature static bool HasFeature(wxSystemFeature index); @@ -172,14 +191,18 @@ public: // include the declaration of the real platform-dependent class // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxSystemSettings : public wxSystemSettingsNative +class WXDLLIMPEXP_CORE 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 + // system ones, otherwise wxSystemSettings is just the same as // wxSystemSettingsNative static wxColour GetColour(wxSystemColour index); + + // some metrics are toolkit-dependent and provided by wxUniv, some are + // lowlevel + static int GetMetric(wxSystemMetric index, wxWindow *win = NULL); #endif // __WXUNIVERSAL__ // Get system screen design (desktop, pda, ..) used for @@ -192,15 +215,6 @@ public: // Value static wxSystemScreenType ms_screen; - - // 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); } }; #endif