]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/gdicmn.cpp
Fix for Unicode conversion.
[wxWidgets.git] / src / common / gdicmn.cpp
index 2210dc3485353d2f091cce653ca86b03f7302f2c..c2e6de24c236fbca3f7fa1a0df09ea6e31ba4a72 100644 (file)
 #include "X11/Xlib.h"
 #endif
 
+#ifdef __WXMAC__
+#include "wx/mac/private.h"
+#include "wx/mac/uma.h"
+#endif
 IMPLEMENT_CLASS(wxColourDatabase, wxList)
 IMPLEMENT_DYNAMIC_CLASS(wxFontList, wxList)
 IMPLEMENT_DYNAMIC_CLASS(wxPenList, wxList)
@@ -381,9 +385,15 @@ wxColour *wxColourDatabase::FindColour(const wxString& colour)
     if (!XParseColor(display, (Colormap) wxTheApp->GetMainColormap((WXDisplay*) display), colour,&xcolour))
       return NULL;
 
+#if wxUSE_NANOX
+    unsigned char r = (unsigned char)(xcolour.red);
+    unsigned char g = (unsigned char)(xcolour.green);
+    unsigned char b = (unsigned char)(xcolour.blue);
+#else
     unsigned char r = (unsigned char)(xcolour.red >> 8);
     unsigned char g = (unsigned char)(xcolour.green >> 8);
     unsigned char b = (unsigned char)(xcolour.blue >> 8);
+#endif
 
     wxColour *col = new wxColour(r, g, b);
     Append(colour, col);
@@ -444,10 +454,19 @@ void wxInitializeStockObjects ()
 #endif
 */
 #if defined(__WXMAC__)
-  static const int sizeFont = 12;
-  wxNORMAL_FONT = new wxFont (sizeFont, wxMODERN, wxNORMAL, wxNORMAL);
+    int sizeFont = 12;
+
+    FontFamilyID fontId ;
+    Str255 fontName ;
+    SInt16 fontSize ;
+    Style fontStyle ;
+
+       GetThemeFont(kThemeSystemFont , GetApplicationScript() , fontName , &fontSize , &fontStyle ) ;
+       sizeFont = fontSize ;
+    p2cstrcpy( (char*) fontName , fontName ) ;
+    wxSWISS_FONT = new wxFont (fontSize, wxSWISS, wxNORMAL, wxNORMAL , false , fontName );
 #elif defined(__WXPM__)
-  static const int sizeFont = 12;
+  static const int sizeFont = 10;
 #else
   wxNORMAL_FONT = new wxFont(wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT));
   static const int sizeFont = wxNORMAL_FONT->GetPointSize();
@@ -458,10 +477,16 @@ void wxInitializeStockObjects ()
   // Basic OS/2 has a fairly limited number of fonts and these are as good
   // as I can do to get something that looks halfway "wx" normal
   */
-  wxNORMAL_FONT = new wxFont (sizeFont, wxMODERN, wxNORMAL, wxNORMAL); /* System VIO */
-  wxSMALL_FONT = new wxFont (sizeFont - 4, wxMODERN, wxNORMAL, wxNORMAL); /* System VIO */
+  wxNORMAL_FONT = new wxFont (sizeFont, wxMODERN, wxNORMAL, wxBOLD);
+  wxSMALL_FONT = new wxFont (sizeFont - 2, wxSWISS, wxNORMAL, wxNORMAL); /* Helv */
   wxITALIC_FONT = new wxFont (sizeFont, wxROMAN, wxITALIC, wxNORMAL);
   wxSWISS_FONT = new wxFont (sizeFont, wxSWISS, wxNORMAL, wxNORMAL); /* Helv */
+#elif defined(__WXMAC__)
+    wxNORMAL_FONT = new wxFont (sizeFont, wxMODERN, wxNORMAL, wxNORMAL);
+    wxITALIC_FONT = new wxFont (sizeFont, wxROMAN, wxITALIC, wxNORMAL);
+       GetThemeFont(kThemeSmallSystemFont , GetApplicationScript() , fontName , &fontSize , &fontStyle ) ;
+    p2cstrcpy( (char*) fontName , fontName ) ;
+    wxSMALL_FONT = new wxFont (fontSize, wxSWISS, wxNORMAL, wxNORMAL , false , fontName );
 #else
   wxSMALL_FONT = new wxFont (sizeFont - 2, wxSWISS, wxNORMAL, wxNORMAL);
   wxITALIC_FONT = new wxFont (sizeFont, wxROMAN, wxITALIC, wxNORMAL);