X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9b0b5ba76e7311091f473e5591cb74c05f6912d6..a85ad1db05e7d940383fdf75671f1aa69dacbb42:/src/cocoa/settings.mm diff --git a/src/cocoa/settings.mm b/src/cocoa/settings.mm index 168ab4884c..0f6ffb05f0 100644 --- a/src/cocoa/settings.mm +++ b/src/cocoa/settings.mm @@ -9,17 +9,20 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#include -#ifndef WX_PRECOMP -#endif +#include "wx/wxprec.h" #include "wx/settings.h" -#include "wx/gdicmn.h" -#include "wx/utils.h" + +#ifndef WX_PRECOMP + #include "wx/utils.h" + #include "wx/gdicmn.h" +#endif #include "wx/cocoa/autorelease.h" +#include "wx/cocoa/private/fontfactory.h" #import +#import // ---------------------------------------------------------------------------- // wxSystemSettingsNative @@ -105,8 +108,10 @@ wxColour wxSystemSettingsNative::GetColour(wxSystemColour index) wxFont wxSystemSettingsNative::GetFont(wxSystemFont index) { -// return a nonworking font object, crash from wxInitializeStockObjects - return wxFont(); + // Return the system font for now + { wxAutoNSAutoreleasePool pool; + return wxCocoaFontFactory::InstanceForNSFont([NSFont systemFontOfSize:0.0], false); + } switch (index) { case wxSYS_ANSI_VAR_FONT : @@ -125,7 +130,7 @@ wxFont wxSystemSettingsNative::GetFont(wxSystemFont index) return *wxNORMAL_FONT ; } ; break ; - + } return *wxNORMAL_FONT; } @@ -141,7 +146,7 @@ int wxSystemSettingsNative::GetMetric(wxSystemMetric index, wxWindow *WXUNUSED(w { case wxSYS_MOUSE_BUTTONS: return 2; // we emulate a two button mouse (ctrl + click = right button ) - + // TODO case wxSYS_BORDER_X: // TODO case wxSYS_BORDER_Y: // TODO case wxSYS_CURSOR_X: @@ -159,7 +164,7 @@ int wxSystemSettingsNative::GetMetric(wxSystemMetric index, wxWindow *WXUNUSED(w return 16; case wxSYS_HTHUMB_X: return 16; - + // TODO case wxSYS_ICON_X: // TODO case wxSYS_ICON_Y: // TODO case wxSYS_ICONSPACING_X: @@ -172,7 +177,7 @@ int wxSystemSettingsNative::GetMetric(wxSystemMetric index, wxWindow *WXUNUSED(w // TODO case wxSYS_FRAMESIZE_Y: // TODO case wxSYS_SMALLICON_X: // TODO case wxSYS_SMALLICON_Y: - + case wxSYS_HSCROLL_Y: return 16; case wxSYS_VSCROLL_X: @@ -183,19 +188,19 @@ int wxSystemSettingsNative::GetMetric(wxSystemMetric index, wxWindow *WXUNUSED(w return 16; case wxSYS_VTHUMB_Y: return 16; - + // TODO case wxSYS_CAPTION_Y: // TODO case wxSYS_MENU_Y: // TODO case wxSYS_NETWORK_PRESENT: - + case wxSYS_PENWINDOWS_PRESENT: return 0; - + // TODO case wxSYS_SHOW_SOUNDS: case wxSYS_SWAP_BUTTONS: return 0; - + default: return -1; // unsupported metric } @@ -206,11 +211,11 @@ bool wxSystemSettingsNative::HasFeature(wxSystemFeature index) { switch (index) { - case wxSYS_CAN_ICONIZE_FRAME: + case wxSYS_CAN_ICONIZE_FRAME: case wxSYS_CAN_DRAW_FRAME_DECORATIONS: - return TRUE; - + return true; + default: - return FALSE; + return false; } }