]> git.saurik.com Git - wxWidgets.git/commitdiff
move wxMSLU_xxx redefinitions of xxx() Windows functions to wx/msw/wrapwin.h as we...
authorVadim Zeitlin <vadim@wxwidgets.org>
Thu, 26 Oct 2006 19:06:51 +0000 (19:06 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Thu, 26 Oct 2006 19:06:51 +0000 (19:06 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/filefn.h
include/wx/msw/mslu.h
include/wx/msw/wrapwin.h
src/msw/mslu.cpp

index eca68ca64b67b6e60eb72919847e9ea79b5f8320..7573a31f620b376b94a07d9bf2630f03c5952d8e 100644 (file)
@@ -239,7 +239,24 @@ enum wxFileKind
 
     #if wxUSE_UNICODE
         #if wxUSE_UNICODE_MSLU
-            #include "wx/msw/mslu.h"
+            // implement the missing file functions in Win9x ourselves
+            #if defined( __VISUALC__ ) \
+                || ( defined(__MINGW32__) && wxCHECK_W32API_VERSION( 0, 5 ) ) \
+                || ( defined(__MWERKS__) && defined(__WXMSW__) ) \
+                || ( defined(__BORLANDC__) && (__BORLANDC__ > 0x460) ) \
+                || defined(__DMC__)
+                #ifdef __BORLANDC__
+                    // BCC has _stati64() function but struct stati64
+                    #define _stati64 stati64
+                #endif // __BORLANDC__
+
+                WXDLLIMPEXP_BASE int wxMSLU__wopen(const wxChar *name, int flags, int mode);
+                WXDLLIMPEXP_BASE int wxMSLU__waccess(const wxChar *name, int mode);
+                WXDLLIMPEXP_BASE int wxMSLU__wmkdir(const wxChar *name);
+                WXDLLIMPEXP_BASE int wxMSLU__wrmdir(const wxChar *name);
+                WXDLLIMPEXP_BASE int wxMSLU__wstat(const wxChar *name, struct _stat *buffer);
+                WXDLLIMPEXP_BASE int wxMSLU__wstati64(const wxChar *name, struct _stati64 *buffer);
+            #endif // Windows compilers with MSLU support
 
             #define   wxOpen       wxMSLU__wopen
 
index 7bb088c9264b1141e6af566ce79e3db59c47fd36..5bf78e82c0a8a848e9f204cc6e3ed79182891783 100644 (file)
@@ -1,8 +1,9 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        wx/msw/mslu.h
-// Purpose:     Fixes for bugs in MSLU
+// Purpose:     MSLU-related declarations
 // Author:      Vaclav Slavik
-// Modified by:
+// Modified by: Vadim Zeitlin to move out various functions to other files
+//              to fix header inter-dependencies
 // Created:     2002/02/17
 // RCS-ID:      $Id$
 // Copyright:   (c) 2002 Vaclav Slavik
 #define _WX_MSLU_H_
 
 #include "wx/defs.h"
-#include "wx/utils.h"
-#include "wx/wxchar.h"
 
 // Returns true if we are running under Unicode emulation in Win9x environment.
 // Workaround hacks take effect only if this condition is met
 // (NB: this function is needed even if !wxUSE_UNICODE_MSLU)
 WXDLLIMPEXP_BASE bool wxUsingUnicowsDll();
 
-//------------------------------------------------------------------------
-// Wrongly implemented functions from unicows.dll
-//------------------------------------------------------------------------
-
-#if wxUSE_UNICODE_MSLU
-
-#if wxUSE_GUI
-
-WXDLLEXPORT int wxMSLU_DrawStateW(WXHDC dc, WXHBRUSH br, WXFARPROC outputFunc,
-                                  WXLPARAM lData, WXWPARAM wData,
-                                  int x, int y, int cx, int cy,
-                                  unsigned int flags);
-#define DrawStateW(dc, br, func, ld, wd, x, y, cx, cy, flags) \
-    wxMSLU_DrawStateW((WXHDC)dc,(WXHBRUSH)br,(WXFARPROC)func, \
-                      ld, wd, x, y, cx, cy, flags)
-
-WXDLLEXPORT int wxMSLU_GetOpenFileNameW(void *ofn);
-#define GetOpenFileNameW(ofn) wxMSLU_GetOpenFileNameW((void*)ofn)
-
-WXDLLEXPORT int wxMSLU_GetSaveFileNameW(void *ofn);
-#define GetSaveFileNameW(ofn) wxMSLU_GetSaveFileNameW((void*)ofn)
-
-#endif // wxUSE_GUI
-
-//------------------------------------------------------------------------
-// Missing libc file manipulation functions in Win9x
-//------------------------------------------------------------------------
-
-#if defined( __VISUALC__ ) \
-    || ( defined(__MINGW32__) && wxCHECK_W32API_VERSION( 0, 5 ) ) \
-    || ( defined(__MWERKS__) && defined(__WXMSW__) ) \
-    || ( defined(__BORLANDC__) && (__BORLANDC__ > 0x460) ) \
-    || defined(__DMC__)
-
-#ifdef __BORLANDC__
-    // BCC has _stati64() function but struct stati64
-    #define _stati64 stati64
-#endif
-
-WXDLLIMPEXP_BASE int wxMSLU__wopen(const wxChar *name, int flags, int mode);
-WXDLLIMPEXP_BASE int wxMSLU__waccess(const wxChar *name, int mode);
-WXDLLIMPEXP_BASE int wxMSLU__wmkdir(const wxChar *name);
-WXDLLIMPEXP_BASE int wxMSLU__wrmdir(const wxChar *name);
-WXDLLIMPEXP_BASE int wxMSLU__wstat(const wxChar *name, struct _stat *buffer);
-WXDLLIMPEXP_BASE int wxMSLU__wstati64(const wxChar *name, struct _stati64 *buffer);
-
-#endif // Windows compilers with MSLU support
-
-#endif // wxUSE_UNICODE_MSLU
-
 #endif // _WX_MSLU_H_
index 1e039d424de835ff03d073cc4758018ceadd9026..ef3f4505a6242806c020e53ac013a9bd8fd53b6a 100644 (file)
@@ -57,7 +57,6 @@
 // #undef the macros defined in winsows.h which conflict with code elsewhere
 #include "wx/msw/winundef.h"
 
-
 // Types DWORD_PTR, ULONG_PTR and so on are used for 64-bit compatability 
 // in the WINAPI SDK (they are an integral type that is the size of a
 // pointer) on MSVC 7 and later. However, they are not available in older 
     #define DWORD_PTR unsigned long
 #endif // !defined(_MSC_VER) || _MSC_VER < 1300
 
+// ----------------------------------------------------------------------------
+// Fix the functions wrongly implemented in unicows.dll
+// ----------------------------------------------------------------------------
+
+#if wxUSE_UNICODE_MSLU
+
+#if wxUSE_GUI
+
+WXDLLEXPORT int wxMSLU_DrawStateW(WXHDC dc, WXHBRUSH br, WXFARPROC outputFunc,
+                                  WXLPARAM lData, WXWPARAM wData,
+                                  int x, int y, int cx, int cy,
+                                  unsigned int flags);
+#define DrawStateW(dc, br, func, ld, wd, x, y, cx, cy, flags) \
+    wxMSLU_DrawStateW((WXHDC)dc,(WXHBRUSH)br,(WXFARPROC)func, \
+                      ld, wd, x, y, cx, cy, flags)
+
+WXDLLEXPORT int wxMSLU_GetOpenFileNameW(void *ofn);
+#define GetOpenFileNameW(ofn) wxMSLU_GetOpenFileNameW((void*)ofn)
+
+WXDLLEXPORT int wxMSLU_GetSaveFileNameW(void *ofn);
+#define GetSaveFileNameW(ofn) wxMSLU_GetSaveFileNameW((void*)ofn)
+
+#endif // wxUSE_GUI
+
+#endif // wxUSE_UNICODE_MSLU
+
 #endif // _WX_WRAPWIN_H_
 
index df0b4634eed5ed74f86cf43a7df7dd7225cee542..064b8744dcadbae60469a174749729e12f384906 100644 (file)
@@ -65,7 +65,7 @@ bool WXDLLIMPEXP_BASE wxUsingUnicowsDll()
     #include <direct.h>
 #endif
 
-// Undef redirection macros defined in wx/msw/mslu.h:
+// Undef redirection macros defined in wx/msw/wrapwin.h:
 #undef DrawStateW
 #undef GetOpenFileNameW
 #undef GetSaveFileNameW
@@ -120,7 +120,7 @@ static void wxFixOPENFILENAME(LPOPENFILENAME ofn)
             ofn->nFileOffset = wxStrlen(ofn->lpstrFile)+1;
         }
     }
-#endif
+#endif // OFN_EXPLORER
 }
 
 WXDLLEXPORT int wxMSLU_GetOpenFileNameW(void *ofn)
@@ -222,7 +222,7 @@ WXDLLIMPEXP_BASE int wxMSLU__wstat(const wxChar *name, struct _stat *buffer)
 }
 
 #ifdef __BORLANDC__
-//here _stati64 is defined as stati64, see msw/mslu.h line 62
+//here _stati64 is defined as stati64, see wx/filefn.h
 #undef _stati64
 WXDLLIMPEXP_BASE int wxMSLU__wstati64(const wxChar *name, struct _stati64 *buffer)
  {