Simplify IndexedVersionType::VersionType -> IndexedVersionType
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
This commit is contained in:
@@ -195,9 +195,9 @@ auto Mod::mcVersions() const -> QString
|
||||
auto Mod::releaseType() const -> QString
|
||||
{
|
||||
if (metadata())
|
||||
return metadata()->releaseType.toString();
|
||||
return ModPlatform::indexedVersionTypeToString(metadata()->releaseType);
|
||||
|
||||
return ModPlatform::IndexedVersionType().toString();
|
||||
return ModPlatform::indexedVersionTypeToString(ModPlatform::IndexedVersionType::Unknown);
|
||||
}
|
||||
|
||||
auto Mod::description() const -> QString
|
||||
|
||||
@@ -25,10 +25,10 @@
|
||||
|
||||
namespace ModPlatform {
|
||||
|
||||
static const QMap<QString, IndexedVersionType::VersionType> s_indexed_version_type_names = {
|
||||
{ "release", IndexedVersionType::VersionType::Release },
|
||||
{ "beta", IndexedVersionType::VersionType::Beta },
|
||||
{ "alpha", IndexedVersionType::VersionType::Alpha }
|
||||
static const QMap<QString, IndexedVersionType> s_indexed_version_type_names = {
|
||||
{ "release", IndexedVersionType::Release },
|
||||
{ "beta", IndexedVersionType::Beta },
|
||||
{ "alpha", IndexedVersionType::Alpha }
|
||||
};
|
||||
|
||||
static const QList<ModLoaderType> loaderList = { NeoForge, Forge, Cauldron, LiteLoader, Quilt, Fabric,
|
||||
@@ -45,32 +45,12 @@ QList<ModLoaderType> modLoaderTypesToList(ModLoaderTypes flags)
|
||||
return flagList;
|
||||
}
|
||||
|
||||
IndexedVersionType::IndexedVersionType(const QString& type) : IndexedVersionType(enumFromString(type)) {}
|
||||
|
||||
IndexedVersionType::IndexedVersionType(const IndexedVersionType::VersionType& type)
|
||||
{
|
||||
m_type = type;
|
||||
}
|
||||
|
||||
IndexedVersionType::IndexedVersionType(const IndexedVersionType& other)
|
||||
{
|
||||
m_type = other.m_type;
|
||||
}
|
||||
|
||||
IndexedVersionType& IndexedVersionType::operator=(const IndexedVersionType& other)
|
||||
{
|
||||
m_type = other.m_type;
|
||||
return *this;
|
||||
}
|
||||
|
||||
const QString IndexedVersionType::toString(const IndexedVersionType::VersionType& type)
|
||||
{
|
||||
QString indexedVersionTypeToString(IndexedVersionType type) {
|
||||
return s_indexed_version_type_names.key(type, "unknown");
|
||||
}
|
||||
|
||||
IndexedVersionType::VersionType IndexedVersionType::enumFromString(const QString& type)
|
||||
{
|
||||
return s_indexed_version_type_names.value(type, IndexedVersionType::VersionType::Unknown);
|
||||
IndexedVersionType indexedVersionTypeFromString(const QString& type) {
|
||||
return s_indexed_version_type_names.value(type, IndexedVersionType::Unknown);
|
||||
}
|
||||
|
||||
const char* ProviderCapabilities::name(ResourceProvider p)
|
||||
|
||||
@@ -74,33 +74,9 @@ struct DonationData {
|
||||
QString url;
|
||||
};
|
||||
|
||||
struct IndexedVersionType {
|
||||
enum class VersionType { Release = 1, Beta, Alpha, Unknown };
|
||||
IndexedVersionType(const QString& type);
|
||||
IndexedVersionType(const IndexedVersionType::VersionType& type);
|
||||
IndexedVersionType(const IndexedVersionType& type);
|
||||
IndexedVersionType() : IndexedVersionType(IndexedVersionType::VersionType::Unknown) {}
|
||||
static const QString toString(const IndexedVersionType::VersionType& type);
|
||||
static IndexedVersionType::VersionType enumFromString(const QString& type);
|
||||
bool isValid() const { return m_type != IndexedVersionType::VersionType::Unknown; }
|
||||
IndexedVersionType& operator=(const IndexedVersionType& other);
|
||||
bool operator==(const IndexedVersionType& other) const { return m_type == other.m_type; }
|
||||
bool operator==(const IndexedVersionType::VersionType& type) const { return m_type == type; }
|
||||
bool operator!=(const IndexedVersionType& other) const { return m_type != other.m_type; }
|
||||
bool operator!=(const IndexedVersionType::VersionType& type) const { return m_type != type; }
|
||||
bool operator<(const IndexedVersionType& other) const { return m_type < other.m_type; }
|
||||
bool operator<(const IndexedVersionType::VersionType& type) const { return m_type < type; }
|
||||
bool operator<=(const IndexedVersionType& other) const { return m_type <= other.m_type; }
|
||||
bool operator<=(const IndexedVersionType::VersionType& type) const { return m_type <= type; }
|
||||
bool operator>(const IndexedVersionType& other) const { return m_type > other.m_type; }
|
||||
bool operator>(const IndexedVersionType::VersionType& type) const { return m_type > type; }
|
||||
bool operator>=(const IndexedVersionType& other) const { return m_type >= other.m_type; }
|
||||
bool operator>=(const IndexedVersionType::VersionType& type) const { return m_type >= type; }
|
||||
|
||||
QString toString() const { return toString(m_type); }
|
||||
|
||||
IndexedVersionType::VersionType m_type;
|
||||
};
|
||||
enum class IndexedVersionType { Unknown, Release = 1, Beta, Alpha };
|
||||
IndexedVersionType indexedVersionTypeFromString(const QString& type);
|
||||
QString indexedVersionTypeToString(IndexedVersionType type);
|
||||
|
||||
struct Dependency {
|
||||
QVariant addonId;
|
||||
@@ -131,7 +107,7 @@ struct IndexedVersion {
|
||||
|
||||
QString getVersionDisplayString() const
|
||||
{
|
||||
auto release_type = version_type.isValid() ? QString(" [%1]").arg(version_type.toString()) : "";
|
||||
auto release_type = version_type != IndexedVersionType::Unknown ? QString(" [%1]").arg(indexedVersionTypeToString(version_type)) : "";
|
||||
auto versionStr = !version.contains(version_number) ? version_number : "";
|
||||
QString gameVersion = "";
|
||||
for (auto v : mcVersion) {
|
||||
|
||||
@@ -143,21 +143,22 @@ auto FlameMod::loadIndexedPackVersion(QJsonObject& obj, bool load_changelog) ->
|
||||
file.fileName = Json::requireString(obj, "fileName");
|
||||
file.fileName = FS::RemoveInvalidPathChars(file.fileName);
|
||||
|
||||
ModPlatform::IndexedVersionType::VersionType ver_type;
|
||||
ModPlatform::IndexedVersionType ver_type;
|
||||
switch (Json::requireInteger(obj, "releaseType")) {
|
||||
case 1:
|
||||
ver_type = ModPlatform::IndexedVersionType::VersionType::Release;
|
||||
ver_type = ModPlatform::IndexedVersionType::Release;
|
||||
break;
|
||||
case 2:
|
||||
ver_type = ModPlatform::IndexedVersionType::VersionType::Beta;
|
||||
ver_type = ModPlatform::IndexedVersionType::Beta;
|
||||
break;
|
||||
case 3:
|
||||
ver_type = ModPlatform::IndexedVersionType::VersionType::Alpha;
|
||||
ver_type = ModPlatform::IndexedVersionType::Alpha;
|
||||
break;
|
||||
default:
|
||||
ver_type = ModPlatform::IndexedVersionType::VersionType::Unknown;
|
||||
ver_type = ModPlatform::IndexedVersionType::Unknown;
|
||||
break;
|
||||
}
|
||||
file.version_type = ModPlatform::IndexedVersionType(ver_type);
|
||||
file.version_type = ver_type;
|
||||
|
||||
auto hash_list = obj["hashes"].toArray();
|
||||
for (auto h : hash_list) {
|
||||
|
||||
@@ -145,7 +145,7 @@ ModPlatform::IndexedVersion Modrinth::loadIndexedPackVersion(QJsonObject& obj, Q
|
||||
}
|
||||
file.version = Json::requireString(obj, "name");
|
||||
file.version_number = Json::requireString(obj, "version_number");
|
||||
file.version_type = ModPlatform::IndexedVersionType(Json::requireString(obj, "version_type"));
|
||||
file.version_type = ModPlatform::indexedVersionTypeFromString(Json::requireString(obj, "version_type"));
|
||||
|
||||
file.changelog = Json::requireString(obj, "changelog");
|
||||
|
||||
|
||||
@@ -198,7 +198,7 @@ void V1::updateModIndex(const QDir& index_dir, Mod& mod)
|
||||
{ "side", ModPlatform::SideUtils::toString(mod.side).toStdString() },
|
||||
{ "x-prismlauncher-loaders", loaders },
|
||||
{ "x-prismlauncher-mc-versions", mcVersions },
|
||||
{ "x-prismlauncher-release-type", mod.releaseType.toString().toStdString() },
|
||||
{ "x-prismlauncher-release-type", ModPlatform::indexedVersionTypeToString(mod.releaseType).toStdString() },
|
||||
{ "x-prismlauncher-version-number", mod.version_number.toStdString() },
|
||||
{ "download",
|
||||
toml::table{
|
||||
@@ -272,7 +272,7 @@ auto V1::getIndexForMod(const QDir& index_dir, QString slug) -> Mod
|
||||
mod.name = stringEntry(table, "name");
|
||||
mod.filename = stringEntry(table, "filename");
|
||||
mod.side = ModPlatform::SideUtils::fromString(stringEntry(table, "side"));
|
||||
mod.releaseType = ModPlatform::IndexedVersionType(table["x-prismlauncher-release-type"].value_or(""));
|
||||
mod.releaseType = ModPlatform::indexedVersionTypeFromString(table["x-prismlauncher-release-type"].value_or(""));
|
||||
if (auto loaders = table["x-prismlauncher-loaders"]; loaders && loaders.is_array()) {
|
||||
for (auto&& loader : *loaders.as_array()) {
|
||||
if (loader.is_string()) {
|
||||
|
||||
@@ -187,7 +187,8 @@ void ResourceDownloadDialog::confirm()
|
||||
auto extraInfo = dependencyExtraInfo.value(task->getPack()->addonId.toString());
|
||||
confirm_dialog->appendResource({ task->getName(), task->getFilename(), task->getCustomPath(),
|
||||
ModPlatform::ProviderCapabilities::name(task->getProvider()), extraInfo.required_by,
|
||||
task->getVersion().version_type.toString(), !extraInfo.maybe_installed });
|
||||
ModPlatform::indexedVersionTypeToString(task->getVersion().version_type),
|
||||
!extraInfo.maybe_installed });
|
||||
}
|
||||
|
||||
if (confirm_dialog->exec()) {
|
||||
|
||||
@@ -453,8 +453,8 @@ void ResourceUpdateDialog::appendResource(CheckUpdateTask::Update const& info, Q
|
||||
|
||||
if (info.new_version_type.has_value()) {
|
||||
auto new_version_type_item = new QTreeWidgetItem(item_top);
|
||||
new_version_type_item->setText(0, tr("New Version Type: %1").arg(info.new_version_type.value().toString()));
|
||||
new_version_type_item->setData(0, Qt::UserRole, info.new_version_type.value().toString());
|
||||
new_version_type_item->setText(0, tr("New Version Type: %1").arg(indexedVersionTypeToString(info.new_version_type.value())));
|
||||
new_version_type_item->setData(0, Qt::UserRole, indexedVersionTypeToString(info.new_version_type.value()));
|
||||
}
|
||||
|
||||
if (!requiredBy.isEmpty()) {
|
||||
|
||||
@@ -297,8 +297,8 @@ void ResourcePage::versionListUpdated(const QModelIndex& index)
|
||||
continue;
|
||||
|
||||
auto versionText = version.version;
|
||||
if (version.version_type.isValid()) {
|
||||
versionText += QString(" [%1]").arg(version.version_type.toString());
|
||||
if (version.version_type != ModPlatform::IndexedVersionType::Unknown) {
|
||||
versionText += QString(" [%1]").arg(ModPlatform::indexedVersionTypeToString(version.version_type));
|
||||
}
|
||||
if (version.fileId == installedVersion) {
|
||||
versionText += tr(" [installed]", "Mod version select");
|
||||
|
||||
@@ -387,13 +387,13 @@ void ModFilterWidget::onReleaseFilterChanged()
|
||||
{
|
||||
std::list<ModPlatform::IndexedVersionType> releases;
|
||||
if (ui->releaseCb->isChecked())
|
||||
releases.push_back(ModPlatform::IndexedVersionType(ModPlatform::IndexedVersionType::VersionType::Release));
|
||||
releases.push_back(ModPlatform::IndexedVersionType::Release);
|
||||
if (ui->betaCb->isChecked())
|
||||
releases.push_back(ModPlatform::IndexedVersionType(ModPlatform::IndexedVersionType::VersionType::Beta));
|
||||
releases.push_back(ModPlatform::IndexedVersionType::Beta);
|
||||
if (ui->alphaCb->isChecked())
|
||||
releases.push_back(ModPlatform::IndexedVersionType(ModPlatform::IndexedVersionType::VersionType::Alpha));
|
||||
releases.push_back(ModPlatform::IndexedVersionType::Alpha);
|
||||
if (ui->unknownCb->isChecked())
|
||||
releases.push_back(ModPlatform::IndexedVersionType(ModPlatform::IndexedVersionType::VersionType::Unknown));
|
||||
releases.push_back(ModPlatform::IndexedVersionType::Unknown);
|
||||
m_filter_changed = releases != m_filter->releases;
|
||||
m_filter->releases = releases;
|
||||
if (m_filter_changed)
|
||||
|
||||
Reference in New Issue
Block a user