]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/fontenum.cpp
added test mode to wxLongLongWx which allowed to find the bug in operator*=()
[wxWidgets.git] / src / msw / fontenum.cpp
index 9b8405089a56c0cbd91ef051f812c461e8a0e55d..279f7be2aeb507a3649da892cc15154564c4a6be 100644 (file)
@@ -110,10 +110,12 @@ bool wxFontEnumeratorHelper::SetEncoding(wxFontEncoding encoding)
     return TRUE;
 }
 
-#if defined(__GNUWIN32__) && !defined(__MINGW32__)
-#define wxFONTENUMPROC int(*)(ENUMLOGFONTEX *, NEWTEXTMETRICEX*, int, LPARAM)
+#if defined(__GNUWIN32__)    
+    //BJ : FIXME? I have the second implementation in 2.95. Does it work with other versions?
+   // #define wxFONTENUMPROC int(*)(ENUMLOGFONTEX *, NEWTEXTMETRICEX*, int, LPARAM)
+    #define wxFONTENUMPROC int(*)(const LOGFONTA *, const TEXTMETRICA *, long unsigned int, LPARAM)
 #else
-#define wxFONTENUMPROC FONTENUMPROC
+    #define wxFONTENUMPROC FONTENUMPROC
 #endif
 
 void wxFontEnumeratorHelper::DoEnumerate()
@@ -129,7 +131,12 @@ void wxFontEnumeratorHelper::DoEnumerate()
                          (LPARAM)this, 0 /* reserved */) ;
 #else // Win16
     ::EnumFonts(hDC, (LPTSTR)NULL, (FONTENUMPROC)wxFontEnumeratorProc,
-                (LPARAM) (void*) this) ;
+    #ifdef STRICT
+               (LPARAM)
+    #else
+               (LPSTR)
+    #endif
+               this);
 #endif // Win32/16
 
     ::ReleaseDC(NULL, hDC);