X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e90c1d2a19361551eb07778280f22be3e759cf64..f5ba273ecd799f652736ce2bc830283787302a56:/src/common/wxchar.cpp?ds=inline diff --git a/src/common/wxchar.cpp b/src/common/wxchar.cpp index cad23ca412..c2deb9b203 100644 --- a/src/common/wxchar.cpp +++ b/src/common/wxchar.cpp @@ -52,7 +52,7 @@ size_t WXDLLEXPORT wxMB2WC(wchar_t *buf, const char *psz, size_t n) { if (buf) { if (!n || !*psz) { - if (n) *buf = T('\0'); + if (n) *buf = wxT('\0'); return 0; } return mbstowcs(buf, psz, n); @@ -63,7 +63,7 @@ size_t WXDLLEXPORT wxMB2WC(wchar_t *buf, const char *psz, size_t n) #if wxUSE_WCSRTOMBS // don't know if it's really needed (or if we can pass NULL), but better safe // than quick - mbstate_t mbstate; + mbstate_t mbstate; return mbsrtowcs((wchar_t *) NULL, &psz, 0, &mbstate); #else // !GNU libc return mbstowcs((wchar_t *) NULL, psz, 0); @@ -86,7 +86,7 @@ size_t WXDLLEXPORT wxWC2MB(char *buf, const wchar_t *pwz, size_t n) #if wxUSE_WCSRTOMBS // don't know if it's really needed (or if we can pass NULL), but better safe // than quick - mbstate_t mbstate; + mbstate_t mbstate; return wcsrtombs((char *) NULL, &pwz, 0, &mbstate); #else // !GNU libc return wcstombs((char *) NULL, pwz, 0); @@ -181,7 +181,7 @@ WXDLLEXPORT wxChar * wxStrtok(wxChar *psz, const wxChar *delim, wxChar **save_pt psz = wxStrpbrk(psz, delim); if (!psz) *save_ptr = (wxChar*)NULL; else { - *psz = T('\0'); + *psz = wxT('\0'); *save_ptr = psz + 1; } return ret; @@ -189,11 +189,11 @@ WXDLLEXPORT wxChar * wxStrtok(wxChar *psz, const wxChar *delim, wxChar **save_pt #endif #ifndef wxSetlocale -WXDLLEXPORT wxChar * wxSetlocale(int category, const wxChar *locale) +WXDLLEXPORT wxWCharBuffer wxSetlocale(int category, const wxChar *locale) { - setlocale(category, wxConvLibc.cWX2MB(locale)); - // FIXME - return (wxChar *)NULL; + char *localeOld = setlocale(category, wxConvLibc.cWX2MB(locale)); + + return wxWCharBuffer(wxConvLibc.cMB2WC(localeOld)); } #endif @@ -292,15 +292,15 @@ WXDLLEXPORT double wxStrtod(const wxChar *nptr, wxChar **endptr) // FIXME: only correct for C locale while (wxIsspace(*nptr)) nptr++; - if (*nptr == T('+') || *nptr == T('-')) nptr++; + if (*nptr == wxT('+') || *nptr == wxT('-')) nptr++; while (wxIsdigit(*nptr)) nptr++; - if (*nptr == T('.')) { + if (*nptr == wxT('.')) { nptr++; while (wxIsdigit(*nptr)) nptr++; } - if (*nptr == T('E') || *nptr == T('e')) { + if (*nptr == wxT('E') || *nptr == wxT('e')) { nptr++; - if (*nptr == T('+') || *nptr == T('-')) nptr++; + if (*nptr == wxT('+') || *nptr == wxT('-')) nptr++; while (wxIsdigit(*nptr)) nptr++; } @@ -320,17 +320,17 @@ WXDLLEXPORT long int wxStrtol(const wxChar *nptr, wxChar **endptr, int base) // FIXME: only correct for C locale while (wxIsspace(*nptr)) nptr++; - if (*nptr == T('+') || *nptr == T('-')) nptr++; + if (*nptr == wxT('+') || *nptr == wxT('-')) nptr++; if (((base == 0) || (base == 16)) && - (nptr[0] == T('0') && nptr[1] == T('x'))) { + (nptr[0] == wxT('0') && nptr[1] == wxT('x'))) { nptr += 2; base = 16; } - else if ((base == 0) && (nptr[0] == T('0'))) base = 8; + else if ((base == 0) && (nptr[0] == wxT('0'))) base = 8; else if (base == 0) base = 10; - while ((wxIsdigit(*nptr) && (*nptr - T('0') < base)) || - (wxIsalpha(*nptr) && (wxToupper(*nptr) - T('A') + 10 < base))) nptr++; + while ((wxIsdigit(*nptr) && (*nptr - wxT('0') < base)) || + (wxIsalpha(*nptr) && (wxToupper(*nptr) - wxT('A') + 10 < base))) nptr++; wxString data(nptr, nptr-start); wxWX2MBbuf dat = data.mb_str(wxConvLibc);