X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/cf1d22d68578de9a848e15c831573ee2612df406..c3f805b4ac87eccf4d89c2376dce46b0c8c886a9:/include/wx/wxchar.h?ds=sidebyside diff --git a/include/wx/wxchar.h b/include/wx/wxchar.h index ffe6190bad..bd91e9bb05 100644 --- a/include/wx/wxchar.h +++ b/include/wx/wxchar.h @@ -170,9 +170,9 @@ typedef _TUCHAR wxUChar; // wchar_t is available # undef wxUSE_WCHAR_T // This test is for C++Builder -#if __BORLANDC__ == 0x530 +#if __BORLANDC__ >= 0x530 # define wxUSE_WCHAR_T 0 -#elif +#else # define wxUSE_WCHAR_T 1 # define wxNEED_WCSLEN #endif @@ -183,6 +183,117 @@ typedef _TUCHAR wxUChar; # define wxNEED_WX_STDLIB_H # define wxNEED_WX_TIME_H +// VisualAge C++ V4.0 has broad tchar support +#elif defined(__VISAGECPP__) && __IBMCPP__ >= 400 + +# define HAVE_WCSLEN 1 +# include +# include + +# if wxUSE_UNICODE // temporary - preserve binary compatibility +typedef _TCHAR wxChar; +typedef _TSCHAR wxSChar; +typedef _TUCHAR wxUChar; +# else +# define wxChar char +# define wxSChar signed char +# define wxUChar unsigned char +# endif + // wchar_t is available +# undef wxUSE_WCHAR_T +# define wxUSE_WCHAR_T 1 + + // ctype.h functions +# define wxIsalnum _istalnum +# define wxIsalpha _istalpha +# define wxIsctrl _istcntrl +# define wxIsdigit _istdigit +# define wxIsgraph _istgraph +# define wxIslower _istlower +# define wxIsprint _istprint +# define wxIspunct _istpunct +# define wxIsspace _istspace +# define wxIsupper _istupper +# define wxIsxdigit _istxdigit +# define wxTolower _totlower +# define wxToupper _totupper + + // locale.h functons -- not defined in tchar.h +# define wxSetlocale setlocale + + // string.h functions +# define wxStrcat _tcscat +# define wxStrchr _tcschr +# define wxStrcmp _tcscmp +# define wxStrcoll _tcscoll +# define wxStrcpy _tcscpy +# define wxStrcspn _tcscspn +# define wxStrftime _tcsftime +# define wxStricmp _tcsicmp +# define wxStrlen_ _tcslen // used in wxStrlen inline function +# define wxStrncat _tcsncat +# define wxStrncmp _tcsncmp +# define wxStrncpy _tcsncpy +# define wxStrpbrk _tcspbrk +# define wxStrrchr _tcsrchr +# define wxStrspn _tcsspn +# define wxStrstr _tcsstr +# define wxStrtod _tcstod +// is there a _tcstok[_r] ? +# define wxStrtol _tcstol +# define wxStrtoul _tcstoul +# define wxStrxfrm _tcsxfrm + + // stdio.h functions +# define wxFgetc _fgettc +# define wxFgets _fgetts +# define wxFputc _fputtc +# define wxFprintf _ftprintf +# define wxFscanf _ftscanf +# define wxGetc _gettc +# define wxGetchar _gettchar +# define wxPrintf _tprintf +# define wxPutc _puttc +# define wxPutchar _puttchar +# define wxScanf _tscanf +# define wxSprintf _stprintf +# define wxSscanf _stscanf +# define wxVfprint _vftprintf +# define wxVprintf _vtprintf +# define wxVsprintf _vstprintf +// not defined in tchar.h +# define wxFgetchar fgetchar +# define wxFopen fopen +# define wxFputchar fputchar +# define wxFreopen freopen +# define wxGets gets +# define wxPerror perror +# define wxPuts puts +# define wxRemove remove +# define wxRename rename +# define wxTmpnam tmpnam +# define wxUngetc ungetc +# define wxVsscanf vsscanf + + // stdlib.h functions -- none defined in tchar.h +# if !wxUSE_UNICODE +# define wxAtof atof +# endif +# define wxAtoi atoi +# define wxAtol atol +# define wxGetenv getenv +# define wxSystem system + + // time.h functions -- none defined in tchar.h +# define wxAsctime asctime +# define wxCtime ctime + +// #elif defined(XXX) + // #include XXX-specific files here + // typeddef YYY wxChar; + + // translate wxZZZ names + #else//!TCHAR-aware compilers // check whether we should include wchar.h or equivalent