X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/91a151d3a3282eb5786581e666edb128bababdfb..0f457f4de222f251fdefd2053a3638c0ee041342:/include/wx/wxcrt.h diff --git a/include/wx/wxcrt.h b/include/wx/wxcrt.h index 74a8a9d69a..1549dc436b 100644 --- a/include/wx/wxcrt.h +++ b/include/wx/wxcrt.h @@ -2,7 +2,7 @@ // Name: wx/wxcrt.h // Purpose: Type-safe ANSI and Unicode builds compatible wrappers for // CRT functions -// Author: Joel Farley, Ove K�ven +// Author: Joel Farley, Ove Kaaven // Modified by: Vadim Zeitlin, Robert Roebling, Ron Lee, Vaclav Slavik // Created: 1998/06/12 // RCS-ID: $Id$ @@ -19,8 +19,11 @@ #include "wx/wxcrtbase.h" #include "wx/string.h" -#if defined (__VISUALC__) || defined (__DMC__) - #define HAVE_NO_VSSCANF 1 +#ifndef __WX_SETUP_H__ +// For non-configure builds assume vsscanf is available, if not Visual C or DMC +#if !defined (__VISUALC__) && !defined (__DMC__) + #define HAVE_VSSCANF 1 +#endif #endif // ============================================================================ @@ -36,9 +39,6 @@ inline bool wxIsEmpty(const wxString& s) { return s.empty(); } inline bool wxIsEmpty(const wxCStrData& s) { return s.AsString().empty(); } -// FIXME-UTF8: get rid of this, it's ANSI only anyway -WXDLLIMPEXP_BASE bool wxOKlibc(); /* for internal use */ - /* multibyte to wide char conversion functions and macros */ @@ -312,16 +312,16 @@ inline wchar_t *wxStrncat(wchar_t *dest, const char *src, size_t n) { return WX_STR_CALL(forString, wxString(s1), wxString(s2)); } \ inline rettype WX_STR_DECL(name, const wxCharBuffer&, const wxCharBuffer&)\ { return WX_STR_CALL(crtA, s1.data(), s2.data()); } \ - inline int WX_STR_DECL(name, const wxCharBuffer&, const wxWCharBuffer&) \ + inline rettype WX_STR_DECL(name, const wxCharBuffer&, const wxWCharBuffer&) \ { return WX_STR_CALL(forString, wxString(s1), wxString(s2)); } \ \ inline rettype WX_STR_DECL(name, const wxWCharBuffer&, const wchar_t *) \ { return WX_STR_CALL(crtW, s1.data(), s2); } \ inline rettype WX_STR_DECL(name, const wxWCharBuffer&, const char *) \ { return WX_STR_CALL(forString, wxString(s1), wxString(s2)); } \ - inline int WX_STR_DECL(name, const wxWCharBuffer&, const wxWCharBuffer&) \ + inline rettype WX_STR_DECL(name, const wxWCharBuffer&, const wxWCharBuffer&) \ { return WX_STR_CALL(crtW, s1.data(), s2.data()); } \ - inline int WX_STR_DECL(name, const wxWCharBuffer&, const wxCharBuffer&) \ + inline rettype WX_STR_DECL(name, const wxWCharBuffer&, const wxCharBuffer&) \ { return WX_STR_CALL(forString, wxString(s1), wxString(s2)); } \ \ inline rettype WX_STR_DECL(name, const wxString&, const char*) \ @@ -448,18 +448,18 @@ WX_STRCMP_FUNC(wxStrcoll, wxCRT_StrcollA, wxCRT_StrcollW, wxStrcoll_String) #endif // defined(wxCRT_Strcoll[AW]) template -inline int wxStrspn_String(const wxString& s1, const T& s2) +inline size_t wxStrspn_String(const wxString& s1, const T& s2) { size_t pos = s1.find_first_not_of(s2); - return (pos == wxString::npos) ? s1.length() : pos; + return pos == wxString::npos ? s1.length() : pos; } WX_STR_FUNC(size_t, wxStrspn, wxCRT_StrspnA, wxCRT_StrspnW, wxStrspn_String) template -inline int wxStrcspn_String(const wxString& s1, const T& s2) +inline size_t wxStrcspn_String(const wxString& s1, const T& s2) { size_t pos = s1.find_first_of(s2); - return (pos == wxString::npos) ? s1.length() : pos; + return pos == wxString::npos ? s1.length() : pos; } WX_STR_FUNC(size_t, wxStrcspn, wxCRT_StrcspnA, wxCRT_StrcspnW, wxStrcspn_String)