Persist card size slider selection in SettingsCache.

This commit is contained in:
Lukas Brübach 2024-12-16 02:01:17 +01:00 committed by ZeldaZach
parent 2d59540f15
commit 61b33aa808
No known key found for this signature in database
7 changed files with 36 additions and 4 deletions

View file

@ -1,6 +1,8 @@
#include "card_size_widget.h" #include "card_size_widget.h"
CardSizeWidget::CardSizeWidget(QWidget *parent, FlowWidget *flowWidget) : parent(parent), flowWidget(flowWidget) #include "../../../../settings/cache_settings.h"
CardSizeWidget::CardSizeWidget(QWidget *parent, FlowWidget *flowWidget, int defaultValue) : parent(parent), flowWidget(flowWidget)
{ {
cardSizeLayout = new QHBoxLayout(this); cardSizeLayout = new QHBoxLayout(this);
setLayout(cardSizeLayout); setLayout(cardSizeLayout);
@ -9,7 +11,7 @@ CardSizeWidget::CardSizeWidget(QWidget *parent, FlowWidget *flowWidget) : parent
cardSizeLabel->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum); cardSizeLabel->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
cardSizeSlider = new QSlider(Qt::Horizontal, this); cardSizeSlider = new QSlider(Qt::Horizontal, this);
cardSizeSlider->setRange(50, 250); cardSizeSlider->setRange(50, 250);
cardSizeSlider->setValue(100); cardSizeSlider->setValue(defaultValue);
cardSizeLayout->addWidget(cardSizeLabel); cardSizeLayout->addWidget(cardSizeLabel);
cardSizeLayout->addWidget(cardSizeSlider); cardSizeLayout->addWidget(cardSizeSlider);
@ -17,6 +19,13 @@ CardSizeWidget::CardSizeWidget(QWidget *parent, FlowWidget *flowWidget) : parent
if (flowWidget != nullptr) { if (flowWidget != nullptr) {
connect(cardSizeSlider, &QSlider::valueChanged, flowWidget, &FlowWidget::setMinimumSizeToMaxSizeHint); connect(cardSizeSlider, &QSlider::valueChanged, flowWidget, &FlowWidget::setMinimumSizeToMaxSizeHint);
} }
connect(cardSizeSlider, &QSlider::valueChanged, this, &CardSizeWidget::updateCardSizeSetting);
}
void CardSizeWidget::updateCardSizeSetting(int newValue)
{
SettingsCache::instance().setPrintingSelectorCardSize(newValue);
} }
QSlider *CardSizeWidget::getSlider() const QSlider *CardSizeWidget::getSlider() const

View file

@ -13,8 +13,10 @@ class CardSizeWidget : public QWidget
Q_OBJECT Q_OBJECT
public: public:
explicit CardSizeWidget(QWidget *parent, FlowWidget *flowWidget = nullptr); explicit CardSizeWidget(QWidget *parent, FlowWidget *flowWidget = nullptr, int defaultValue = 100);
QSlider *getSlider() const; QSlider *getSlider() const;
public slots:
void updateCardSizeSetting(int newValue);
private: private:
QWidget *parent; QWidget *parent;

View file

@ -33,7 +33,7 @@ PrintingSelector::PrintingSelector(QWidget *parent,
flowWidget = new FlowWidget(this, Qt::ScrollBarAlwaysOff, Qt::ScrollBarAsNeeded); flowWidget = new FlowWidget(this, Qt::ScrollBarAlwaysOff, Qt::ScrollBarAsNeeded);
layout->addWidget(flowWidget); layout->addWidget(flowWidget);
cardSizeWidget = new CardSizeWidget(this); cardSizeWidget = new CardSizeWidget(this, flowWidget, SettingsCache::instance().getPrintingSelectorCardSize());
layout->addWidget(cardSizeWidget); layout->addWidget(cardSizeWidget);
cardSelectionBar = new PrintingSelectorCardSelectionWidget(this); cardSelectionBar = new PrintingSelectorCardSelectionWidget(this);

View file

@ -246,6 +246,7 @@ SettingsCache::SettingsCache()
settings->value("cards/overrideallcardartwithpersonalpreference", false).toBool(); settings->value("cards/overrideallcardartwithpersonalpreference", false).toBool();
bumpSetsWithCardsInDeckToTop = settings->value("cards/bumpsetswithcardsindecktotop", true).toBool(); bumpSetsWithCardsInDeckToTop = settings->value("cards/bumpsetswithcardsindecktotop", true).toBool();
printingSelectorSortOrder = settings->value("cards/printingselectorsortorder", 1).toInt(); printingSelectorSortOrder = settings->value("cards/printingselectorsortorder", 1).toInt();
printingSelectorCardSize = settings->value("cards/printingselectorcardsize", 100).toInt();
horizontalHand = settings->value("hand/horizontal", true).toBool(); horizontalHand = settings->value("hand/horizontal", true).toBool();
invertVerticalCoordinate = settings->value("table/invert_vertical", false).toBool(); invertVerticalCoordinate = settings->value("table/invert_vertical", false).toBool();
minPlayersForMultiColumnLayout = settings->value("interface/min_players_multicolumn", 4).toInt(); minPlayersForMultiColumnLayout = settings->value("interface/min_players_multicolumn", 4).toInt();
@ -552,6 +553,13 @@ void SettingsCache::setPrintingSelectorSortOrder(int _printingSelectorSortOrder)
emit printingSelectorSortOrderChanged(); emit printingSelectorSortOrderChanged();
} }
void SettingsCache::setPrintingSelectorCardSize(int _printingSelectorCardSize)
{
printingSelectorCardSize = _printingSelectorCardSize;
settings->setValue("cards/printingselectorcardsize", printingSelectorCardSize);
emit printingSelectorCardSizeChanged();
}
void SettingsCache::setHorizontalHand(QT_STATE_CHANGED_T _horizontalHand) void SettingsCache::setHorizontalHand(QT_STATE_CHANGED_T _horizontalHand)
{ {
horizontalHand = static_cast<bool>(_horizontalHand); horizontalHand = static_cast<bool>(_horizontalHand);

View file

@ -51,6 +51,7 @@ signals:
void overrideAllCardArtWithPersonalPreferenceChanged(); void overrideAllCardArtWithPersonalPreferenceChanged();
void bumpSetsWithCardsInDeckToTopChanged(); void bumpSetsWithCardsInDeckToTopChanged();
void printingSelectorSortOrderChanged(); void printingSelectorSortOrderChanged();
void printingSelectorCardSizeChanged();
void horizontalHandChanged(); void horizontalHandChanged();
void handJustificationChanged(); void handJustificationChanged();
void invertVerticalCoordinateChanged(); void invertVerticalCoordinateChanged();
@ -105,6 +106,7 @@ private:
bool overrideAllCardArtWithPersonalPreference; bool overrideAllCardArtWithPersonalPreference;
bool bumpSetsWithCardsInDeckToTop; bool bumpSetsWithCardsInDeckToTop;
int printingSelectorSortOrder; int printingSelectorSortOrder;
int printingSelectorCardSize;
bool horizontalHand; bool horizontalHand;
bool invertVerticalCoordinate; bool invertVerticalCoordinate;
int minPlayersForMultiColumnLayout; int minPlayersForMultiColumnLayout;
@ -317,6 +319,10 @@ public:
{ {
return printingSelectorSortOrder; return printingSelectorSortOrder;
} }
int getPrintingSelectorCardSize() const
{
return printingSelectorCardSize;
}
bool getHorizontalHand() const bool getHorizontalHand() const
{ {
return horizontalHand; return horizontalHand;
@ -599,6 +605,7 @@ public slots:
void setOverrideAllCardArtWithPersonalPreference(QT_STATE_CHANGED_T _overrideAllCardArt); void setOverrideAllCardArtWithPersonalPreference(QT_STATE_CHANGED_T _overrideAllCardArt);
void setBumpSetsWithCardsInDeckToTop(QT_STATE_CHANGED_T _bumpSetsWithCardsInDeckToTop); void setBumpSetsWithCardsInDeckToTop(QT_STATE_CHANGED_T _bumpSetsWithCardsInDeckToTop);
void setPrintingSelectorSortOrder(int _printingSelectorSortOrder); void setPrintingSelectorSortOrder(int _printingSelectorSortOrder);
void setPrintingSelectorCardSize(int _printingSelectorCardSize);
void setHorizontalHand(QT_STATE_CHANGED_T _horizontalHand); void setHorizontalHand(QT_STATE_CHANGED_T _horizontalHand);
void setInvertVerticalCoordinate(QT_STATE_CHANGED_T _invertVerticalCoordinate); void setInvertVerticalCoordinate(QT_STATE_CHANGED_T _invertVerticalCoordinate);
void setMinPlayersForMultiColumnLayout(int _minPlayersForMultiColumnLayout); void setMinPlayersForMultiColumnLayout(int _minPlayersForMultiColumnLayout);

View file

@ -166,6 +166,9 @@ void SettingsCache::setBumpSetsWithCardsInDeckToTop(QT_STATE_CHANGED_T /* _bumpS
void SettingsCache::setPrintingSelectorSortOrder(int /* _printingSelectorSortOrder */) void SettingsCache::setPrintingSelectorSortOrder(int /* _printingSelectorSortOrder */)
{ {
} }
void SettingsCache::setPrintingSelectorCardSize(int /* _printingSelectorCardSize */)
{
}
void SettingsCache::setHorizontalHand(QT_STATE_CHANGED_T /* _horizontalHand */) void SettingsCache::setHorizontalHand(QT_STATE_CHANGED_T /* _horizontalHand */)
{ {
} }

View file

@ -170,6 +170,9 @@ void SettingsCache::setBumpSetsWithCardsInDeckToTop(QT_STATE_CHANGED_T /* _bumpS
void SettingsCache::setPrintingSelectorSortOrder(int /* _printingSelectorSortOrder */) void SettingsCache::setPrintingSelectorSortOrder(int /* _printingSelectorSortOrder */)
{ {
} }
void SettingsCache::setPrintingSelectorCardSize(int /* _printingSelectorCardSize */)
{
}
void SettingsCache::setHorizontalHand(QT_STATE_CHANGED_T /* _horizontalHand */) void SettingsCache::setHorizontalHand(QT_STATE_CHANGED_T /* _horizontalHand */)
{ {
} }