From: APTX Date: Mon, 8 Aug 2011 21:32:55 +0000 (+0200) Subject: Fix renaming files with FileRenameDelegate. The file extension (with dot) is appended... X-Git-Url: https://gitweb.tyo.aptx.org/?a=commitdiff_plain;h=de181dd9bbfc169085b5ef7aae1b84b28f87dc2a;p=anidbudpclient.git Fix renaming files with FileRenameDelegate. The file extension (with dot) is appended automatically, the Type variable holds the Anime type (not the file type). --- diff --git a/file.cpp b/file.cpp index a97bb96..982d930 100644 --- a/file.cpp +++ b/file.cpp @@ -286,8 +286,8 @@ qDebug() << "finishRenaming"; newFileName.replace('"', "'"); newFileName.replace(QRegExp("[\\/]"), "-"); newFileName.replace(QRegExp("[\\/:*?\"<>|]"), ""); -#ifdef ANIDBUDPCLIENT_FILE_DEBUG -qDebug() << newFileName; +#ifdef ANIDBUDPCLIENT_RENAME_DEBUG +qDebug() << "New file name:" << newFileName; #endif QFile file(m_file.absoluteFilePath()); diff --git a/filerenamedelegate.cpp b/filerenamedelegate.cpp index a40ccb6..90b8d80 100644 --- a/filerenamedelegate.cpp +++ b/filerenamedelegate.cpp @@ -2,6 +2,8 @@ #include "filecommand.h" +#include + namespace AniDBUdpClient { FileRenameDelegate::FileRenameDelegate(RenameParser::RenameEngine *renameEngine, QObject *parent) : @@ -94,7 +96,7 @@ void FileRenameDelegate::rename(const AniDBUdpClient::FileReply *reply, QString } - env["Type"] = reply->value(FileFlag::FileType).toString(); + env["Type"] = reply->value(FileAnimeFlag::Type).toString(); env["Depr"] = reply->value(FileFlag::IsDeprecated).toInt() ? "1" : ""; const int state = reply->value(FileFlag::State).toInt(); @@ -119,9 +121,14 @@ void FileRenameDelegate::rename(const AniDBUdpClient::FileReply *reply, QString env["FALng"] = reply->value(FileFlag::DubLanguage).toString(); env["FSLng"] = reply->value(FileFlag::SubLanguage).toString(); +#ifdef ANIDBUDPCLIENT_RENAME_DEBUG +qDebug() << "Rename ENV:" << env; +qDebug() << "Rename Script:" << m_renameEngine->renameString(); +#endif + m_renameEngine->evaluate(env); - fileName = env.value("FileName", ""); + fileName = env.value("FileName", "") + "." + reply->value(FileFlag::FileType).toString(); filePath = env.value("FilePath", ""); #endif } @@ -138,7 +145,6 @@ void FileRenameDelegate::updateMasks() if (init) { - fMaskVars["Type"] = FileFlag::FileType; fMaskVars["Depr"] = FileFlag::IsDeprecated; fMaskVars["Cen"] = FileFlag::State; fMaskVars["Ver"] = FileFlag::State; @@ -168,6 +174,8 @@ void FileRenameDelegate::updateMasks() aMaskVars["EpHiNo"] = FileAnimeFlag::AnimeTotalEpisodes; aMaskVars["EpCount"] = FileAnimeFlag::HighestEpisodeNumber; + aMaskVars["Type"] = FileAnimeFlag::Type; + init = false; } @@ -175,8 +183,10 @@ void FileRenameDelegate::updateMasks() return; QStringList usedVars = m_renameEngine->usedVariables(); - - fMask = 0; +#ifdef ANIDBUDPCLIENT_RENAME_DEBUG +qDebug() << "Used Variables:" << usedVars; +#endif + fMask = FileFlag::FileType; aMask = 0; foreach (const QString &var, usedVars)