more MSLU fixes and moved MSLU stuff into separate file

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14290 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Václav Slavík
2002-02-17 23:29:25 +00:00
parent 6af638ed35
commit 3d5231db07
16 changed files with 57 additions and 41 deletions

View File

@@ -114,7 +114,8 @@
#ifdef __WINDOWS__
#include <windows.h>
#include "wx/msw/mslu.h"
// sys/cygwin.h is needed for cygwin_conv_to_full_win32_path()
//
// note that it must be included after <windows.h>
@@ -1803,28 +1804,3 @@ bool wxMatchWild( const wxString& pat, const wxString& text, bool dot_special )
#ifdef __VISUALC__
#pragma warning(default:4706) // assignment within conditional expression
#endif // VC++
//------------------------------------------------------------------------
// Missing functions in Unicode for Win9x
//------------------------------------------------------------------------
// NB: MSLU only covers Win32 API, it doesn't provide Unicode implementation of
// libc functions. Unfortunately, some of MSVCRT wchar_t functions
// (e.g. _wopen) don't work on Windows 9x, so we have to workaround it
// by calling the char version. We still want to use wchar_t version on
// NT/2000/XP, though, because they allow for Unicode file names.
#if wxUSE_UNICODE_MSLU
#if defined( __VISUALC__ ) \
|| ( defined(__MINGW32__) && wxCHECK_W32API_VERSION( 0, 5 ) ) \
|| ( defined(__MWERKS__) && defined(__WXMSW__) )
WXDLLEXPORT int wxOpen(const wxChar *name, int flags, int mode)
{
if ( wxGetOsVersion() == wxWINDOWS_NT )
return _wopen(name, flags, mode);
else
return _open(wxConvFile.cWX2MB(name), flags, mode);
}
#endif
#endif // wxUSE_UNICODE_MSLU