Search bar, fancier display, resolve providerId

This commit is contained in:
Brübach, Lukas 2025-11-24 20:41:21 +01:00
parent 6edaa6db25
commit cbbe9e7da0
8 changed files with 274 additions and 25 deletions

View file

@ -5,10 +5,12 @@
#include "../../interface/widgets/quick_settings/settings_button_widget.h"
#include "../../tab.h"
#include <QCheckBox>
#include <QHBoxLayout>
#include <QLineEdit>
#include <QNetworkAccessManager>
#include <QPushButton>
#include <QSpinBox>
#include <QString>
#include <libcockatrice/card/database/card_database.h>
@ -21,6 +23,7 @@ public:
explicit TabArchidekt(TabSupervisor *_tabSupervisor);
void retranslateUi() override;
QString buildSearchUrl();
void doSearch();
QString getTabText() const override
{
@ -53,6 +56,29 @@ private:
QPushButton *decksPushButton;
QLineEdit *searchBar;
QPushButton *searchPushButton;
// --- Search options UI ---
QWidget *searchOptionsContainer;
QHBoxLayout *searchOptionsLayout;
// Required / basic fields
QLineEdit *nameField; // Deck name substring
QLineEdit *ownerField; // Owner substring
// Colors
QVector<QCheckBox*> colorChecks; // White, Blue, Black, Green, Red, Colorless
QCheckBox *logicalAndCheck; // Require ALL colors instead of ANY
// Formats
QVector<QCheckBox*> formatChecks; // Format checkboxes (13 total)
// Page size
QSpinBox *pageSizeSpin;
// Cards and Commanders
QLineEdit *cardsField; // comma-separated quoted card names
QLineEdit *commandersField; // comma-separated quoted commander names
SettingsButtonWidget *settingsButton;
CardSizeWidget *cardSizeSlider;
CardInfoPtr cardToQuery;