]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/fontenum.cpp
More small fixes
[wxWidgets.git] / src / msw / fontenum.cpp
index 1747efcaaf281aae971e88e2141e360f724c71bf..60f38ac3fada6d734d3f4d7e4e54bdbc4b7f9c6d 100644 (file)
   #pragma hdrstop
 #endif
 
+#if wxUSE_FONTMAP
+
 #ifndef WX_PRECOMP
   #include "wx/font.h"
 #endif
 
+#include "wx/fontutil.h"
 #include "wx/fontenum.h"
 #include "wx/fontmap.h"
 
@@ -104,7 +107,7 @@ int CALLBACK wxFontEnumeratorProc(LPLOGFONT lplf, LPTEXTMETRIC lptm,
 wxFontEnumeratorHelper::wxFontEnumeratorHelper(wxFontEnumerator *fontEnum)
 {
     m_fontEnum = fontEnum;
-    m_charset = -1;
+    m_charset = DEFAULT_CHARSET;
     m_fixedOnly = FALSE;
     m_enumEncodings = FALSE;
 }
@@ -132,9 +135,9 @@ bool wxFontEnumeratorHelper::SetEncoding(wxFontEncoding encoding)
     return TRUE;
 }
 
-#if defined(__GNUWIN32__)
+#if defined(__GNUWIN32__) && !defined(__CYGWIN10__)
     #if wxUSE_NORLANDER_HEADERS
-        #define wxFONTENUMPROC int(*)(const LOGFONTA *, const TEXTMETRICA *, long unsigned int, LPARAM)
+        #define wxFONTENUMPROC int(*)(const LOGFONT *, const TEXTMETRIC *, long unsigned int, LPARAM)
     #else
         #define wxFONTENUMPROC int(*)(ENUMLOGFONTEX *, NEWTEXTMETRICEX*, int, LPARAM)
     #endif
@@ -178,7 +181,7 @@ bool wxFontEnumeratorHelper::OnFont(const LPLOGFONT lf,
             wxConstCast(this, wxFontEnumeratorHelper)->m_charsets.Add(cs);
 
             wxFontEncoding enc = wxGetFontEncFromCharSet(cs);
-            return m_fontEnum->OnFontEncoding(m_family,
+            return m_fontEnum->OnFontEncoding(lf->lfFaceName,
                                               wxFontMapper::GetEncodingName(enc));
         }
         else
@@ -258,3 +261,4 @@ int CALLBACK wxFontEnumeratorProc(LPLOGFONT lplf, LPTEXTMETRIC lptm,
     return fontEnum->OnFont(lplf, lptm);
 }
 
+#endif // wxUSE_FONTMAP