From 9bf2668f1596a0ec931fa991890d3fcaefa845dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20Br=C3=BCbach?= Date: Wed, 14 Jan 2026 10:19:08 +0100 Subject: [PATCH] Change buttons to be push rather than toggle. Took 17 minutes Took 9 seconds --- ...database_display_format_legality_filter_widget.cpp | 11 +++++------ ...l_database_display_format_legality_filter_widget.h | 4 ++-- ...isual_database_display_main_type_filter_widget.cpp | 9 ++++----- .../visual_database_display_main_type_filter_widget.h | 4 ++-- .../visual_database_display_set_filter_widget.cpp | 7 +++---- .../visual_database_display_set_filter_widget.h | 4 ++-- ...visual_database_display_sub_type_filter_widget.cpp | 11 +++++------ .../visual_database_display_sub_type_filter_widget.h | 4 ++-- 8 files changed, 25 insertions(+), 29 deletions(-) diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.cpp index 254a4344b..0df948016 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.cpp @@ -53,16 +53,15 @@ VisualDatabaseDisplayFormatLegalityFilterWidget::VisualDatabaseDisplayFormatLega // Create the toggle button for Exact Match/Includes mode toggleButton = new QPushButton(this); - toggleButton->setCheckable(true); layout->addWidget(toggleButton); - connect(toggleButton, &QPushButton::toggled, this, + connect(toggleButton, &QPushButton::clicked, this, &VisualDatabaseDisplayFormatLegalityFilterWidget::updateFilterMode); connect(filterModel, &FilterTreeModel::layoutChanged, this, [this]() { QTimer::singleShot(100, this, &VisualDatabaseDisplayFormatLegalityFilterWidget::syncWithFilterModel); }); - createFormatButtons(); // Populate buttons initially - updateFilterMode(false); // Initialize toggle button text + createFormatButtons(); // Populate buttons initially + updateFilterMode(); // Initialize toggle button text retranslateUi(); } @@ -177,9 +176,9 @@ void VisualDatabaseDisplayFormatLegalityFilterWidget::updateFormatFilter() emit filterModel->layoutChanged(); } -void VisualDatabaseDisplayFormatLegalityFilterWidget::updateFilterMode(bool checked) +void VisualDatabaseDisplayFormatLegalityFilterWidget::updateFilterMode() { - exactMatchMode = checked; + exactMatchMode = !exactMatchMode; toggleButton->setText(exactMatchMode ? tr("Mode: Exact Match") : tr("Mode: Includes")); updateFormatFilter(); } diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.h index f2f443d39..1b1a1382e 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.h @@ -24,7 +24,7 @@ public: void handleFormatToggled(const QString &format, bool active); void updateFormatFilter(); - void updateFilterMode(bool checked); + void updateFilterMode(); void syncWithFilterModel(); private: @@ -40,7 +40,7 @@ private: QMap activeFormats; // Track active filters QMap formatButtons; // Store toggle buttons - bool exactMatchMode = false; // Toggle between "Exact Match" and "Includes" + bool exactMatchMode = true; // Toggle between "Exact Match" and "Includes" }; #endif // COCKATRICE_VISUAL_DATABASE_DISPLAY_FORMAT_LEGALITY_FILTER_WIDGET_H diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.cpp index 6c91228d1..bc8e914bd 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.cpp @@ -49,15 +49,14 @@ VisualDatabaseDisplayMainTypeFilterWidget::VisualDatabaseDisplayMainTypeFilterWi // Create the toggle button for Exact Match/Includes mode toggleButton = new QPushButton(this); - toggleButton->setCheckable(true); layout->addWidget(toggleButton); - connect(toggleButton, &QPushButton::toggled, this, &VisualDatabaseDisplayMainTypeFilterWidget::updateFilterMode); + connect(toggleButton, &QPushButton::clicked, this, &VisualDatabaseDisplayMainTypeFilterWidget::updateFilterMode); connect(filterModel, &FilterTreeModel::layoutChanged, this, [this]() { QTimer::singleShot(100, this, &VisualDatabaseDisplayMainTypeFilterWidget::syncWithFilterModel); }); createMainTypeButtons(); // Populate buttons initially - updateFilterMode(false); // Initialize toggle button text + updateFilterMode(); // Initialize toggle button text retranslateUi(); } @@ -172,9 +171,9 @@ void VisualDatabaseDisplayMainTypeFilterWidget::updateMainTypeFilter() emit filterModel->layoutChanged(); } -void VisualDatabaseDisplayMainTypeFilterWidget::updateFilterMode(bool checked) +void VisualDatabaseDisplayMainTypeFilterWidget::updateFilterMode() { - exactMatchMode = checked; + exactMatchMode = !exactMatchMode; toggleButton->setText(exactMatchMode ? tr("Mode: Exact Match") : tr("Mode: Includes")); updateMainTypeFilter(); } diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.h index 03c6815f4..9145812a7 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.h @@ -29,7 +29,7 @@ public: void handleMainTypeToggled(const QString &mainType, bool active); void updateMainTypeFilter(); - void updateFilterMode(bool checked); + void updateFilterMode(); void syncWithFilterModel(); private: @@ -45,7 +45,7 @@ private: QMap activeMainTypes; // Track active filters QMap typeButtons; // Store toggle buttons - bool exactMatchMode = false; // Toggle between "Exact Match" and "Includes" + bool exactMatchMode = true; // Toggle between "Exact Match" and "Includes" }; #endif // VISUAL_DATABASE_DISPLAY_MAIN_TYPE_FILTER_WIDGET_H diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.cpp index 8423ca6fd..1f9125bf5 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.cpp @@ -70,9 +70,8 @@ VisualDatabaseDisplaySetFilterWidget::VisualDatabaseDisplaySetFilterWidget(QWidg // Create the toggle button for Exact Match/Includes mode toggleButton = new QPushButton(this); - toggleButton->setCheckable(true); layout->addWidget(toggleButton); - connect(toggleButton, &QPushButton::toggled, this, &VisualDatabaseDisplaySetFilterWidget::updateFilterMode); + connect(toggleButton, &QPushButton::clicked, this, &VisualDatabaseDisplaySetFilterWidget::updateFilterMode); connect(filterModel, &FilterTreeModel::layoutChanged, this, [this]() { QTimer::singleShot(100, this, &VisualDatabaseDisplaySetFilterWidget::syncWithFilterModel); }); @@ -264,9 +263,9 @@ void VisualDatabaseDisplaySetFilterWidget::syncWithFilterModel() } } -void VisualDatabaseDisplaySetFilterWidget::updateFilterMode(bool checked) +void VisualDatabaseDisplaySetFilterWidget::updateFilterMode() { - exactMatchMode = checked; + exactMatchMode = !exactMatchMode; updateSetFilter(); retranslateUi(); } diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.h index b4362d1db..dc7fd0e92 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.h @@ -44,7 +44,7 @@ public: void updateSetFilter(); void syncWithFilterModel(); - void updateFilterMode(bool checked); + void updateFilterMode(); private: FilterTreeModel *filterModel; @@ -60,7 +60,7 @@ private: QMap setButtons; // Store set filter buttons QMap activeSets; // Track active set filters - bool exactMatchMode = false; // Toggle between "Exact Match" and "Includes" + bool exactMatchMode = true; // Toggle between "Exact Match" and "Includes" }; #endif // VISUAL_DATABASE_DISPLAY_SET_FILTER_WIDGET_H diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.cpp index 5b790bf5d..8a1e7a437 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.cpp @@ -54,15 +54,14 @@ VisualDatabaseDisplaySubTypeFilterWidget::VisualDatabaseDisplaySubTypeFilterWidg // Toggle button setup (Exact Match / Includes mode) toggleButton = new QPushButton(this); - toggleButton->setCheckable(true); layout->addWidget(toggleButton); - connect(toggleButton, &QPushButton::toggled, this, &VisualDatabaseDisplaySubTypeFilterWidget::updateFilterMode); + connect(toggleButton, &QPushButton::clicked, this, &VisualDatabaseDisplaySubTypeFilterWidget::updateFilterMode); connect(filterModel, &FilterTreeModel::layoutChanged, this, [this]() { QTimer::singleShot(100, this, &VisualDatabaseDisplaySubTypeFilterWidget::syncWithFilterModel); }); - createSubTypeButtons(); // Populate buttons initially - updateFilterMode(false); // Initialize the toggle button text + createSubTypeButtons(); // Populate buttons initially + updateFilterMode(); // Initialize the toggle button text retranslateUi(); } @@ -180,9 +179,9 @@ void VisualDatabaseDisplaySubTypeFilterWidget::updateSubTypeFilter() emit filterModel->layoutChanged(); } -void VisualDatabaseDisplaySubTypeFilterWidget::updateFilterMode(bool checked) +void VisualDatabaseDisplaySubTypeFilterWidget::updateFilterMode() { - exactMatchMode = checked; + exactMatchMode = !exactMatchMode; toggleButton->setText(exactMatchMode ? tr("Mode: Exact Match") : tr("Mode: Includes")); updateSubTypeFilter(); } diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.h index 8b0267413..ce5546fc8 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.h @@ -28,7 +28,7 @@ public: void handleSubTypeToggled(const QString &mainType, bool active); void updateSubTypeFilter(); - void updateFilterMode(bool checked); + void updateFilterMode(); void syncWithFilterModel(); private: @@ -45,7 +45,7 @@ private: QMap activeSubTypes; // Track active filters QMap typeButtons; // Store toggle buttons - bool exactMatchMode = false; // Toggle between "Exact Match" and "Includes" + bool exactMatchMode = true; // Toggle between "Exact Match" and "Includes" }; #endif // VISUAL_DATABASE_DISPLAY_SUB_TYPE_FILTER_WIDGET_H