Add the option to hide the banner card combo box in VDS.

This commit is contained in:
Lukas Brübach 2025-02-11 17:39:59 +01:00
parent 309678caaf
commit 900cbed6bb
8 changed files with 60 additions and 4 deletions

View file

@ -34,10 +34,17 @@ DeckPreviewWidget::DeckPreviewWidget(QWidget *_parent,
connect(&SettingsCache::instance(), &SettingsCache::visualDeckStorageShowTagsOnDeckPreviewsChanged, this, connect(&SettingsCache::instance(), &SettingsCache::visualDeckStorageShowTagsOnDeckPreviewsChanged, this,
&DeckPreviewWidget::updateTagsVisibility); &DeckPreviewWidget::updateTagsVisibility);
connect(&SettingsCache::instance(), &SettingsCache::visualDeckStorageShowBannerCardComboBoxChanged, this,
&DeckPreviewWidget::updateBannerCardComboBoxVisibility);
layout->addWidget(bannerCardDisplayWidget); layout->addWidget(bannerCardDisplayWidget);
} }
void DeckPreviewWidget::retranslateUi()
{
bannerCardLabel->setText(tr("Banner Card"));
}
void DeckPreviewWidget::resizeEvent(QResizeEvent *event) void DeckPreviewWidget::resizeEvent(QResizeEvent *event)
{ {
QWidget::resizeEvent(event); QWidget::resizeEvent(event);
@ -68,7 +75,6 @@ void DeckPreviewWidget::initializeUi(const bool deckLoadSuccess)
bannerCardLabel = new QLabel(); bannerCardLabel = new QLabel();
bannerCardLabel->setObjectName("bannerCardLabel"); bannerCardLabel->setObjectName("bannerCardLabel");
bannerCardLabel->setText(tr("Banner Card"));
bannerCardComboBox = new QComboBox(this); bannerCardComboBox = new QComboBox(this);
bannerCardComboBox->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum); bannerCardComboBox->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
bannerCardComboBox->setObjectName("bannerCardComboBox"); bannerCardComboBox->setObjectName("bannerCardComboBox");
@ -77,14 +83,16 @@ void DeckPreviewWidget::initializeUi(const bool deckLoadSuccess)
connect(bannerCardComboBox, QOverload<int>::of(&QComboBox::currentIndexChanged), this, connect(bannerCardComboBox, QOverload<int>::of(&QComboBox::currentIndexChanged), this,
&DeckPreviewWidget::setBannerCard); &DeckPreviewWidget::setBannerCard);
updateTagsVisibility(SettingsCache::instance().getVisualDeckStorageShowTagsOnDeckPreviews());
updateBannerCardComboBox(); updateBannerCardComboBox();
updateBannerCardComboBoxVisibility(SettingsCache::instance().getVisualDeckStorageShowBannerCardComboBox());
updateTagsVisibility(SettingsCache::instance().getVisualDeckStorageShowTagsOnDeckPreviews());
layout->addWidget(colorIdentityWidget); layout->addWidget(colorIdentityWidget);
layout->addWidget(deckTagsDisplayWidget); layout->addWidget(deckTagsDisplayWidget);
layout->addWidget(bannerCardLabel); layout->addWidget(bannerCardLabel);
layout->addWidget(bannerCardComboBox); layout->addWidget(bannerCardComboBox);
retranslateUi();
} }
void DeckPreviewWidget::updateVisibility() void DeckPreviewWidget::updateVisibility()
@ -103,9 +111,24 @@ bool DeckPreviewWidget::checkVisibility() const
return true; return true;
} }
void DeckPreviewWidget::updateBannerCardComboBoxVisibility(bool visible)
{
if (bannerCardComboBox == nullptr) {
return;
}
if (visible) {
bannerCardComboBox->setVisible(true);
bannerCardLabel->setVisible(true);
} else {
bannerCardComboBox->setHidden(true);
bannerCardLabel->setHidden(true);
}
}
void DeckPreviewWidget::updateTagsVisibility(bool visible) void DeckPreviewWidget::updateTagsVisibility(bool visible)
{ {
if (!deckTagsDisplayWidget) { if (deckTagsDisplayWidget == nullptr) {
return; return;
} }

View file

@ -19,6 +19,7 @@ public:
explicit DeckPreviewWidget(QWidget *_parent, explicit DeckPreviewWidget(QWidget *_parent,
VisualDeckStorageWidget *_visualDeckStorageWidget, VisualDeckStorageWidget *_visualDeckStorageWidget,
const QString &_filePath); const QString &_filePath);
void retranslateUi();
QString getColorIdentity(); QString getColorIdentity();
VisualDeckStorageWidget *visualDeckStorageWidget; VisualDeckStorageWidget *visualDeckStorageWidget;
@ -49,6 +50,7 @@ public slots:
void imageDoubleClickedEvent(QMouseEvent *event, DeckPreviewCardPictureWidget *instance); void imageDoubleClickedEvent(QMouseEvent *event, DeckPreviewCardPictureWidget *instance);
void initializeUi(bool deckLoadSuccess); void initializeUi(bool deckLoadSuccess);
void updateVisibility(); void updateVisibility();
void updateBannerCardComboBoxVisibility(bool visible);
void updateTagsVisibility(bool visible); void updateTagsVisibility(bool visible);
void resizeEvent(QResizeEvent *event) override; void resizeEvent(QResizeEvent *event) override;
}; };

View file

@ -65,6 +65,12 @@ VisualDeckStorageWidget::VisualDeckStorageWidget(QWidget *parent) : QWidget(pare
connect(drawUnusedColorIdentitiesCheckBox, &QCheckBox::QT_STATE_CHANGED, &SettingsCache::instance(), connect(drawUnusedColorIdentitiesCheckBox, &QCheckBox::QT_STATE_CHANGED, &SettingsCache::instance(),
&SettingsCache::setVisualDeckStorageDrawUnusedColorIdentities); &SettingsCache::setVisualDeckStorageDrawUnusedColorIdentities);
bannerCardComboBoxVisibilityCheckBox = new QCheckBox(this);
bannerCardComboBoxVisibilityCheckBox->setChecked(
SettingsCache::instance().getVisualDeckStorageShowBannerCardComboBox());
connect(bannerCardComboBoxVisibilityCheckBox, &QCheckBox::QT_STATE_CHANGED, &SettingsCache::instance(),
&SettingsCache::setVisualDeckStorageShowBannerCardComboBox);
// card size slider // card size slider
cardSizeWidget = new CardSizeWidget(this, nullptr, SettingsCache::instance().getVisualDeckStorageCardSize()); cardSizeWidget = new CardSizeWidget(this, nullptr, SettingsCache::instance().getVisualDeckStorageCardSize());
@ -73,6 +79,7 @@ VisualDeckStorageWidget::VisualDeckStorageWidget(QWidget *parent) : QWidget(pare
quickSettingsWidget->addSettingsWidget(tagFilterVisibilityCheckBox); quickSettingsWidget->addSettingsWidget(tagFilterVisibilityCheckBox);
quickSettingsWidget->addSettingsWidget(tagsOnWidgetsVisibilityCheckBox); quickSettingsWidget->addSettingsWidget(tagsOnWidgetsVisibilityCheckBox);
quickSettingsWidget->addSettingsWidget(drawUnusedColorIdentitiesCheckBox); quickSettingsWidget->addSettingsWidget(drawUnusedColorIdentitiesCheckBox);
quickSettingsWidget->addSettingsWidget(bannerCardComboBoxVisibilityCheckBox);
quickSettingsWidget->addSettingsWidget(cardSizeWidget); quickSettingsWidget->addSettingsWidget(cardSizeWidget);
searchAndSortLayout->addWidget(deckPreviewColorIdentityFilterWidget); searchAndSortLayout->addWidget(deckPreviewColorIdentityFilterWidget);
@ -162,6 +169,7 @@ void VisualDeckStorageWidget::retranslateUi()
tagFilterVisibilityCheckBox->setText(tr("Show Tag Filter")); tagFilterVisibilityCheckBox->setText(tr("Show Tag Filter"));
tagsOnWidgetsVisibilityCheckBox->setText(tr("Show Tags On Deck Previews")); tagsOnWidgetsVisibilityCheckBox->setText(tr("Show Tags On Deck Previews"));
drawUnusedColorIdentitiesCheckBox->setText(tr("Draw not contained Color Identities")); drawUnusedColorIdentitiesCheckBox->setText(tr("Draw not contained Color Identities"));
bannerCardComboBoxVisibilityCheckBox->setText(tr("Show Banner Card Selection Option"));
} }
void VisualDeckStorageWidget::deckPreviewClickedEvent(QMouseEvent *event, DeckPreviewWidget *instance) void VisualDeckStorageWidget::deckPreviewClickedEvent(QMouseEvent *event, DeckPreviewWidget *instance)

View file

@ -68,6 +68,7 @@ private:
SettingsButtonWidget *quickSettingsWidget; SettingsButtonWidget *quickSettingsWidget;
QCheckBox *showFoldersCheckBox; QCheckBox *showFoldersCheckBox;
QCheckBox *drawUnusedColorIdentitiesCheckBox; QCheckBox *drawUnusedColorIdentitiesCheckBox;
QCheckBox *bannerCardComboBoxVisibilityCheckBox;
QCheckBox *tagFilterVisibilityCheckBox; QCheckBox *tagFilterVisibilityCheckBox;
QCheckBox *tagsOnWidgetsVisibilityCheckBox; QCheckBox *tagsOnWidgetsVisibilityCheckBox;
QScrollArea *scrollArea; QScrollArea *scrollArea;

View file

@ -264,6 +264,8 @@ SettingsCache::SettingsCache()
visualDeckStorageSortingOrder = settings->value("interface/visualdeckstoragesortingorder", 0).toInt(); visualDeckStorageSortingOrder = settings->value("interface/visualdeckstoragesortingorder", 0).toInt();
visualDeckStorageShowFolders = settings->value("interface/visualdeckstorageshowfolders", true).toBool(); visualDeckStorageShowFolders = settings->value("interface/visualdeckstorageshowfolders", true).toBool();
visualDeckStorageShowTagFilter = settings->value("interface/visualdeckstorageshowtagfilter", true).toBool(); visualDeckStorageShowTagFilter = settings->value("interface/visualdeckstorageshowtagfilter", true).toBool();
visualDeckStorageShowBannerCardComboBox =
settings->value("interface/visualdeckstorageshowbannercardcombobox", true).toBool();
visualDeckStorageShowTagsOnDeckPreviews = visualDeckStorageShowTagsOnDeckPreviews =
settings->value("interface/visualdeckstorageshowtagsondeckpreviews", true).toBool(); settings->value("interface/visualdeckstorageshowtagsondeckpreviews", true).toBool();
visualDeckStorageDrawUnusedColorIdentities = visualDeckStorageDrawUnusedColorIdentities =
@ -670,6 +672,13 @@ void SettingsCache::setVisualDeckStorageShowTagFilter(QT_STATE_CHANGED_T _showTa
emit visualDeckStorageShowTagFilterChanged(visualDeckStorageShowTagFilter); emit visualDeckStorageShowTagFilterChanged(visualDeckStorageShowTagFilter);
} }
void SettingsCache::setVisualDeckStorageShowBannerCardComboBox(QT_STATE_CHANGED_T _showBannerCardComboBox)
{
visualDeckStorageShowBannerCardComboBox = _showBannerCardComboBox;
settings->setValue("interface/visualdeckstorageshowbannercardcombobox", visualDeckStorageShowBannerCardComboBox);
emit visualDeckStorageShowBannerCardComboBoxChanged(visualDeckStorageShowBannerCardComboBox);
}
void SettingsCache::setVisualDeckStorageShowTagsOnDeckPreviews(QT_STATE_CHANGED_T _showTags) void SettingsCache::setVisualDeckStorageShowTagsOnDeckPreviews(QT_STATE_CHANGED_T _showTags)
{ {
visualDeckStorageShowTagsOnDeckPreviews = _showTags; visualDeckStorageShowTagsOnDeckPreviews = _showTags;

View file

@ -60,6 +60,7 @@ signals:
void printingSelectorCardSizeChanged(); void printingSelectorCardSizeChanged();
void printingSelectorNavigationButtonsVisibleChanged(); void printingSelectorNavigationButtonsVisibleChanged();
void visualDeckStorageShowTagFilterChanged(bool _visible); void visualDeckStorageShowTagFilterChanged(bool _visible);
void visualDeckStorageShowBannerCardComboBoxChanged(bool _visible);
void visualDeckStorageShowTagsOnDeckPreviewsChanged(bool _visible); void visualDeckStorageShowTagsOnDeckPreviewsChanged(bool _visible);
void visualDeckStorageCardSizeChanged(); void visualDeckStorageCardSizeChanged();
void visualDeckStorageDrawUnusedColorIdentitiesChanged(bool _visible); void visualDeckStorageDrawUnusedColorIdentitiesChanged(bool _visible);
@ -129,6 +130,7 @@ private:
bool printingSelectorNavigationButtonsVisible; bool printingSelectorNavigationButtonsVisible;
int visualDeckStorageSortingOrder; int visualDeckStorageSortingOrder;
bool visualDeckStorageShowFolders; bool visualDeckStorageShowFolders;
bool visualDeckStorageShowBannerCardComboBox;
bool visualDeckStorageShowTagsOnDeckPreviews; bool visualDeckStorageShowTagsOnDeckPreviews;
bool visualDeckStorageShowTagFilter; bool visualDeckStorageShowTagFilter;
int visualDeckStorageCardSize; int visualDeckStorageCardSize;
@ -412,6 +414,10 @@ public:
{ {
return visualDeckStorageShowTagFilter; return visualDeckStorageShowTagFilter;
} }
bool getVisualDeckStorageShowBannerCardComboBox() const
{
return visualDeckStorageShowBannerCardComboBox;
}
bool getVisualDeckStorageShowTagsOnDeckPreviews() const bool getVisualDeckStorageShowTagsOnDeckPreviews() const
{ {
return visualDeckStorageShowTagsOnDeckPreviews; return visualDeckStorageShowTagsOnDeckPreviews;
@ -760,6 +766,7 @@ public slots:
void setVisualDeckStorageSortingOrder(int _visualDeckStorageSortingOrder); void setVisualDeckStorageSortingOrder(int _visualDeckStorageSortingOrder);
void setVisualDeckStorageShowFolders(QT_STATE_CHANGED_T value); void setVisualDeckStorageShowFolders(QT_STATE_CHANGED_T value);
void setVisualDeckStorageShowTagFilter(QT_STATE_CHANGED_T _showTags); void setVisualDeckStorageShowTagFilter(QT_STATE_CHANGED_T _showTags);
void setVisualDeckStorageShowBannerCardComboBox(QT_STATE_CHANGED_T _showBannerCardComboBox);
void setVisualDeckStorageShowTagsOnDeckPreviews(QT_STATE_CHANGED_T _showTags); void setVisualDeckStorageShowTagsOnDeckPreviews(QT_STATE_CHANGED_T _showTags);
void setVisualDeckStorageCardSize(int _visualDeckStorageCardSize); void setVisualDeckStorageCardSize(int _visualDeckStorageCardSize);
void setVisualDeckStorageDrawUnusedColorIdentities(QT_STATE_CHANGED_T _visualDeckStorageDrawUnusedColorIdentities); void setVisualDeckStorageDrawUnusedColorIdentities(QT_STATE_CHANGED_T _visualDeckStorageDrawUnusedColorIdentities);

View file

@ -208,6 +208,9 @@ void SettingsCache::setVisualDeckStorageShowFolders(QT_STATE_CHANGED_T /* value
void SettingsCache::setVisualDeckStorageShowTagFilter(QT_STATE_CHANGED_T /* _showTags */) void SettingsCache::setVisualDeckStorageShowTagFilter(QT_STATE_CHANGED_T /* _showTags */)
{ {
} }
void SettingsCache::setVisualDeckStorageShowBannerCardComboBox(QT_STATE_CHANGED_T /* _showBannerCardComboBox */)
{
}
void SettingsCache::setVisualDeckStorageShowTagsOnDeckPreviews(QT_STATE_CHANGED_T /* _showTags */) void SettingsCache::setVisualDeckStorageShowTagsOnDeckPreviews(QT_STATE_CHANGED_T /* _showTags */)
{ {
} }

View file

@ -212,6 +212,9 @@ void SettingsCache::setVisualDeckStorageShowFolders(QT_STATE_CHANGED_T /* value
void SettingsCache::setVisualDeckStorageShowTagFilter(QT_STATE_CHANGED_T /* _showTags */) void SettingsCache::setVisualDeckStorageShowTagFilter(QT_STATE_CHANGED_T /* _showTags */)
{ {
} }
void SettingsCache::setVisualDeckStorageShowBannerCardComboBox(QT_STATE_CHANGED_T /* _showBannerCardComboBox */)
{
}
void SettingsCache::setVisualDeckStorageShowTagsOnDeckPreviews(QT_STATE_CHANGED_T /* _showTags */) void SettingsCache::setVisualDeckStorageShowTagsOnDeckPreviews(QT_STATE_CHANGED_T /* _showTags */)
{ {
} }