]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/fontcmn.cpp
Implemented the same simple API for creating customized
[wxWidgets.git] / src / common / fontcmn.cpp
index 2d9ba5c768b194015e975560e27d72fbaa4a3544..236f10b00d9efccb9cefccf9ec5cc5fffb039ef2 100644 (file)
     #include "wx/intl.h"
     #include "wx/dcscreen.h"
     #include "wx/log.h"
+    #include "wx/gdicmn.h"
 #endif // WX_PRECOMP
 
-#include "wx/gdicmn.h"
-
 #if defined(__WXMSW__)
-  #include  "wx/msw/private.h"  // includes windows.h for LOGFONT
-  #include  "wx/msw/winundef.h"
+    #include  "wx/msw/private.h"  // includes windows.h for LOGFONT
+    #include  "wx/msw/winundef.h"
 #endif
 
 #include "wx/fontutil.h" // for wxNativeFontInfo
@@ -268,11 +267,11 @@ wxString wxFontBase::GetNativeFontInfoDesc() const
     if ( fontInfo )
     {
         fontDesc = fontInfo->ToString();
-        wxASSERT_MSG(!fontDesc.IsEmpty(), wxT("This should be a non-empty string!"));
+        wxASSERT_MSG(!fontDesc.empty(), wxT("This should be a non-empty string!"));
     }
     else
     {
-        wxASSERT_MSG(0, wxT("Derived class should have created the wxNativeFontInfo!"));
+        wxFAIL_MSG(wxT("Derived class should have created the wxNativeFontInfo!"));
     }
 
     return fontDesc;
@@ -285,11 +284,11 @@ wxString wxFontBase::GetNativeFontInfoUserDesc() const
     if ( fontInfo )
     {
         fontDesc = fontInfo->ToUserString();
-        wxASSERT_MSG(!fontDesc.IsEmpty(), wxT("This should be a non-empty string!"));
+        wxASSERT_MSG(!fontDesc.empty(), wxT("This should be a non-empty string!"));
     }
     else
     {
-        wxASSERT_MSG(0, wxT("Derived class should have created the wxNativeFontInfo!"));
+        wxFAIL_MSG(wxT("Derived class should have created the wxNativeFontInfo!"));
     }
 
     return fontDesc;
@@ -325,10 +324,16 @@ bool wxFontBase::operator==(const wxFont& font) const
 {
     // either it is the same font, i.e. they share the same common data or they
     // have different ref datas but still describe the same font
-    return GetFontData() == font.GetFontData() ||
+    return IsSameAs(font) ||
            (
             Ok() == font.Ok() &&
             GetPointSize() == font.GetPointSize() &&
+            // in wxGTK1 GetPixelSize() calls GetInternalFont() which uses
+            // operator==() resulting in infinite recursion so we can't use it
+            // in that port
+#if !defined(__WXGTK__) || defined(__WXGTK20__)
+            GetPixelSize() == font.GetPixelSize() &&
+#endif
             GetFamily() == font.GetFamily() &&
             GetStyle() == font.GetStyle() &&
             GetWeight() == font.GetWeight() &&
@@ -666,7 +671,10 @@ bool wxNativeFontInfo::FromUserString(const wxString& s)
 
     wxString face;
     unsigned long size;
-    bool weightfound = false, pointsizefound = false, encodingfound = false;
+    bool weightfound = false, pointsizefound = false;
+#if wxUSE_FONTMAP
+    bool encodingfound = false;
+#endif
 
     while ( tokenizer.HasMoreTokens() )
     {