From 5a72700a5c7a45812438a7bb2030b46fffe6509a Mon Sep 17 00:00:00 2001 From: RickyRister Date: Mon, 24 Feb 2025 00:37:20 -0800 Subject: [PATCH] add new settings --- cockatrice/src/dialogs/dlg_settings.cpp | 9 +++++++++ cockatrice/src/dialogs/dlg_settings.h | 2 ++ cockatrice/src/settings/cache_settings.cpp | 7 +++++++ cockatrice/src/settings/cache_settings.h | 6 ++++++ dbconverter/src/mocks.cpp | 3 +++ tests/carddatabase/mocks.cpp | 3 +++ 6 files changed, 30 insertions(+) diff --git a/cockatrice/src/dialogs/dlg_settings.cpp b/cockatrice/src/dialogs/dlg_settings.cpp index cfb84bfdb..7fb475b9a 100644 --- a/cockatrice/src/dialogs/dlg_settings.cpp +++ b/cockatrice/src/dialogs/dlg_settings.cpp @@ -404,6 +404,11 @@ AppearanceSettingsPage::AppearanceSettingsPage() connect(&cardViewInitialRowsMaxBox, qOverload(&QSpinBox::valueChanged), &SettingsCache::instance(), &SettingsCache::setCardViewInitialRowsMax); + cardViewExpandedRowsMaxBox.setRange(1, 999); + cardViewExpandedRowsMaxBox.setValue(SettingsCache::instance().getCardViewExpandedRowsMax()); + connect(&cardViewExpandedRowsMaxBox, qOverload(&QSpinBox::valueChanged), &SettingsCache::instance(), + &SettingsCache::setCardViewExpandedRowsMax); + auto *cardsGrid = new QGridLayout; cardsGrid->addWidget(&displayCardNamesCheckBox, 0, 0, 1, 2); cardsGrid->addWidget(&autoRotateSidewaysLayoutCardsCheckBox, 1, 0, 1, 2); @@ -414,6 +419,8 @@ AppearanceSettingsPage::AppearanceSettingsPage() cardsGrid->addWidget(&verticalCardOverlapPercentBox, 5, 1, 1, 1); cardsGrid->addWidget(&cardViewInitialRowsMaxLabel, 6, 0); cardsGrid->addWidget(&cardViewInitialRowsMaxBox, 6, 1); + cardsGrid->addWidget(&cardViewExpandedRowsMaxLabel, 7, 0); + cardsGrid->addWidget(&cardViewExpandedRowsMaxBox, 7, 1); cardsGroupBox = new QGroupBox; cardsGroupBox->setLayout(cardsGrid); @@ -526,6 +533,8 @@ void AppearanceSettingsPage::retranslateUi() tr("Minimum overlap percentage of cards on the stack and in vertical hand")); cardViewInitialRowsMaxLabel.setText(tr("Maximum initial height for card view window:")); cardViewInitialRowsMaxBox.setSuffix(tr(" rows")); + cardViewExpandedRowsMaxLabel.setText(tr("Maximum expanded height for card view window:")); + cardViewExpandedRowsMaxBox.setSuffix(tr(" rows")); handGroupBox->setTitle(tr("Hand layout")); horizontalHandCheckBox.setText(tr("Display hand horizontally (wastes space)")); diff --git a/cockatrice/src/dialogs/dlg_settings.h b/cockatrice/src/dialogs/dlg_settings.h index 5b0f58078..c2b4b53ba 100644 --- a/cockatrice/src/dialogs/dlg_settings.h +++ b/cockatrice/src/dialogs/dlg_settings.h @@ -110,6 +110,8 @@ private: QSpinBox verticalCardOverlapPercentBox; QLabel cardViewInitialRowsMaxLabel; QSpinBox cardViewInitialRowsMaxBox; + QLabel cardViewExpandedRowsMaxLabel; + QSpinBox cardViewExpandedRowsMaxBox; QCheckBox horizontalHandCheckBox; QCheckBox leftJustifiedHandCheckBox; QCheckBox invertVerticalCoordinateCheckBox; diff --git a/cockatrice/src/settings/cache_settings.cpp b/cockatrice/src/settings/cache_settings.cpp index 58e16f24b..accea7bc7 100644 --- a/cockatrice/src/settings/cache_settings.cpp +++ b/cockatrice/src/settings/cache_settings.cpp @@ -249,6 +249,7 @@ SettingsCache::SettingsCache() knownMissingFeatures = settings->value("interface/knownmissingfeatures", "").toString(); useTearOffMenus = settings->value("interface/usetearoffmenus", true).toBool(); cardViewInitialRowsMax = settings->value("interface/cardViewInitialRowsMax", 14).toInt(); + cardViewExpandedRowsMax = settings->value("interface/cardViewExpandedRowsMax", 20).toInt(); closeEmptyCardView = settings->value("interface/closeEmptyCardView", true).toBool(); showShortcuts = settings->value("menu/showshortcuts", true).toBool(); @@ -344,6 +345,12 @@ void SettingsCache::setCardViewInitialRowsMax(int _cardViewInitialRowsMax) settings->setValue("interface/cardViewInitialRowsMax", cardViewInitialRowsMax); } +void SettingsCache::setCardViewExpandedRowsMax(int value) +{ + cardViewExpandedRowsMax = value; + settings->setValue("interface/cardViewExpandedRowsMax", cardViewExpandedRowsMax); +} + void SettingsCache::setCloseEmptyCardView(QT_STATE_CHANGED_T value) { closeEmptyCardView = value; diff --git a/cockatrice/src/settings/cache_settings.h b/cockatrice/src/settings/cache_settings.h index bb23394e0..d6f187020 100644 --- a/cockatrice/src/settings/cache_settings.h +++ b/cockatrice/src/settings/cache_settings.h @@ -165,6 +165,7 @@ private: QString knownMissingFeatures; bool useTearOffMenus; int cardViewInitialRowsMax; + int cardViewExpandedRowsMax; bool closeEmptyCardView; int pixmapCacheSize; int networkCacheSize; @@ -642,6 +643,7 @@ public: void setKnownMissingFeatures(const QString &_knownMissingFeatures); void setUseTearOffMenus(bool _useTearOffMenus); void setCardViewInitialRowsMax(int _cardViewInitialRowsMax); + void setCardViewExpandedRowsMax(int value); void setCloseEmptyCardView(QT_STATE_CHANGED_T value); QString getClientID() { @@ -663,6 +665,10 @@ public: { return cardViewInitialRowsMax; } + int getCardViewExpandedRowsMax() const + { + return cardViewExpandedRowsMax; + } bool getCloseEmptyCardView() const { return closeEmptyCardView; diff --git a/dbconverter/src/mocks.cpp b/dbconverter/src/mocks.cpp index 9a76edf84..9ce12d7f7 100644 --- a/dbconverter/src/mocks.cpp +++ b/dbconverter/src/mocks.cpp @@ -58,6 +58,9 @@ void SettingsCache::setUseTearOffMenus(bool /* _useTearOffMenus */) void SettingsCache::setCardViewInitialRowsMax(int /* _cardViewInitialRowsMax */) { } +void SettingsCache::setCardViewExpandedRowsMax(int /* value */) +{ +} void SettingsCache::setCloseEmptyCardView(const QT_STATE_CHANGED_T /* value */) { } diff --git a/tests/carddatabase/mocks.cpp b/tests/carddatabase/mocks.cpp index 0383a81d2..557655160 100644 --- a/tests/carddatabase/mocks.cpp +++ b/tests/carddatabase/mocks.cpp @@ -62,6 +62,9 @@ void SettingsCache::setUseTearOffMenus(bool /* _useTearOffMenus */) void SettingsCache::setCardViewInitialRowsMax(int /* _cardViewInitialRowsMax */) { } +void SettingsCache::setCardViewExpandedRowsMax(int /* value */) +{ +} void SettingsCache::setCloseEmptyCardView(QT_STATE_CHANGED_T /* value */) { }