]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/gdicmn.cpp
Fixed Unicode breakage I caused
[wxWidgets.git] / src / common / gdicmn.cpp
index 91cdb4ae8c989d0e2a79e5495d21895d5c44d4df..48cd85ace6a243f918f0d92fd6c489d3dcb3085b 100644 (file)
 #endif
 #endif
 
+#ifdef __WXX11__
+#include "X11/Xlib.h"
+#endif
+
 IMPLEMENT_CLASS(wxColourDatabase, wxList)
 IMPLEMENT_DYNAMIC_CLASS(wxFontList, wxList)
 IMPLEMENT_DYNAMIC_CLASS(wxPenList, wxList)
@@ -370,20 +374,23 @@ wxColour *wxColourDatabase::FindColour(const wxString& colour)
 #ifdef __WXMOTIF__
     Display *display = XtDisplay((Widget) wxTheApp->GetTopLevelWidget()) ;
 #endif
-#ifdef __XVIEW__
-    Xv_Screen screen = xv_get(xview_server, SERVER_NTH_SCREEN, 0);
-    Xv_opaque root_window = xv_get(screen, XV_ROOT);
-    Display *display = (Display *)xv_get(root_window, XV_DISPLAY);
+#ifdef __WXX11__
+    Display* display = (Display*) wxGetDisplay();
 #endif
-
     /* MATTHEW: [4] Use wxGetMainColormap */
     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);
 
@@ -442,17 +449,30 @@ void wxInitializeStockObjects ()
 #else
 #endif
 */
-#if defined(__WXPM__) || defined(__WXMAC__)
+#if defined(__WXMAC__)
   static const int sizeFont = 12;
   wxNORMAL_FONT = new wxFont (sizeFont, wxMODERN, wxNORMAL, wxNORMAL);
+#elif defined(__WXPM__)
+  static const int sizeFont = 12;
 #else
   wxNORMAL_FONT = new wxFont(wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT));
   static const int sizeFont = wxNORMAL_FONT->GetPointSize();
 #endif
 
+#if defined(__WXPM__)
+  /*
+  // 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 */
+  wxITALIC_FONT = new wxFont (sizeFont, wxROMAN, wxITALIC, wxNORMAL);
+  wxSWISS_FONT = new wxFont (sizeFont, wxSWISS, wxNORMAL, wxNORMAL); /* Helv */
+#else
   wxSMALL_FONT = new wxFont (sizeFont - 2, wxSWISS, wxNORMAL, wxNORMAL);
   wxITALIC_FONT = new wxFont (sizeFont, wxROMAN, wxITALIC, wxNORMAL);
   wxSWISS_FONT = new wxFont (sizeFont, wxSWISS, wxNORMAL, wxNORMAL);
+#endif
 
   wxRED_PEN = new wxPen (wxT("RED"), 1, wxSOLID);
   wxCYAN_PEN = new wxPen (wxT("CYAN"), 1, wxSOLID);