X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/de6185e212ebc37ff11ff70278e3c4f68419b097..0c1cc9483ecba053bc9a0983a4a8d48898e334f2:/src/mac/carbon/settings.cpp diff --git a/src/mac/carbon/settings.cpp b/src/mac/carbon/settings.cpp index 450b800996..58cecfb357 100644 --- a/src/mac/carbon/settings.cpp +++ b/src/mac/carbon/settings.cpp @@ -15,10 +15,9 @@ #ifndef WX_PRECOMP #include "wx/utils.h" + #include "wx/gdicmn.h" #endif -#include "wx/gdicmn.h" - #include "wx/mac/uma.h" // ---------------------------------------------------------------------------- @@ -31,21 +30,19 @@ wxColour wxSystemSettingsNative::GetColour(wxSystemColour index) { - int major, minor; wxColour resultColor; - RGBColor macRGB; ThemeBrush colorBrushID; - wxGetOsVersion( &major, &minor ); - switch ( index ) { + case wxSYS_COLOUR_WINDOW: + resultColor = *wxWHITE ; + break ; case wxSYS_COLOUR_SCROLLBAR : case wxSYS_COLOUR_BACKGROUND: case wxSYS_COLOUR_ACTIVECAPTION: case wxSYS_COLOUR_INACTIVECAPTION: case wxSYS_COLOUR_MENU: - case wxSYS_COLOUR_WINDOW: case wxSYS_COLOUR_WINDOWFRAME: case wxSYS_COLOUR_ACTIVEBORDER: case wxSYS_COLOUR_INACTIVEBORDER: @@ -55,17 +52,11 @@ wxColour wxSystemSettingsNative::GetColour(wxSystemColour index) break ; case wxSYS_COLOUR_LISTBOX : - if (major >= 10) - resultColor = *wxWHITE ; - else - resultColor = wxColor( 0xEE, 0xEE, 0xEE ); + resultColor = *wxWHITE ; break ; case wxSYS_COLOUR_BTNSHADOW: - if (major >= 10) - resultColor = wxColor( 0xBE, 0xBE, 0xBE ); - else - resultColor = wxColor( 0x44, 0x44, 0x44 ); + resultColor = wxColor( 0xBE, 0xBE, 0xBE ); break ; case wxSYS_COLOUR_BTNTEXT: @@ -78,16 +69,15 @@ wxColour wxSystemSettingsNative::GetColour(wxSystemColour index) break ; case wxSYS_COLOUR_HIGHLIGHT: - -#if 0 && (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3) + { +#if 0 // NB: enable this case as desired - colorBrushID = kThemeBrushAlternatePrimaryHighlightColor; + colorBrushID = kThemeBrushAlternatePrimaryHighlightColor; #else - colorBrushID = kThemeBrushPrimaryHighlightColor; + colorBrushID = kThemeBrushPrimaryHighlightColor; #endif - - GetThemeBrushAsColor( colorBrushID, 32, true, &macRGB ); - resultColor = wxColor( macRGB.red >> 8, macRGB.green >> 8, macRGB.blue >> 8 ); + resultColor = wxColor( wxMacCreateCGColorFromHITheme(colorBrushID) ); + } break ; case wxSYS_COLOUR_BTNHIGHLIGHT: @@ -104,21 +94,27 @@ wxColour wxSystemSettingsNative::GetColour(wxSystemColour index) break ; case wxSYS_COLOUR_HIGHLIGHTTEXT : -#if 0 && (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3) +#if 0 // NB: enable this case as desired resultColor = *wxWHITE ; #else - GetThemeBrushAsColor( kThemeBrushPrimaryHighlightColor, 32, true, &macRGB ); - if ((macRGB.red + macRGB.green + macRGB.blue) == 0) - resultColor = *wxWHITE ; - else - resultColor = *wxBLACK ; + { + wxColour highlightcolor( wxMacCreateCGColorFromHITheme(kThemeBrushPrimaryHighlightColor) ); + if ((highlightcolor.Red() + highlightcolor.Green() + highlightcolor.Blue() ) == 0) + resultColor = *wxWHITE ; + else + resultColor = *wxBLACK ; + } #endif break ; case wxSYS_COLOUR_INFOBK : + // we don't have a way to detect tooltip color, so use the + // standard value used at least on 10.4: + resultColor = wxColour( 0xFF, 0xFF, 0xD3 ) ; + break ; case wxSYS_COLOUR_APPWORKSPACE: - resultColor = *wxWHITE ; + resultColor = wxColor( 0x80, 0x80, 0x80 ); ; break ; case wxSYS_COLOUR_HOTLIGHT: @@ -230,6 +226,14 @@ int wxSystemSettingsNative::GetMetric(wxSystemMetric index, wxWindow* WXUNUSED(w // TODO: case wxSYS_NETWORK_PRESENT: // TODO: case wxSYS_SHOW_SOUNDS: + case wxSYS_DCLICK_MSEC: +#ifdef __LP64__ + // default on mac is 30 ticks, we shouldn't really use wxSYS_DCLICK_MSEC anyway + // but rather rely on the 'click-count' by the system delivered in a mouse event + return 500; +#else + return (int)(GetDblTime() * 1000. / 60.); +#endif default: // unsupported metric break;