This commit is contained in:
BruebachL 2026-11-04 10:30:37 -07:00 • committed by GitHub
commit 4481c0a7a0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
21 changed files with 475 additions and 18 deletions

View file

@ -3,6 +3,7 @@
#include "libcockatrice/settings/settings_manager.h"
#include <QVariant>
#include <QtGlobal>
DeckSyncSettings::DeckSyncSettings(const QString &settingPath, QObject *parent)
: SettingsManager(settingPath + "deck_sync.ini", "decksync", QString(), parent)
@ -19,3 +20,25 @@ void DeckSyncSettings::setConflictDefault(int _conflictDefault)
setValue(_conflictDefault, "conflictDefault");
emit conflictDefaultChanged(_conflictDefault);
}
bool DeckSyncSettings::getAutoSync() const
{
return getValue("autoSync", QString(), QString(), true).toBool();
}
void DeckSyncSettings::setAutoSync(bool _autoSync)
{
setValue(_autoSync, "autoSync");
emit autoSyncChanged(_autoSync);
}
int DeckSyncSettings::getSyncIntervalMinutes() const
{
return qBound(1, getValue("syncIntervalMinutes", QString(), QString(), 5).toInt(), 60);
}
void DeckSyncSettings::setSyncIntervalMinutes(int _syncIntervalMinutes)
{
setValue(_syncIntervalMinutes, "syncIntervalMinutes");
emit syncIntervalMinutesChanged(_syncIntervalMinutes);
}

View file

@ -22,14 +22,19 @@ class DeckSyncSettings : public SettingsManager
friend class SettingsCache;
public:
explicit DeckSyncSettings(const QString &settingPath, QObject *parent = nullptr);
[[nodiscard]] int getConflictDefault() const;
void setConflictDefault(int _conflictDefault);
[[nodiscard]] bool getAutoSync() const;
void setAutoSync(bool _autoSync);
[[nodiscard]] int getSyncIntervalMinutes() const;
void setSyncIntervalMinutes(int _syncIntervalMinutes);
signals:
void conflictDefaultChanged(int conflictDefault);
public:
explicit DeckSyncSettings(const QString &settingPath, QObject *parent = nullptr);
void autoSyncChanged(bool autoSync);
void syncIntervalMinutesChanged(int syncIntervalMinutes);
private:
DeckSyncSettings(const DeckSyncSettings & /*other*/);

View file

@ -71,6 +71,7 @@ QString PathsSettings::getRedirectCachePath() const
void PathsSettings::setDeckPath(const QString &_deckPath)
{
setValue(_deckPath, "decks");
emit deckPathChanged();
}
void PathsSettings::setFiltersPath(const QString &_filtersPath)

View file

@ -59,6 +59,7 @@ public:
void setAppDirWarningAcknowledged(bool _appDirWarningAcknowledged);
signals:
void deckPathChanged();
void cardDatabasePathChanged();
void picsPathChanged();
void themeChanged();