From d4a762a4ba59cc95a04d7fb16335712ff22ba9cf Mon Sep 17 00:00:00 2001 From: RickyRister Date: Thu, 6 Feb 2025 23:26:09 -0800 Subject: [PATCH] persist setting --- .../visual_deck_storage/visual_deck_storage_widget.cpp | 7 +++++-- cockatrice/src/settings/cache_settings.cpp | 7 +++++++ cockatrice/src/settings/cache_settings.h | 6 ++++++ dbconverter/src/mocks.cpp | 3 +++ tests/carddatabase/mocks.cpp | 3 +++ 5 files changed, 24 insertions(+), 2 deletions(-) diff --git a/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_widget.cpp b/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_widget.cpp index 09a1fc4e4..6e0203a3e 100644 --- a/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_widget.cpp +++ b/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_widget.cpp @@ -41,6 +41,9 @@ VisualDeckStorageWidget::VisualDeckStorageWidget(QWidget *parent) : QWidget(pare checkBoxLayout->setContentsMargins(9, 0, 9, 0); showFoldersCheckBox = new QCheckBox(this); + showFoldersCheckBox->setChecked(SettingsCache::instance().getVisualDeckStorageShowFolders()); + connect(showFoldersCheckBox, &QCheckBox::QT_STATE_CHANGED, &SettingsCache::instance(), + &SettingsCache::setVisualDeckStorageShowFolders); checkBoxLayout->addWidget(showFoldersCheckBox); checkBoxLayout->addStretch(); @@ -121,8 +124,8 @@ void VisualDeckStorageWidget::deckPreviewDoubleClickedEvent(QMouseEvent *event, void VisualDeckStorageWidget::createRootFolderWidget() { - folderWidget = - new VisualDeckStorageFolderDisplayWidget(this, this, SettingsCache::instance().getDeckPath(), false, false); + folderWidget = new VisualDeckStorageFolderDisplayWidget(this, this, SettingsCache::instance().getDeckPath(), false, + showFoldersCheckBox->isChecked()); connect(showFoldersCheckBox, &QCheckBox::QT_STATE_CHANGED, folderWidget, &VisualDeckStorageFolderDisplayWidget::updateShowFolders); diff --git a/cockatrice/src/settings/cache_settings.cpp b/cockatrice/src/settings/cache_settings.cpp index b4532f3d3..bbe228c52 100644 --- a/cockatrice/src/settings/cache_settings.cpp +++ b/cockatrice/src/settings/cache_settings.cpp @@ -266,6 +266,7 @@ SettingsCache::SettingsCache() settings->value("cards/printingselectornavigationbuttonsvisible", true).toBool(); visualDeckStorageCardSize = settings->value("cards/visualdeckstoragecardsize", 100).toInt(); visualDeckStorageSortingOrder = settings->value("interface/visualdeckstoragesortingorder", 0).toInt(); + visualDeckStorageShowFolders = settings->value("interface/visualdeckstorageshowfolders", true).toBool(); visualDeckStorageDrawUnusedColorIdentities = settings->value("interface/visualdeckstoragedrawunusedcoloridentities", true).toBool(); visualDeckStorageUnusedColorIdentitiesOpacity = @@ -678,6 +679,12 @@ void SettingsCache::setVisualDeckStorageSortingOrder(int _visualDeckStorageSorti settings->setValue("interface/visualdeckstoragesortingorder", visualDeckStorageSortingOrder); } +void SettingsCache::setVisualDeckStorageShowFolders(QT_STATE_CHANGED_T value) +{ + visualDeckStorageShowFolders = value; + settings->setValue("interface/visualdeckstorageshowfolders", visualDeckStorageShowFolders); +} + void SettingsCache::setVisualDeckStorageCardSize(int _visualDeckStorageCardSize) { visualDeckStorageCardSize = _visualDeckStorageCardSize; diff --git a/cockatrice/src/settings/cache_settings.h b/cockatrice/src/settings/cache_settings.h index cc5489dba..b2800e9f5 100644 --- a/cockatrice/src/settings/cache_settings.h +++ b/cockatrice/src/settings/cache_settings.h @@ -131,6 +131,7 @@ private: bool printingSelectorCardSizeSliderVisible; bool printingSelectorNavigationButtonsVisible; int visualDeckStorageSortingOrder; + bool visualDeckStorageShowFolders; int visualDeckStorageCardSize; bool visualDeckStorageDrawUnusedColorIdentities; int visualDeckStorageUnusedColorIdentitiesOpacity; @@ -416,6 +417,10 @@ public: { return visualDeckStorageSortingOrder; } + bool getVisualDeckStorageShowFolders() const + { + return visualDeckStorageShowFolders; + } int getVisualDeckStorageCardSize() const { return visualDeckStorageCardSize; @@ -761,6 +766,7 @@ public slots: void setPrintingSelectorCardSizeSliderVisible(QT_STATE_CHANGED_T _cardSizeSliderVisible); void setPrintingSelectorNavigationButtonsVisible(QT_STATE_CHANGED_T _navigationButtonsVisible); void setVisualDeckStorageSortingOrder(int _visualDeckStorageSortingOrder); + void setVisualDeckStorageShowFolders(QT_STATE_CHANGED_T value); void setVisualDeckStorageCardSize(int _visualDeckStorageCardSize); void setVisualDeckStorageDrawUnusedColorIdentities(QT_STATE_CHANGED_T _visualDeckStorageDrawUnusedColorIdentities); void setVisualDeckStorageUnusedColorIdentitiesOpacity(int _visualDeckStorageUnusedColorIdentitiesOpacity); diff --git a/dbconverter/src/mocks.cpp b/dbconverter/src/mocks.cpp index ac95c9987..7ed679f03 100644 --- a/dbconverter/src/mocks.cpp +++ b/dbconverter/src/mocks.cpp @@ -211,6 +211,9 @@ void SettingsCache::setPrintingSelectorNavigationButtonsVisible(QT_STATE_CHANGED void SettingsCache::setVisualDeckStorageSortingOrder(int /* _visualDeckStorageSortingOrder */) { } +void SettingsCache::setVisualDeckStorageShowFolders(QT_STATE_CHANGED_T /* value */) +{ +} void SettingsCache::setVisualDeckStorageCardSize(int /* _visualDeckStorageCardSize */) { } diff --git a/tests/carddatabase/mocks.cpp b/tests/carddatabase/mocks.cpp index 782735ac2..66f451683 100644 --- a/tests/carddatabase/mocks.cpp +++ b/tests/carddatabase/mocks.cpp @@ -215,6 +215,9 @@ void SettingsCache::setPrintingSelectorNavigationButtonsVisible(QT_STATE_CHANGED void SettingsCache::setVisualDeckStorageSortingOrder(int /* _visualDeckStorageSortingOrder */) { } +void SettingsCache::setVisualDeckStorageShowFolders(QT_STATE_CHANGED_T /* value */) +{ +} void SettingsCache::setVisualDeckStorageCardSize(int /* _visualDeckStorageCardSize */) { }