X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d285d708a229ece6ad606a460bcbf048c65d252b..b5df4fc722412fe5f6764c490925b26293c5f662:/src/msw/settings.cpp diff --git a/src/msw/settings.cpp b/src/msw/settings.cpp index a621cc73e2..13dbf8e2d2 100644 --- a/src/msw/settings.cpp +++ b/src/msw/settings.cpp @@ -5,8 +5,8 @@ // Modified by: // Created: 04/01/98 // RCS-ID: $Id$ -// Copyright: (c) Julian Smart and Markus Holzem -// Licence: wxWindows license +// Copyright: (c) Julian Smart +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// // ============================================================================ @@ -40,6 +40,10 @@ #include "wx/module.h" #include "wx/fontutil.h" +#ifdef __WXWINCE__ // for SM_CXCURSOR and SM_CYCURSOR +#include "wx/msw/wince/missing.h" +#endif // __WXWINCE__ + // ---------------------------------------------------------------------------- // private classes // ---------------------------------------------------------------------------- @@ -200,7 +204,11 @@ wxColour wxSystemSettingsNative::GetColour(wxSystemColour index) if ( !hasCol ) { +#ifdef __WXWINCE__ + colSys = ::GetSysColor(index|SYS_COLOR_INDEX_FLAG); +#else colSys = ::GetSysColor(index); +#endif } return wxRGBToColour(colSys); @@ -246,6 +254,16 @@ wxFont wxCreateFontFromStockObject(int index) wxFont wxSystemSettingsNative::GetFont(wxSystemFont index) { +#ifndef __WXWINCE__ + // this one is special: we don't get it from GetStockObject() + if ( index == wxSYS_ICONTITLE_FONT ) + { + LOGFONT lf; + SystemParametersInfo(SPI_GETICONTITLELOGFONT, sizeof(lf), &lf, 0); + return wxCreateFontFromLogFont(&lf); + } +#endif // __WXWINCE__ + // wxWindow ctor calls GetSystemFont(wxSYS_DEFAULT_GUI_FONT) so we're // called fairly often - this is why we cache this particular font bool isDefaultRequested = index == wxSYS_DEFAULT_GUI_FONT; @@ -279,7 +297,7 @@ wxFont wxSystemSettingsNative::GetFont(wxSystemFont index) static const int gs_metricsMap[] = { -1, // wxSystemMetric enums start at 1, so give a dummy value for pos 0. -#ifdef __WIN32__ +#if defined(__WIN32__) && !defined(__WXWINCE__) SM_CMOUSEBUTTONS, #else -1, @@ -297,17 +315,25 @@ static const int gs_metricsMap[] = SM_CXEDGE, SM_CYEDGE, #else - -1, -1, -1, -1 + -1, -1, -1, -1, #endif SM_CXHSCROLL, SM_CYHSCROLL, +#ifdef SM_CXHTHUMB SM_CXHTHUMB, +#else + -1, +#endif SM_CXICON, SM_CYICON, SM_CXICONSPACING, SM_CYICONSPACING, +#ifdef SM_CXHTHUMB SM_CXMIN, SM_CYMIN, +#else + -1, -1, +#endif SM_CXSCREEN, SM_CYSCREEN, @@ -317,13 +343,17 @@ static const int gs_metricsMap[] = SM_CXSMICON, SM_CYSMICON, #else - -1, -1, -1, -1 + -1, -1, -1, -1, #endif SM_CYHSCROLL, SM_CXVSCROLL, SM_CXVSCROLL, SM_CYVSCROLL, +#ifdef SM_CYVTHUMB SM_CYVTHUMB, +#else + -1, +#endif SM_CYCAPTION, SM_CYMENU, #if defined(__WIN32__) && defined(SM_NETWORK) @@ -331,13 +361,21 @@ static const int gs_metricsMap[] = #else -1, #endif +#ifdef SM_PENWINDOWS SM_PENWINDOWS, +#else + -1, +#endif #if defined(__WIN32__) && defined(SM_SHOWSOUNDS) SM_SHOWSOUNDS, #else -1, #endif +#ifdef SM_SWAPBUTTON SM_SWAPBUTTON, +#else + -1 +#endif }; // Get a system metric, e.g. scrollbar size