#pragma hdrstop
#endif
+#if wxUSE_INTL
+
// standard headers
#include <locale.h>
#include <ctype.h>
// simple types
// ----------------------------------------------------------------------------
-// FIXME adjust if necessary
+// this should *not* be wxChar, this type must have exactly 8 bits!
typedef unsigned char size_t8;
-typedef unsigned long size_t32;
+
+#ifdef __WXMSW__
+ #if defined(__WIN16__)
+ typedef unsigned long size_t32;
+ #elif defined(__WIN32__)
+ typedef unsigned int size_t32;
+ #else
+ // Win64 will have different type sizes
+ #error "Please define a 32 bit type"
+ #endif
+#else // !Windows
+ // SIZEOF_XXX are defined by configure
+ #if defined(SIZEOF_INT) && (SIZEOF_INT == 4)
+ typedef unsigned int size_t32;
+ #elif defined(SIZEOF_LONG) && (SIZEOF_LONG == 4)
+ typedef unsigned long size_t32;
+ #else
+ // assume sizeof(int) == 4 - what else can we do
+ typedef unsigned int size_t32;
+
+ // ... but at least check it during run time
+ static class IntSizeChecker
+ {
+ public:
+ IntSizeChecker()
+ {
+ wxASSERT_MSG( sizeof(int) == 4,
+ "size_t32 is incorrectly defined!" );
+ }
+ } intsizechecker;
+ #endif
+#endif // Win/!Win
// ----------------------------------------------------------------------------
// constants
return szDomain;
const char *pszTrans = NULL;
- const wxWX2MBbuf szOrgString = wxConv_libc.cWX2MB(szOrigString);
+ const wxWX2MBbuf szOrgString = wxConvCurrent->cWX2MB(szOrigString);
wxMsgCatalog *pMsgCat;
if ( szDomain != NULL ) {
return (wxMB2WXbuf)(szOrigString);
}
else
- return (wxMB2WXbuf)(wxConv_libc.cMB2WX(pszTrans));
+ return (wxMB2WXbuf)(wxConvCurrent->cMB2WX(pszTrans));
}
// find catalog by name in a linked list, return NULL if !found
g_pLocale = pLocale;
return pOld;
}
+
+#endif // wxUSE_INTL
+