+ //Generate full output path
+ outFileName = QString("%1/%2.%3").arg(targetDir.canonicalPath(), fileName, m_encoder->extension());
+
+ //Skip file, if target file exists (optional!)
+ if(m_overwriteSkipExistingFile && QFileInfo(outFileName).exists())
+ {
+ handleMessage(QString("%1\n%2\n").arg(tr("Target output file already exists, going to skip this file:"), QDir::toNativeSeparators(outFileName)));
+ handleMessage(tr("If you don't want existing files to be skipped, please change the overwrite mode!"));
+ return -1;
+ }
+
+ //Delete file, if target file exists (optional!)
+ if(m_overwriteReplacesExisting && QFileInfo(outFileName).exists())
+ {
+ handleMessage(QString("%1\n%2\n").arg(tr("Target output file already exists, going to delete existing file:"), QDir::toNativeSeparators(outFileName)));
+ bool bOkay = false;
+ for(int i = 0; i < 16; i++)
+ {
+ bOkay = QFile::remove(outFileName);
+ if(bOkay) break;
+ QThread::msleep(125);
+ }
+ if(QFileInfo(outFileName).exists() || (!bOkay))
+ {
+ handleMessage(QString("%1\n").arg(tr("Failed to delete existing target file, will save to another file name!")));
+ }
+ }
+
+ int n = 1;
+
+ //Generate final name