diff --git a/dbconverter/src/main.h b/dbconverter/src/main.h index 09abfd536..7a5809b1b 100644 --- a/dbconverter/src/main.h +++ b/dbconverter/src/main.h @@ -22,7 +22,7 @@ public: bool saveCardDatabase(const QString &fileName) { - CockatriceXml4Parser parser; + CockatriceXml4Parser parser(new NoopCardPreferenceProvider()); return parser.saveToFile(sets, cards, fileName); } }; diff --git a/libcockatrice_card/libcockatrice/card/database/card_database.cpp b/libcockatrice_card/libcockatrice/card/database/card_database.cpp index aee2d4969..7e23b4663 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database.cpp +++ b/libcockatrice_card/libcockatrice/card/database/card_database.cpp @@ -23,7 +23,7 @@ CardDatabase::CardDatabase(QObject *parent, qRegisterMetaType("CardSetPtr"); // create loader and wire it up - loader = new CardDatabaseLoader(this, this, pathProvider); + loader = new CardDatabaseLoader(this, this, pathProvider, prefs); // re-emit loader signals (so other code doesn't need to know about internals) connect(loader, &CardDatabaseLoader::loadingFinished, this, &CardDatabase::cardDatabaseLoadingFinished); connect(loader, &CardDatabaseLoader::loadingFailed, this, &CardDatabase::cardDatabaseLoadingFailed); diff --git a/libcockatrice_card/libcockatrice/card/database/card_database_loader.cpp b/libcockatrice_card/libcockatrice/card/database/card_database_loader.cpp index f7fd956fb..f56f6a0b5 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database_loader.cpp +++ b/libcockatrice_card/libcockatrice/card/database/card_database_loader.cpp @@ -9,11 +9,14 @@ #include #include -CardDatabaseLoader::CardDatabaseLoader(QObject *parent, CardDatabase *db, ICardDatabasePathProvider *_pathProvider) +CardDatabaseLoader::CardDatabaseLoader(QObject *parent, + CardDatabase *db, + ICardDatabasePathProvider *_pathProvider, + ICardPreferenceProvider *_preferenceProvider) : QObject(parent), database(db), pathProvider(_pathProvider) { // instantiate available parsers here and connect them to the database - availableParsers << new CockatriceXml4Parser; + availableParsers << new CockatriceXml4Parser(_preferenceProvider); availableParsers << new CockatriceXml3Parser; for (auto *p : availableParsers) { diff --git a/libcockatrice_card/libcockatrice/card/database/card_database_loader.h b/libcockatrice_card/libcockatrice/card/database/card_database_loader.h index ea3c6c631..0142b9fce 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database_loader.h +++ b/libcockatrice_card/libcockatrice/card/database/card_database_loader.h @@ -12,6 +12,7 @@ #include #include #include +#include inline Q_LOGGING_CATEGORY(CardDatabaseLoadingLog, "card_database.loading"); inline Q_LOGGING_CATEGORY(CardDatabaseLoadingSuccessOrFailureLog, "card_database.loading.success_or_failure"); @@ -33,7 +34,10 @@ class CardDatabaseLoader : public QObject { Q_OBJECT public: - explicit CardDatabaseLoader(QObject *parent, CardDatabase *db, ICardDatabasePathProvider *pathProvider); + explicit CardDatabaseLoader(QObject *parent, + CardDatabase *db, + ICardDatabasePathProvider *pathProvider, + ICardPreferenceProvider *preferenceProvider); ~CardDatabaseLoader() override; public slots: diff --git a/oracle/src/oracleimporter.cpp b/oracle/src/oracleimporter.cpp index 7d68022d2..ea4c35fda 100644 --- a/oracle/src/oracleimporter.cpp +++ b/oracle/src/oracleimporter.cpp @@ -8,6 +8,7 @@ #include #include #include +#include #include #include @@ -490,7 +491,7 @@ int OracleImporter::startImport() bool OracleImporter::saveToFile(const QString &fileName, const QString &sourceUrl, const QString &sourceVersion) { - CockatriceXml4Parser parser; + CockatriceXml4Parser parser(new SettingsCardPreferenceProvider()); return parser.saveToFile(sets, cards, fileName, sourceUrl, sourceVersion); }