/////////////////////////////////////////////////////////////////////////////
-// Name: filefn.h
+// Name: wx/filefn.h
// Purpose: File- and directory-related functions
// Author: Julian Smart
// Modified by:
#endif
#endif
- // types: notice that Watcom is the only compiler to have a wide char
- // version of struct stat as well as a wide char stat function variant
+ // Types: Notice that Watcom is the only compiler to have a wide char
+ // version of struct stat as well as a wide char stat function variant.
+ // This was droped since OW 1.4 "for consistency across platforms".
#if wxHAS_HUGE_FILES
- #if wxUSE_UNICODE && defined(__WATCOMC__)
+ #if wxUSE_UNICODE && wxONLY_WATCOM_EARLIER_THAN(1,4)
#define wxStructStat struct _wstati64
#else
#define wxStructStat struct _stati64
#endif
#else
- #if wxUSE_UNICODE && defined(__WATCOMC__)
+ #if wxUSE_UNICODE && wxONLY_WATCOM_EARLIER_THAN(1,4)
#define wxStructStat struct _wstat
#else
#define wxStructStat struct _stat
WXDLLIMPEXP_BASE bool wxRemoveFile(const wxString& file);
// Rename file
-WXDLLIMPEXP_BASE bool wxRenameFile(const wxString& file1, const wxString& file2);
+WXDLLIMPEXP_BASE bool wxRenameFile(const wxString& file1, const wxString& file2, bool overwrite = true);
// Get current working directory.
+#if WXWIN_COMPATIBILITY_2_6
// If buf is NULL, allocates space using new, else
// copies into buf.
// IMPORTANT NOTE getcwd is know not to work under some releases
// of Win32s 1.3, according to MS release notes!
-WXDLLIMPEXP_BASE wxChar* wxGetWorkingDirectory(wxChar *buf = (wxChar *) NULL, int sz = 1000);
+wxDEPRECATED( WXDLLIMPEXP_BASE wxChar* wxGetWorkingDirectory(wxChar *buf = (wxChar *) NULL, int sz = 1000) );
// new and preferred version of wxGetWorkingDirectory
// NB: can't have the same name because of overloading ambiguity
+#endif // WXWIN_COMPATIBILITY_2_6
WXDLLIMPEXP_BASE wxString wxGetCwd();
// Set working directory
WXDLLIMPEXP_BASE wxFileKind wxGetFileKind(int fd);
WXDLLIMPEXP_BASE wxFileKind wxGetFileKind(FILE *fp);
+#if WXWIN_COMPATIBILITY_2_6
// compatibility defines, don't use in new code
-// consider removal droping 2.4 compatibility
-// #if WXWIN_COMPATIBILITY_2_4
wxDEPRECATED( inline bool wxPathExists(const wxChar *pszPathName) );
inline bool wxPathExists(const wxChar *pszPathName)
{
return wxDirExists(pszPathName);
}
-// #endif //WXWIN_COMPATIBILITY_2_4
+#endif //WXWIN_COMPATIBILITY_2_6
+
+// permissions; these functions work both on files and directories:
+WXDLLIMPEXP_BASE bool wxIsWritable(const wxString &path);
+WXDLLIMPEXP_BASE bool wxIsReadable(const wxString &path);
+WXDLLIMPEXP_BASE bool wxIsExecutable(const wxString &path);
// ----------------------------------------------------------------------------
// separators in file names
// On non-Windows platform, probably just return the empty string.
WXDLLIMPEXP_BASE wxString wxGetOSDirectory();
+#if wxUSE_DATETIME
+
// Get file modification time
WXDLLIMPEXP_BASE time_t wxFileModificationTime(const wxString& filename);
+#endif // wxUSE_DATETIME
+
// Parses the wildCard, returning the number of filters.
// Returns 0 if none or if there's a problem,
// The arrays will contain an equal number of items found before the error.
// Path searching
-class WXDLLIMPEXP_BASE wxPathList : public wxStringList
+class WXDLLIMPEXP_BASE wxPathList : public wxArrayString
{
public:
- // avoid GCC warning about virtual functions w/o virtual dtor
- virtual ~wxPathList() {}
+ wxPathList() {}
+ wxPathList(const wxArrayString &arr)
+ { Add(arr); }
// Adds all paths in environment variable
void AddEnvList(const wxString& envVariable);
+ // Adds given path to this list
void Add(const wxString& path);
+ void Add(const wxArrayString &paths);
+
// Find the first full path for which the file exists
- wxString FindValidPath(const wxString& filename);
+ wxString FindValidPath(const wxString& filename) const;
+
// Find the first full path for which the file exists; ensure it's an
// absolute path that gets returned.
- wxString FindAbsoluteValidPath(const wxString& filename);
+ wxString FindAbsoluteValidPath(const wxString& filename) const;
+
// Given full path and filename, add path to list
void EnsureFileAccessible(const wxString& path);
- // Returns true if the path is in the list
- bool Member(const wxString& path);
-private:
- // DECLARE_DYNAMIC_CLASS(wxPathList)
+ // Returns true if the path is in the list
+ wxDEPRECATED( bool Member(const wxString& path) const );
};
-#endif
- // _WX_FILEFN_H_
+#endif // _WX_FILEFN_H_