1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-24 22:14:36 +02:00

Added missing strings to Qt translations

This commit is contained in:
Ivan Savenko 2024-05-01 12:43:20 +03:00
parent 45e35f357d
commit 09a233acba
6 changed files with 42 additions and 36 deletions

View File

@ -301,7 +301,7 @@ void FirstLaunchView::extractGogData()
QString titleSel = tr("Select %1 file...", "param is file extension").arg(filter); QString titleSel = tr("Select %1 file...", "param is file extension").arg(filter);
QString titleErr = tr("You have to select %1 file!", "param is file extension").arg(filter); QString titleErr = tr("You have to select %1 file!", "param is file extension").arg(filter);
#if defined(VCMI_MOBILE) #if defined(VCMI_MOBILE)
filter = "GOG file (*.*)"; filter = tr("GOG file (*.*)");
QMessageBox::information(this, tr("File selection"), titleSel); QMessageBox::information(this, tr("File selection"), titleSel);
#endif #endif
QString file = QFileDialog::getOpenFileName(this, titleSel, startPath.isEmpty() ? QDir::homePath() : startPath, filter); QString file = QFileDialog::getOpenFileName(this, titleSel, startPath.isEmpty() ? QDir::homePath() : startPath, filter);

View File

@ -17,14 +17,20 @@
QString CModEntry::sizeToString(double size) QString CModEntry::sizeToString(double size)
{ {
static const std::array<QString, 5> sizes { "%1 B", "%1 KiB", "%1 MiB", "%1 GiB", "%1 TiB" }; static const std::array sizes {
QT_TRANSLATE_NOOP("File size", "%1 B"),
QT_TRANSLATE_NOOP("File size", "%1 KiB"),
QT_TRANSLATE_NOOP("File size", "%1 MiB"),
QT_TRANSLATE_NOOP("File size", "%1 GiB"),
QT_TRANSLATE_NOOP("File size", "%1 TiB")
};
size_t index = 0; size_t index = 0;
while(size > 1024 && index < sizes.size()) while(size > 1024 && index < sizes.size())
{ {
size /= 1024; size /= 1024;
index++; index++;
} }
return sizes[index].arg(QString::number(size, 'f', 1)); return QCoreApplication::translate("File size", sizes[index]).arg(QString::number(size, 'f', 1));
} }
CModEntry::CModEntry(QVariantMap repository, QVariantMap localData, QVariantMap modSettings, QString modname) CModEntry::CModEntry(QVariantMap repository, QVariantMap localData, QVariantMap modSettings, QString modname)

View File

@ -169,15 +169,15 @@ QVariant CModListModel::headerData(int section, Qt::Orientation orientation, int
{ {
static const QString header[ModFields::COUNT] = static const QString header[ModFields::COUNT] =
{ {
QT_TR_NOOP("Name"), QT_TRANSLATE_NOOP("ModFields", "Name"),
QT_TR_NOOP(""), // status icon QT_TRANSLATE_NOOP("ModFields", ""), // status icon
QT_TR_NOOP(""), // status icon QT_TRANSLATE_NOOP("ModFields", ""), // status icon
QT_TR_NOOP("Type"), QT_TRANSLATE_NOOP("ModFields", "Type"),
QT_TR_NOOP("Version"), QT_TRANSLATE_NOOP("ModFields", "Version"),
}; };
if(role == Qt::DisplayRole && orientation == Qt::Horizontal) if(role == Qt::DisplayRole && orientation == Qt::Horizontal)
return QCoreApplication::translate("ModFields", header[section].toStdString().c_str()); return QCoreApplication::translate("ModFields", header[section].toStdString().c_str()); // !!!
return QVariant(); return QVariant();
} }

View File

@ -307,9 +307,9 @@ QString CModListView::genModInfoText(CModEntry & mod)
if(minStr.isEmpty() || maxStr.isEmpty()) if(minStr.isEmpty() || maxStr.isEmpty())
{ {
if(minStr.isEmpty()) if(minStr.isEmpty())
result += supportedVersions.arg(tr("Supported VCMI version"), maxStr, ", ", "please upgrade mod"); result += supportedVersions.arg(tr("Supported VCMI version"), maxStr, ", ", tr("please upgrade mod"));
else else
result += supportedVersions.arg(tr("Required VCMI version"), minStr, " ", "or above"); result += supportedVersions.arg(tr("Required VCMI version"), minStr, " ", tr("or above"));
} }
else else
result += supportedVersions.arg(tr("Supported VCMI versions"), minStr, " - ", maxStr); result += supportedVersions.arg(tr("Supported VCMI versions"), minStr, " - ", maxStr);
@ -574,7 +574,7 @@ void CModListView::on_updateButton_clicked()
auto mod = modModel->getMod(name); auto mod = modModel->getMod(name);
// update required mod, install missing (can be new dependency) // update required mod, install missing (can be new dependency)
if(mod.isUpdateable() || !mod.isInstalled()) if(mod.isUpdateable() || !mod.isInstalled())
downloadFile(name + ".zip", mod.getValue("download").toString(), "mods", mbToBytes(mod.getValue("downloadSize").toDouble())); downloadFile(name + ".zip", mod.getValue("download").toString(), name, mbToBytes(mod.getValue("downloadSize").toDouble()));
} }
} }
@ -604,7 +604,7 @@ void CModListView::on_installButton_clicked()
{ {
auto mod = modModel->getMod(name); auto mod = modModel->getMod(name);
if(!mod.isInstalled()) if(!mod.isInstalled())
downloadFile(name + ".zip", mod.getValue("download").toString(), "mods", mbToBytes(mod.getValue("downloadSize").toDouble())); downloadFile(name + ".zip", mod.getValue("download").toString(), name, mbToBytes(mod.getValue("downloadSize").toDouble()));
else if(!mod.isEnabled()) else if(!mod.isEnabled())
enableModByName(name); enableModByName(name);
} }
@ -669,7 +669,7 @@ void CModListView::manualInstallFile(QUrl url)
} }
} }
else else
downloadFile(fileName, urlStr, "mods", 0); downloadFile(fileName, urlStr, fileName, 0);
} }
void CModListView::downloadFile(QString file, QString url, QString description, qint64 size) void CModListView::downloadFile(QString file, QString url, QString description, qint64 size)
@ -793,7 +793,7 @@ void CModListView::installFiles(QStringList files)
auto modjson = repoData[key].toMap().value("mod"); auto modjson = repoData[key].toMap().value("mod");
if(!modjson.isNull()) if(!modjson.isNull())
{ {
downloadFile(key + ".json", modjson.toString(), "repository index"); downloadFile(key + ".json", modjson.toString(), tr("repository index"));
} }
} }
} }
@ -957,7 +957,7 @@ void CModListView::loadScreenshots()
if(pixmap.isNull()) if(pixmap.isNull())
{ {
// image file not exists or corrupted - try to redownload // image file not exists or corrupted - try to redownload
downloadFile(fileName, url, "screenshots"); downloadFile(fileName, url, tr("screenshots"));
} }
else else
{ {
@ -994,7 +994,7 @@ void CModListView::doInstallMod(const QString & modName)
{ {
auto mod = modModel->getMod(name); auto mod = modModel->getMod(name);
if(!mod.isInstalled()) if(!mod.isInstalled())
downloadFile(name + ".zip", mod.getValue("download").toString(), "mods", mbToBytes(mod.getValue("downloadSize").toDouble())); downloadFile(name + ".zip", mod.getValue("download").toString(), name, mbToBytes(mod.getValue("downloadSize").toDouble()));
} }
} }

View File

@ -157,10 +157,10 @@ bool CModManager::canInstallMod(QString modname)
auto mod = modList->getMod(modname); auto mod = modList->getMod(modname);
if(mod.isSubmod()) if(mod.isSubmod())
return addError(modname, "Can not install submod"); return addError(modname, tr("Can not install submod"));
if(mod.isInstalled()) if(mod.isInstalled())
return addError(modname, "Mod is already installed"); return addError(modname, tr("Mod is already installed"));
return true; return true;
} }
@ -169,10 +169,10 @@ bool CModManager::canUninstallMod(QString modname)
auto mod = modList->getMod(modname); auto mod = modList->getMod(modname);
if(mod.isSubmod()) if(mod.isSubmod())
return addError(modname, "Can not uninstall submod"); return addError(modname, tr("Can not uninstall submod"));
if(!mod.isInstalled()) if(!mod.isInstalled())
return addError(modname, "Mod is not installed"); return addError(modname, tr("Mod is not installed"));
return true; return true;
} }
@ -182,24 +182,24 @@ bool CModManager::canEnableMod(QString modname)
auto mod = modList->getMod(modname); auto mod = modList->getMod(modname);
if(mod.isEnabled()) if(mod.isEnabled())
return addError(modname, "Mod is already enabled"); return addError(modname, tr("Mod is already enabled"));
if(!mod.isInstalled()) if(!mod.isInstalled())
return addError(modname, "Mod must be installed first"); return addError(modname, tr("Mod must be installed first"));
//check for compatibility //check for compatibility
if(!mod.isCompatible()) if(!mod.isCompatible())
return addError(modname, "Mod is not compatible, please update VCMI and checkout latest mod revisions"); return addError(modname, tr("Mod is not compatible, please update VCMI and checkout latest mod revisions"));
for(auto modEntry : mod.getDependencies()) for(auto modEntry : mod.getDependencies())
{ {
if(!modList->hasMod(modEntry)) // required mod is not available if(!modList->hasMod(modEntry)) // required mod is not available
return addError(modname, QString("Required mod %1 is missing").arg(modEntry)); return addError(modname, tr("Required mod %1 is missing").arg(modEntry));
CModEntry modData = modList->getMod(modEntry); CModEntry modData = modList->getMod(modEntry);
if(!modData.isCompatibilityPatch() && !modData.isEnabled()) if(!modData.isCompatibilityPatch() && !modData.isEnabled())
return addError(modname, QString("Required mod %1 is not enabled").arg(modEntry)); return addError(modname, tr("Required mod %1 is not enabled").arg(modEntry));
} }
for(QString modEntry : modList->getModList()) for(QString modEntry : modList->getModList())
@ -208,14 +208,14 @@ bool CModManager::canEnableMod(QString modname)
// "reverse conflict" - enabled mod has this one as conflict // "reverse conflict" - enabled mod has this one as conflict
if(mod.isEnabled() && mod.getConflicts().contains(modname)) if(mod.isEnabled() && mod.getConflicts().contains(modname))
return addError(modname, QString("This mod conflicts with %1").arg(modEntry)); return addError(modname, tr("This mod conflicts with %1").arg(modEntry));
} }
for(auto modEntry : mod.getConflicts()) for(auto modEntry : mod.getConflicts())
{ {
// check if conflicting mod installed and enabled // check if conflicting mod installed and enabled
if(modList->hasMod(modEntry) && modList->getMod(modEntry).isEnabled()) if(modList->hasMod(modEntry) && modList->getMod(modEntry).isEnabled())
return addError(modname, QString("This mod conflicts with %1").arg(modEntry)); return addError(modname, tr("This mod conflicts with %1").arg(modEntry));
} }
return true; return true;
} }
@ -225,17 +225,17 @@ bool CModManager::canDisableMod(QString modname)
auto mod = modList->getMod(modname); auto mod = modList->getMod(modname);
if(mod.isDisabled()) if(mod.isDisabled())
return addError(modname, "Mod is already disabled"); return addError(modname, tr("Mod is already disabled"));
if(!mod.isInstalled()) if(!mod.isInstalled())
return addError(modname, "Mod must be installed first"); return addError(modname, tr("Mod must be installed first"));
for(QString modEntry : modList->getModList()) for(QString modEntry : modList->getModList())
{ {
auto current = modList->getMod(modEntry); auto current = modList->getMod(modEntry);
if(current.getDependencies().contains(modname) && current.isEnabled()) if(current.getDependencies().contains(modname) && current.isEnabled())
return addError(modname, QString("This mod is needed to run %1").arg(modEntry)); return addError(modname, tr("This mod is needed to run %1").arg(modEntry));
} }
return true; return true;
} }
@ -311,7 +311,7 @@ bool CModManager::doInstallMod(QString modname, QString archivePath)
if(!futureExtract.get()) if(!futureExtract.get())
{ {
removeModDir(destDir + modDirName); removeModDir(destDir + modDirName);
return addError(modname, "Failed to extract mod data"); return addError(modname, tr("Failed to extract mod data"));
} }
//rename folder and fix the path //rename folder and fix the path
@ -339,11 +339,11 @@ bool CModManager::doUninstallMod(QString modname)
QString modDir = pathToQString(*CResourceHandler::get()->getResourceName(resID)); QString modDir = pathToQString(*CResourceHandler::get()->getResourceName(resID));
if(!QDir(modDir).exists()) if(!QDir(modDir).exists())
return addError(modname, "Data with this mod was not found"); return addError(modname, tr("Data with this mod was not found"));
QDir modFullDir(modDir); QDir modFullDir(modDir);
if(!removeModDir(modDir)) if(!removeModDir(modDir))
return addError(modname, "Mod is located in protected directory, please remove it manually:\n" + modFullDir.absolutePath()); return addError(modname, tr("Mod is located in protected directory, please remove it manually:\n") + modFullDir.absolutePath());
CResourceHandler::get("initial")->updateFilteredFiles([](const std::string &){ return true; }); CResourceHandler::get("initial")->updateFilteredFiles([](const std::string &){ return true; });
loadMods(); loadMods();

View File

@ -61,7 +61,7 @@ UpdateDialog::UpdateDialog(bool calledManually, QWidget *parent):
if(response->error() != QNetworkReply::NoError) if(response->error() != QNetworkReply::NoError)
{ {
ui->versionLabel->setStyleSheet("QLabel { background-color : red; color : black; }"); ui->versionLabel->setStyleSheet("QLabel { background-color : red; color : black; }");
ui->versionLabel->setText("Network error"); ui->versionLabel->setText(tr("Network error"));
ui->plainTextEdit->setPlainText(response->errorString()); ui->plainTextEdit->setPlainText(response->errorString());
return; return;
} }
@ -98,7 +98,7 @@ void UpdateDialog::loadFromJson(const JsonNode & node)
node["changeLog"].getType() != JsonNode::JsonType::DATA_STRING || node["changeLog"].getType() != JsonNode::JsonType::DATA_STRING ||
node["downloadLinks"].getType() != JsonNode::JsonType::DATA_STRUCT) //we need at least one link - other are optional node["downloadLinks"].getType() != JsonNode::JsonType::DATA_STRUCT) //we need at least one link - other are optional
{ {
ui->plainTextEdit->setPlainText("Cannot read JSON from url or incorrect JSON data"); ui->plainTextEdit->setPlainText(tr("Cannot read JSON from url or incorrect JSON data"));
return; return;
} }