From e7b3d6babbc006f2936be6827d0b826adbbc82e4 Mon Sep 17 00:00:00 2001 From: Ove Kaaven Date: Fri, 23 Jul 1999 09:38:03 +0000 Subject: [PATCH] Implementation of wxFopen, wxFreopen, wxStrftime git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3093 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/common/wxchar.cpp | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/src/common/wxchar.cpp b/src/common/wxchar.cpp index db8b5d651e..ca5419f957 100644 --- a/src/common/wxchar.cpp +++ b/src/common/wxchar.cpp @@ -31,6 +31,7 @@ #include #include #include +#include #ifndef WX_PRECOMP #include "wx/defs.h" @@ -343,6 +344,16 @@ WXDLLEXPORT long int wxStrtol(const wxChar *nptr, wxChar **endptr, int base) #endif #ifdef wxNEED_WX_STDIO_H +WXDLLEXPORT FILE * wxFopen(const wxChar *path, const wxChar *mode) +{ + return fopen(wxConvFile.cWX2MB(path), wxConvLibc.cWX2MB(mode)); +} + +WXDLLEXPORT FILE * wxFreopen(const wxChar *path, const wxChar *mode, FILE *stream) +{ + return freopen(wxConvFile.cWX2MB(path), wxConvLibc.cWX2MB(mode), stream); +} + int WXDLLEXPORT wxPrintf(const wxChar *fmt, ...) { va_list argptr; @@ -465,3 +476,21 @@ int WXDLLEXPORT wxSystem(const wxChar *psz) } #endif + +#ifdef wxNEED_WX_TIME_H +WXDLLEXPORT size_t wxStrftime(wxChar *s, size_t max, const wxChar *fmt, const struct tm *tm) +{ + if (!max) return 0; + char *buf = (char *)malloc(max); + size_t ret = strftime(buf, max, wxConvLibc.cWX2MB(fmt), tm); + if (ret) { + wxStrcpy(s, wxConvLibc.cMB2WX(buf)); + free(buf); + return wxStrlen(s); + } else { + free(buf); + *s = 0; + return 0; + } +} +#endif -- 2.47.2