make OracleImporter no longer extend CardDatabase

This commit is contained in:
RickyRister 2025-04-20 14:58:42 -07:00
parent 7dcf5e0c71
commit 759bf74ad8
2 changed files with 20 additions and 4 deletions

View file

@ -19,7 +19,7 @@ SplitCardPart::SplitCardPart(const QString &_name,
const QRegularExpression OracleImporter::formatRegex = QRegularExpression("^format-");
OracleImporter::OracleImporter(const QString &_dataDir, QObject *parent) : CardDatabase(parent), dataDir(_dataDir)
OracleImporter::OracleImporter(const QString &_dataDir, QObject *parent) : QObject(parent), dataDir(_dataDir)
{
}
@ -494,6 +494,7 @@ bool OracleImporter::saveToFile(const QString &fileName, const QString &sourceUr
void OracleImporter::clear()
{
CardDatabase::clear();
sets.clear();
cards.clear();
allSets.clear();
}

View file

@ -4,7 +4,7 @@
#include <QMap>
#include <QRegularExpression>
#include <QVariant>
#include <game/cards/card_database.h>
#include <game/cards/card_info.h>
#include <utility>
// many users prefer not to see these sets with non english arts
@ -117,13 +117,24 @@ private:
CardInfoPerSet setInfo;
};
class OracleImporter : public CardDatabase
class OracleImporter : public QObject
{
Q_OBJECT
private:
const QStringList mainCardTypes = {"Planeswalker", "Creature", "Land", "Sorcery",
"Instant", "Artifact", "Enchantment"};
static const QRegularExpression formatRegex;
/**
* The cards, indexed by name.
*/
CardNameMap cards;
/**
* The sets, indexed by short name.
*/
SetNameMap sets;
QList<SetToDownload> allSets;
QVariantMap setsMap;
QString dataDir;
@ -146,6 +157,10 @@ public:
int startImport();
bool saveToFile(const QString &fileName, const QString &sourceUrl, const QString &sourceVersion);
int importCardsFromSet(const CardSetPtr &currentSet, const QList<QVariant> &cards);
const CardNameMap &getCardList() const
{
return cards;
}
QList<SetToDownload> &getSets()
{
return allSets;