diff options
Diffstat (limited to 'src/libs')
-rw-r--r-- | src/libs/utils/fileutils.cpp | 9 | ||||
-rw-r--r-- | src/libs/utils/fileutils.h | 2 |
2 files changed, 11 insertions, 0 deletions
diff --git a/src/libs/utils/fileutils.cpp b/src/libs/utils/fileutils.cpp index 46395830f33..9311801e069 100644 --- a/src/libs/utils/fileutils.cpp +++ b/src/libs/utils/fileutils.cpp @@ -1415,6 +1415,15 @@ bool FilePath::copyFile(const FilePath &target) const return QFile::copy(path(), target.path()); } +bool FilePath::renameFile(const FilePath &target) const +{ + if (needsDevice()) { + QTC_ASSERT(s_deviceHooks.renameFile, return false); + return s_deviceHooks.renameFile(*this, target); + } + return QFile::rename(path(), target.path()); +} + QTextStream &operator<<(QTextStream &s, const FilePath &fn) { return s << fn.toString(); diff --git a/src/libs/utils/fileutils.h b/src/libs/utils/fileutils.h index b02b7f095f9..808f140ce58 100644 --- a/src/libs/utils/fileutils.h +++ b/src/libs/utils/fileutils.h @@ -79,6 +79,7 @@ public: std::function<bool(const FilePath &)> exists; std::function<bool(const FilePath &)> removeFile; std::function<bool(const FilePath &, const FilePath &)> copyFile; + std::function<bool(const FilePath &, const FilePath &)> renameFile; std::function<FilePath(const FilePath &)> searchInPath; std::function<QList<FilePath>(const FilePath &, const QStringList &, QDir::Filters)> dirEntries; std::function<QByteArray(const FilePath &, int)> fileContents; @@ -167,6 +168,7 @@ public: QFile::Permissions permissions() const; bool removeFile() const; bool copyFile(const FilePath &target) const; + bool renameFile(const FilePath &target) const; Qt::CaseSensitivity caseSensitivity() const; |