X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f0ce3409421a7c5c800a2255295274187220e8de..1d8c3e58b88ecef633154776708fc90fba221b5c:/include/wx/filename.h diff --git a/include/wx/filename.h b/include/wx/filename.h index cf6cd1d18e..cf12b36501 100644 --- a/include/wx/filename.h +++ b/include/wx/filename.h @@ -36,6 +36,7 @@ // ridiculously enough, this will replace DirExists with wxDirExists etc #include "wx/filefn.h" +#include "wx/datetime.h" // ---------------------------------------------------------------------------- // constants @@ -50,6 +51,7 @@ enum wxPathFormat wxPATH_UNIX, wxPATH_MAC, wxPATH_DOS, + wxPATH_VMS, wxPATH_BEOS = wxPATH_UNIX, wxPATH_WIN = wxPATH_DOS, @@ -101,14 +103,6 @@ public: wxPathFormat format = wxPATH_NATIVE) { Assign(path, name, ext, format); } - // assorted assignment operators - - wxFileName& operator=(const wxFileName& filename) - { Assign(filename); return *this; } - - wxFileName& operator=(const wxString& filename) - { Assign(filename); return *this; } - // the same for delayed initialization // VZ: wouldn't it be better to call this Create() for consistency with @@ -127,6 +121,14 @@ public: void AssignDir(const wxString& dir, wxPathFormat format = wxPATH_NATIVE) { Assign(dir, _T(""), format); } + // assorted assignment operators + + wxFileName& operator=(const wxFileName& filename) + { Assign(filename); return *this; } + + wxFileName& operator=(const wxString& filename) + { Assign(filename); return *this; } + // reset all components to default, uninitialized state void Clear(); @@ -134,7 +136,7 @@ public: static wxFileName FileName(const wxString& file); static wxFileName DirName(const wxString& dir); - // test for existence + // file tests // is the filename valid at all? bool IsOk() const { return !m_dirs.IsEmpty() || !m_name.IsEmpty(); } @@ -149,6 +151,31 @@ public: // VZ: also need: IsDirWritable(), IsFileExecutable() &c (TODO) + // time functions + + // set the file creation and last access/mod times + // (any of the pointers may be NULL) + bool SetTimes(const wxDateTime *dtCreate, + const wxDateTime *dtAccess, + const wxDateTime *dtMod); + + // set the access and modification times to the current moment + bool Touch(); + + // return the last access, last modification and last change times + // (any of the pointers may be NULL) + bool GetTimes(wxDateTime *dtAccess, + wxDateTime *dtMod, + wxDateTime *dtChange) const; + + // convenience wrapper: get just the last mod time of the file + wxDateTime GetModificationTime() const + { + wxDateTime dtMod; + (void)GetTimes(NULL, &dtMod, NULL); + return dtMod; + } + // various file/dir operations // retrieve the value of the current working directory @@ -187,15 +214,15 @@ public: // Comparison + // compares with the rules of this platform + bool SameAs(const wxFileName &filepath, + wxPathFormat format = wxPATH_NATIVE); + // uses the current platform settings bool operator==(const wxFileName& filename) { return SameAs(filename); } bool operator==(const wxString& filename) { return *this == wxFileName(filename); } - // compares with the rules of this platform - bool SameAs(const wxFileName &filepath, - wxPathFormat format = wxPATH_NATIVE); - // Tests static bool IsCaseSensitive( wxPathFormat format = wxPATH_NATIVE ); bool IsRelative( wxPathFormat format = wxPATH_NATIVE );