X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/04c943b139c676dc63320fcec3ad03d26d382986..af01f1ba0d697c07173f436ab661b4c833258a91:/include/wx/filename.h diff --git a/include/wx/filename.h b/include/wx/filename.h index d652009ce7..36680b9fcb 100644 --- a/include/wx/filename.h +++ b/include/wx/filename.h @@ -96,6 +96,14 @@ public: wxPathFormat format = wxPATH_NATIVE) { Assign(path, name, format); } + // from a volume, directory name, file base name and extension + wxFileName(const wxString& volume, + const wxString& path, + const wxString& name, + const wxString& ext, + wxPathFormat format = wxPATH_NATIVE) + { Assign(volume, path, name, ext, format); } + // from a directory name, file base name and extension wxFileName(const wxString& path, const wxString& name, @@ -129,8 +137,7 @@ public: Assign(_T(""), path, name, ext, format); } - void AssignDir(const wxString& dir, wxPathFormat format = wxPATH_NATIVE) - { Assign(dir, _T(""), format); } + void AssignDir(const wxString& dir, wxPathFormat format = wxPATH_NATIVE); // assorted assignment operators @@ -190,8 +197,8 @@ public: // various file/dir operations // retrieve the value of the current working directory - void AssignCwd(); - static wxString GetCwd(); + void AssignCwd(const wxString& volume = wxEmptyString); + static wxString GetCwd(const wxString& volume = wxEmptyString); // change the current working directory bool SetCwd(); @@ -201,8 +208,9 @@ public: void AssignHomeDir(); static wxString GetHomeDir(); - // get a temp file name starting with thespecified prefix - void AssignTempFileName( const wxString &prefix ); + // get a temp file name starting with the specified prefix + void AssignTempFileName(const wxString& prefix); + static wxString CreateTempFileName(const wxString& prefix); // directory creation and removal. // if full is TRUE, will try to make each directory in the path. @@ -223,6 +231,18 @@ public: const wxString& cwd = wxEmptyString, wxPathFormat format = wxPATH_NATIVE); + // get a path path relative to the given base directory, i.e. opposite + // of Normalize + // + // pass an empty string to get a path relative to the working directory + // + // returns TRUE if the file name was modified, FALSE if we failed to do + // anything with it (happens when the file is on a different volume, + // for example) + bool MakeRelativeTo(const wxString& pathBase = _T(""), + wxPathFormat format = wxPATH_NATIVE); + + // Comparison // compares with the rules of this platform @@ -322,10 +342,7 @@ public: wxString *path, wxString *name, wxString *ext, - wxPathFormat format = wxPATH_NATIVE) - { - SplitPath(fullpath, NULL, path, name, ext, format); - } + wxPathFormat format = wxPATH_NATIVE); private: // the drive/volume/device specification (always empty for Unix)