]> git.saurik.com Git - wxWidgets.git/blobdiff - src/x11/dcclient.cpp
support mac on little endian systems
[wxWidgets.git] / src / x11 / dcclient.cpp
index 286a7018ca4a5092a4e9a6dbeda4ae32cb6c3721..deec508b32b72ed2016b57942547a33b41a24619 100644 (file)
 
 #include "wx/x11/private.h"
 
-#include <math.h>
+#include "wx/math.h"
 
 #if wxUSE_UNICODE
 #include "glib.h"
 #include "pango/pangox.h"
-#include "pango/pangoxft.h"
+#ifdef HAVE_PANGO_XFT
+    #include "pango/pangoxft.h"
+#endif
 
 #include "pango_x.cpp"
 #endif
@@ -1668,13 +1670,11 @@ wxCoord wxWindowDC::GetCharWidth() const
 #if wxUSE_UNICODE
     PangoLayout *layout = pango_layout_new( m_context );
 
-    if (!m_fontdesc)
-    {
-        char *crash = NULL;
-        *crash = 0;
-    }
-
-    pango_layout_set_font_description(layout, m_fontdesc);
+    if (m_fontdesc)
+       pango_layout_set_font_description(layout, m_fontdesc);
+    else
+       pango_layout_set_font_description(layout, this->GetFont().GetNativeFontInfo()->description);
+       
     pango_layout_set_text(layout, "H", 1 );
     int w,h;
     pango_layout_get_pixel_size(layout, &w, &h);
@@ -1704,14 +1704,11 @@ wxCoord wxWindowDC::GetCharHeight() const
 #if wxUSE_UNICODE
     PangoLayout *layout = pango_layout_new( m_context );
 
-    if (!m_fontdesc)
-    {
-        char *crash = NULL;
-        *crash = 0;
-    }
-
-    pango_layout_set_font_description(layout, m_fontdesc);
-
+    if (m_fontdesc)
+       pango_layout_set_font_description(layout, m_fontdesc);
+    else
+       pango_layout_set_font_description(layout, this->GetFont().GetNativeFontInfo()->description);
+       
     pango_layout_set_text(layout, "H", 1 );
     int w,h;
     pango_layout_get_pixel_size(layout, &w, &h);
@@ -1769,6 +1766,12 @@ void wxWindowDC::SetFont( const wxFont &font )
     wxCHECK_RET( Ok(), wxT("invalid dc") );
 
     m_font = font;
+    
+    return;
+    
+#if wxUSE_UNICODE
+    m_fontdesc = font.GetNativeFontInfo()->description;
+#endif
 }
 
 void wxWindowDC::SetPen( const wxPen &pen )