X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/715e4f7e3e26595209b5fe8a9ad3e60cce317e5f..ba7512e14d2e148a5734d7727957470d0daf77fd:/src/common/filefn.cpp?ds=sidebyside diff --git a/src/common/filefn.cpp b/src/common/filefn.cpp index 4dd3e7a486..2da2831468 100644 --- a/src/common/filefn.cpp +++ b/src/common/filefn.cpp @@ -98,10 +98,6 @@ #define _MAXPATHLEN 1024 #endif -#ifndef INVALID_FILE_ATTRIBUTES - #define INVALID_FILE_ATTRIBUTES ((DWORD)-1) -#endif - // ---------------------------------------------------------------------------- // private globals // ---------------------------------------------------------------------------- @@ -735,16 +731,7 @@ wxChar *wxFileNameFromPath (wxChar *path) wxString wxFileNameFromPath (const wxString& path) { - wxString name, ext; - wxFileName::SplitPath(path, NULL, &name, &ext); - - wxString fullname = name; - if ( !ext.empty() ) - { - fullname << wxFILE_SEP_EXT << ext; - } - - return fullname; + return wxFileName(path).GetFullName(); } // Return just the directory, or NULL if no directory @@ -1011,8 +998,7 @@ wxConcatFiles (const wxString& file1, const wxString& file2, const wxString& fil } // helper of generic implementation of wxCopyFile() -#if !(defined(__WIN32__) || defined(__OS2__) || defined(__PALMOS__)) && \ - wxUSE_FILE +#if !(defined(__WIN32__) || defined(__OS2__)) && wxUSE_FILE static bool wxDoCopyFile(wxFile& fileIn, @@ -1074,9 +1060,6 @@ wxCopyFile (const wxString& file1, const wxString& file2, bool overwrite) #elif defined(__OS2__) if ( ::DosCopy(file1.c_str(), file2.c_str(), overwrite ? DCPY_EXISTING : 0) != 0 ) return false; -#elif defined(__PALMOS__) - // TODO with http://www.palmos.com/dev/support/docs/protein_books/Memory_Databases_Files/ - return false; #elif wxUSE_FILE // !Win32 wxStructStat fbuf; @@ -1186,7 +1169,7 @@ wxRenameFile(const wxString& file1, const wxString& file2, bool overwrite) return false; } -#if !defined(__WXWINCE__) && !defined(__WXPALMOS__) +#if !defined(__WXWINCE__) // Normal system call if ( wxRename (file1, file2) == 0 ) return true; @@ -1198,6 +1181,7 @@ wxRenameFile(const wxString& file1, const wxString& file2, bool overwrite) return true; } // Give up + wxLogSysError(_("File '%s' couldn't be renamed '%s'"), file1, file2); return false; } @@ -1212,21 +1196,18 @@ bool wxRemoveFile(const wxString& file) int res = wxRemove(file); #elif defined(__WXMAC__) int res = unlink(file.fn_str()); -#elif defined(__WXPALMOS__) - int res = 1; - // TODO with VFSFileDelete() #else int res = unlink(file.fn_str()); #endif - + if ( res ) + { + wxLogSysError(_("File '%s' couldn't be removed"), file); + } return res == 0; } bool wxMkdir(const wxString& dir, int perm) { -#if defined(__WXPALMOS__) - return false; -#else #if defined(__WXMAC__) && !defined(__UNIX__) if ( mkdir(dir.fn_str(), 0) != 0 ) @@ -1269,16 +1250,12 @@ bool wxMkdir(const wxString& dir, int perm) } return true; -#endif // PALMOS/!PALMOS } bool wxRmdir(const wxString& dir, int WXUNUSED(flags)) { #if defined(__VMS__) return false; //to be changed since rmdir exists in VMS7.x -#elif defined(__WXPALMOS__) - // TODO with VFSFileRename() - return false; #else #if defined(__OS2__) if ( ::DosDeleteDir(dir.c_str()) != 0 ) @@ -1293,7 +1270,7 @@ bool wxRmdir(const wxString& dir, int WXUNUSED(flags)) } return true; -#endif // PALMOS/!PALMOS +#endif } // does the path exists? (may have or not '/' or '\\' at the end) @@ -1312,12 +1289,7 @@ wxChar *wxGetTempFileName(const wxString& prefix, wxChar *buf) return NULL; if ( buf ) -#ifdef _PACC_VER - // work around the PalmOS pacc compiler bug - wxStrcpy(buf, filename.data()); -#else wxStrcpy(buf, filename); -#endif else buf = MYcopystring(filename); @@ -1358,7 +1330,7 @@ wxString wxFindFirstFile(const wxString& spec, int flags) if ( !gs_dir->IsOpened() ) { - wxLogSysError(_("Can not enumerate files '%s'"), spec); + wxLogSysError(_("Cannot enumerate files '%s'"), spec); return wxEmptyString; } @@ -1407,11 +1379,7 @@ wxString wxFindNextFile() wxChar *wxDoGetCwd(wxChar *buf, int sz) { -#if defined(__WXPALMOS__) - // TODO - if(buf && sz>0) buf[0] = wxT('\0'); - return buf; -#elif defined(__WXWINCE__) +#if defined(__WXWINCE__) // TODO if(buf && sz>0) buf[0] = wxT('\0'); return buf; @@ -1550,6 +1518,7 @@ wxString wxGetCwd() bool wxSetWorkingDirectory(const wxString& d) { + bool success = false; #if defined(__OS2__) if (d[1] == ':') { @@ -1559,18 +1528,17 @@ bool wxSetWorkingDirectory(const wxString& d) if (d.length() == 2) return true; } - return (::DosSetCurrentDir(d.c_str()) == 0); + success = (::DosSetCurrentDir(d.c_str()) == 0); #elif defined(__UNIX__) || defined(__WXMAC__) || defined(__DOS__) - return (chdir(wxFNSTRINGCAST d.fn_str()) == 0); + success = (chdir(wxFNSTRINGCAST d.fn_str()) == 0); #elif defined(__WINDOWS__) #ifdef __WIN32__ #ifdef __WXWINCE__ // No equivalent in WinCE wxUnusedVar(d); - return false; #else - return (bool)(SetCurrentDirectory(d.fn_str()) != 0); + success = (SetCurrentDirectory(d.fn_str()) != 0); #endif #else // Must change drive, too. @@ -1591,12 +1559,15 @@ bool wxSetWorkingDirectory(const wxString& d) _dos_setdrive(driveNo, &noDrives); } } - bool success = (chdir(WXSTRINGCAST d) == 0); - - return success; + success = (chdir(WXSTRINGCAST d) == 0); #endif #endif + if ( !success ) + { + wxLogSysError(_("Could not set current working directory")); + } + return success; } // Get the OS directory if appropriate (such as the Windows directory).