diff options
Diffstat (limited to 'src/libs/installer/simplemovefileoperation.cpp')
-rw-r--r-- | src/libs/installer/simplemovefileoperation.cpp | 36 |
1 files changed, 16 insertions, 20 deletions
diff --git a/src/libs/installer/simplemovefileoperation.cpp b/src/libs/installer/simplemovefileoperation.cpp index 5f6ea4ff3..d5cbde2ee 100644 --- a/src/libs/installer/simplemovefileoperation.cpp +++ b/src/libs/installer/simplemovefileoperation.cpp @@ -28,11 +28,13 @@ #include "simplemovefileoperation.h" +#include <QDir> #include <QtCore/QFileInfo> namespace QInstaller { -SimpleMoveFileOperation::SimpleMoveFileOperation() +SimpleMoveFileOperation::SimpleMoveFileOperation(PackageManagerCore *core) + : UpdateOperation(core) { setName(QLatin1String("SimpleMoveFile")); } @@ -43,21 +45,17 @@ void SimpleMoveFileOperation::backup() bool SimpleMoveFileOperation::performOperation() { - const QStringList args = arguments(); - if (args.count() != 2) { - setError(InvalidArguments); - setErrorString(tr("Invalid arguments in %0: %1 arguments given, %2 expected%3.") - .arg(name()).arg(arguments().count()).arg(tr("exactly 2"), QLatin1String(""))); + if (!checkArgumentCount(2)) return false; - } + const QStringList args = arguments(); const QString source = args.at(0); const QString target = args.at(1); if (source.isEmpty() || target.isEmpty()) { setError(UserDefinedError); - setErrorString(tr("None of the arguments can be empty: source '%1', target '%2'.") - .arg(source, target)); + setErrorString(tr("None of the arguments can be empty: source \"%1\", target \"%2\".") + .arg(QDir::toNativeSeparators(source), QDir::toNativeSeparators(target))); return false; } @@ -67,8 +65,8 @@ bool SimpleMoveFileOperation::performOperation() if (file.exists()) { if (!file.remove()) { setError(UserDefinedError); - setErrorString(tr("Cannot move source '%1' to target '%2', because target exists and is " - "not removable.").arg(source, target)); + setErrorString(tr("Cannot move file from \"%1\" to \"%2\", because the target path exists and is " + "not removable.").arg(QDir::toNativeSeparators(source), QDir::toNativeSeparators(target))); return false; } } @@ -76,12 +74,14 @@ bool SimpleMoveFileOperation::performOperation() file.setFileName(source); if (!file.rename(target)) { setError(UserDefinedError); - setErrorString(tr("Cannot move source '%1' to target '%2': %3").arg(source, target, - file.errorString())); + setErrorString(tr("Cannot move file \"%1\" to \"%2\": %3").arg( + QDir::toNativeSeparators(source), QDir::toNativeSeparators(target), + file.errorString())); return false; } - emit outputTextChanged(tr("Move '%1' to '%2'.").arg(source, target)); + emit outputTextChanged(tr("Moving file \"%1\" to \"%2\".").arg(QDir::toNativeSeparators(source), + QDir::toNativeSeparators(target))); return true; } @@ -91,7 +91,8 @@ bool SimpleMoveFileOperation::undoOperation() const QString target = arguments().at(1); QFile(target).rename(source); - emit outputTextChanged(tr("Move '%1' to '%2'.").arg(target, source)); + emit outputTextChanged(tr("Moving file \"%1\" to \"%2\".").arg(QDir::toNativeSeparators(target), + QDir::toNativeSeparators(source))); return true; } @@ -101,9 +102,4 @@ bool SimpleMoveFileOperation::testOperation() return true; } -Operation *SimpleMoveFileOperation::clone() const -{ - return new SimpleMoveFileOperation(); -} - } // namespace QInstaller |