]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/wxchar.h
Added parent window parameter to wxHelpController constructor
[wxWidgets.git] / include / wx / wxchar.h
index 461bd9219fceaf3df301f4c3d65cc7a755227a01..6d560af9561d133d719262a93d3ca89146ee1341 100644 (file)
 #ifndef _WX_WXCHAR_H_
 #define _WX_WXCHAR_H_
 
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-    #pragma interface "wxchar.h"
-#endif
-
 #include "wx/defs.h"        /* for wxUSE_UNICODE */
 
 #if defined(HAVE_STRTOK_R) && defined(__DARWIN__) && defined(_MSL_USING_MW_C_HEADERS) && _MSL_USING_MW_C_HEADERS
@@ -802,6 +798,16 @@ WXDLLIMPEXP_BASE bool wxOKlibc(); /* for internal use */
     int snprintf(char *str, size_t size, const char *format, ...);
 #endif /* !HAVE_SNPRINTF_DECL */
 
+/* Wrapper for vsnprintf if it's 3rd parameter is non-const. Note: the
+ * same isn't done for snprintf below, the builtin wxSnprintf_ is used
+ * instead since it's already a simple wrapper */
+#if defined __cplusplus && defined HAVE_BROKEN_VSNPRINTF_DECL
+    inline int wx_fixed_vsnprintf(char *str, size_t size, const char *format, va_list ap)
+    {
+        return vsnprintf(str, size, (char*)format, ap);
+    }
+#endif
+
 /*
    First of all, we always want to define safe snprintf() function to be used
    instead of sprintf(). Some compilers already have it (or rather vsnprintf()
@@ -830,11 +836,17 @@ WXDLLIMPEXP_BASE bool wxOKlibc(); /* for internal use */
     #else /* ASCII */
         /* all versions of CodeWarrior supported by wxWidgets apparently have */
         /* both snprintf() and vsnprintf() */
-        #ifdef HAVE_SNPRINTF || defined(__MWERKS__) || defined(__WATCOMC__)
-            #define wxSnprintf_     snprintf
+        #if defined(HAVE_SNPRINTF) || defined(__MWERKS__) || defined(__WATCOMC__)
+            #ifndef HAVE_BROKEN_SNPRINTF_DECL
+                #define wxSnprintf_     snprintf
+            #endif
         #endif
         #if defined(HAVE_VSNPRINTF) || defined(__MWERKS__) || defined(__WATCOMC__)
-            #define wxVsnprintf_    vsnprintf
+            #if defined __cplusplus && defined HAVE_BROKEN_VSNPRINTF_DECL
+                #define wxVsnprintf_    wx_fixed_vsnprintf
+            #else
+                #define wxVsnprintf_    vsnprintf
+            #endif
         #endif
     #endif
 #endif /* wxVsnprintf_ not defined yet */
@@ -1194,13 +1206,13 @@ WXDLLIMPEXP_BASE void *calloc( size_t num, size_t size );
             return szRet;
         }
 
-    #else //!wxUSE_UNICODE
+    #else /* !wxUSE_UNICODE */
     #   define wxTmemchr memchr
     #   define wxTmemcmp memcmp
     #   define wxTmemcpy memcpy
     #   define wxTmemmove memmove
     #   define wxTmemset memset
-    #endif
+    #endif /* wxUSE_UNICODE/!wxUSE_UNICODE */
 
 #endif /*__cplusplus*/