refactor: Use a single indexed pack for mods

Since there's little difference between them, let's remove duplication
and merge them.
This commit is contained in:
flow
2022-03-02 18:35:59 -03:00
parent ca211558b5
commit 881b2f2b38
13 changed files with 137 additions and 166 deletions

View File

@ -39,7 +39,7 @@ QVariant ListModel::data(const QModelIndex &index, int role) const
return QString("INVALID INDEX %1").arg(pos);
}
IndexedPack pack = modpacks.at(pos);
ModPlatform::IndexedPack pack = modpacks.at(pos);
if(role == Qt::DisplayRole)
{
return pack.name;
@ -225,12 +225,12 @@ void ListModel::searchRequestFinished()
return;
}
QList<FlameMod::IndexedPack> newList;
QList<ModPlatform::IndexedPack> newList;
auto packs = doc.array();
for(auto packRaw : packs) {
auto packObj = packRaw.toObject();
FlameMod::IndexedPack pack;
ModPlatform::IndexedPack pack;
try
{
FlameMod::loadIndexedPack(pack, packObj);

View File

@ -57,7 +57,7 @@ private:
void requestLogo(QString file, QString url);
private:
QList<IndexedPack> modpacks;
QList<ModPlatform::IndexedPack> modpacks;
QStringList m_failedLogos;
QStringList m_loadingLogos;
LogoMap m_logoMap;

View File

@ -77,7 +77,7 @@ void FlameModPage::onSelectionChanged(QModelIndex first, QModelIndex second) {
return;
}
current = listModel->data(first, Qt::UserRole).value<FlameMod::IndexedPack>();
current = listModel->data(first, Qt::UserRole).value<ModPlatform::IndexedPack>();
QString text = "";
QString name = current.name;
@ -86,7 +86,7 @@ void FlameModPage::onSelectionChanged(QModelIndex first, QModelIndex second) {
else
text = "<a href=\"" + current.websiteUrl + "\">" + name + "</a>";
if (!current.authors.empty()) {
auto authorToStr = [](FlameMod::ModpackAuthor &author) {
auto authorToStr = [](ModPlatform::ModpackAuthor &author) {
if (author.url.isEmpty()) {
return author.name;
}
@ -112,7 +112,7 @@ void FlameModPage::onSelectionChanged(QModelIndex first, QModelIndex second) {
new NetJob(QString("Flame::ModVersions(%1)").arg(current.name),
APPLICATION->network());
auto response = new QByteArray();
int addonId = current.addonId;
int addonId = current.addonId.toInt();
netJob->addNetAction(Net::Download::makeByteArray(
QString("https://addons-ecs.forgesvc.net/api/v2/addon/%1/files")
.arg(addonId),

View File

@ -62,7 +62,7 @@ private:
Ui::FlameModPage *ui = nullptr;
ModDownloadDialog* dialog = nullptr;
FlameMod::ListModel* listModel = nullptr;
FlameMod::IndexedPack current;
ModPlatform::IndexedPack current;
int selectedVersion = -1;
};