/////////////////////////////////////////////////////////////////////////////
-// Name: src/mac/carbon/settings.cpp
+// Name: src/osx/carbon/settings.cpp
// Purpose: wxSettings
// Author: Stefan Csomor
// Modified by:
#include "wx/gdicmn.h"
#endif
-#include "wx/mac/uma.h"
+#include "wx/osx/private.h"
+#include "wx/fontenum.h"
// ----------------------------------------------------------------------------
// wxSystemSettingsNative
wxColour wxSystemSettingsNative::GetColour(wxSystemColour index)
{
wxColour resultColor;
+#if wxOSX_USE_COCOA_OR_CARBON
ThemeBrush colorBrushID;
+#endif
switch ( index )
{
case wxSYS_COLOUR_WINDOW:
- resultColor = *wxWHITE ;
+#if wxOSX_USE_COCOA_OR_CARBON
+ resultColor = wxColour(wxMacCreateCGColorFromHITheme( 15 /* kThemeBrushDocumentWindowBackground */ )) ;
+#else
+ resultColor = *wxWHITE;
+#endif
break ;
case wxSYS_COLOUR_SCROLLBAR :
case wxSYS_COLOUR_BACKGROUND:
case wxSYS_COLOUR_INACTIVEBORDER:
case wxSYS_COLOUR_BTNFACE:
case wxSYS_COLOUR_MENUBAR:
- resultColor = wxColor( 0xDD, 0xDD, 0xDD );
+#if wxOSX_USE_COCOA_OR_CARBON
+ resultColor = wxColour(wxMacCreateCGColorFromHITheme( 3 /* kThemeBrushDialogBackgroundActive */));
+#else
+ resultColor = wxColour( 0xBE, 0xBE, 0xBE ) ;
+#endif
break ;
case wxSYS_COLOUR_LISTBOX :
break ;
case wxSYS_COLOUR_BTNSHADOW:
- resultColor = wxColor( 0xBE, 0xBE, 0xBE );
+ resultColor = wxColour( 0xBE, 0xBE, 0xBE );
break ;
case wxSYS_COLOUR_BTNTEXT:
case wxSYS_COLOUR_CAPTIONTEXT:
case wxSYS_COLOUR_INFOTEXT:
case wxSYS_COLOUR_INACTIVECAPTIONTEXT:
+ case wxSYS_COLOUR_LISTBOXTEXT:
resultColor = *wxBLACK;
break ;
case wxSYS_COLOUR_HIGHLIGHT:
{
+#if wxOSX_USE_COCOA_OR_CARBON
#if 0
// NB: enable this case as desired
colorBrushID = kThemeBrushAlternatePrimaryHighlightColor;
#else
- colorBrushID = kThemeBrushPrimaryHighlightColor;
+ colorBrushID = -3 /* kThemeBrushPrimaryHighlightColor */;
+#endif
+ resultColor = wxColour( wxMacCreateCGColorFromHITheme(colorBrushID) );
+#else
+ resultColor = wxColor( 0xCC, 0xCC, 0xFF );
#endif
- resultColor = wxColor( wxMacCreateCGColorFromHITheme(colorBrushID) );
}
break ;
break ;
case wxSYS_COLOUR_HIGHLIGHTTEXT :
-#if 0
- // NB: enable this case as desired
- resultColor = *wxWHITE ;
-#else
+ case wxSYS_COLOUR_LISTBOXHIGHLIGHTTEXT :
+#if wxOSX_USE_COCOA_OR_CARBON
{
- wxColour highlightcolor( wxMacCreateCGColorFromHITheme(kThemeBrushPrimaryHighlightColor) );
+ wxColour highlightcolor( wxMacCreateCGColorFromHITheme(-3 /* kThemeBrushPrimaryHighlightColor */) );
if ((highlightcolor.Red() + highlightcolor.Green() + highlightcolor.Blue() ) == 0)
resultColor = *wxWHITE ;
else
resultColor = *wxBLACK ;
}
+#else
+ resultColor = *wxWHITE ;
#endif
break ;
// case wxSYS_COLOUR_MAX:
default:
resultColor = *wxWHITE;
- // wxCHECK_MSG( index >= wxSYS_COLOUR_MAX, false, _T("unknown system colour index") );
+ // wxCHECK_MSG( index >= wxSYS_COLOUR_MAX, false, wxT("unknown system colour index") );
break ;
}
+ //wxASSERT(resultColor.IsOk());
+
return resultColor;
}
wxFont wxSystemSettingsNative::GetFont(wxSystemFont index)
{
+ wxFont font;
+
switch (index)
{
case wxSYS_ANSI_VAR_FONT :
case wxSYS_SYSTEM_FONT :
case wxSYS_DEVICE_DEFAULT_FONT :
case wxSYS_DEFAULT_GUI_FONT :
- return *wxSMALL_FONT ;
+ font = *wxSMALL_FONT ;
break ;
default :
+ font = *wxNORMAL_FONT ;
break ;
}
- return *wxNORMAL_FONT;
+ //wxASSERT(font.IsOk() && wxFontEnumerator::IsValidFacename(font.GetFaceName()));
+
+ return font;
}
// ----------------------------------------------------------------------------
// 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
+#if wxOSX_USE_CARBON
+ return (int)(GetDblTime() * 1000. / 60.);
+#else
+ // 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