Cockatrice/libcockatrice_settings/libcockatrice/settings/card_database_settings.h
Lukas Brübach 35d18b5fa9 Dependency Injection for SettingsCache
* Turn SettingsCache into a QSharedPointer.
* Implement interfaces for settings that need it

Took 2 hours 38 minutes
2025-11-08 19:27:37 +01:00

36 lines
998 B
C++

/**
* @file card_database_settings.h
* @ingroup CardDatabase
* @ingroup CardSettings
* @brief TODO: Document this.
*/
#ifndef CARDDATABASESETTINGS_H
#define CARDDATABASESETTINGS_H
#include "settings_manager.h"
#include <QObject>
#include <QSettings>
#include <QVariant>
#include <libcockatrice/card/database/interface/interface_card_set_priority_controller.h>
class CardDatabaseSettings : public SettingsManager, public ICardSetPriorityController
{
Q_OBJECT
friend class SettingsCache;
public:
void setSortKey(QString shortName, unsigned int sortKey) override;
void setEnabled(QString shortName, bool enabled) override;
void setIsKnown(QString shortName, bool isknown) override;
unsigned int getSortKey(QString shortName) override;
bool isEnabled(QString shortName) override;
bool isKnown(QString shortName) override;
private:
explicit CardDatabaseSettings(const QString &settingPath, QObject *parent = nullptr);
};
#endif // CARDDATABASESETTINGS_H