Cockatrice 2026-10-19-Development-3.1.2-beta.2
A virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
card_database_setup_page.h
Go to the documentation of this file.
1#ifndef CARD_DATABASE_SETUP_PAGE_H
2#define CARD_DATABASE_SETUP_PAGE_H
3
6
7#include <QSize>
8#include <QString>
9#include <QtGlobal>
10#include <qtmetamacros.h>
11
12class QComboBox;
13class QLabel;
14class QLineEdit;
15class QProgressBar;
16class QPushButton;
17class QSpinBox;
18class QWidget;
19
21{
22 Q_OBJECT
23
24public:
25 explicit CardDatabaseSetupPage(QWidget *parent = nullptr);
26
27 void initializePage() override;
28 bool isComplete() const override;
29 bool isSkippable() const override;
30 QString stepTitle() const override;
31 QString stepSubtitle() const override;
32 QString nextButtonText() const override;
33 bool handleNextClick() override;
34 void retranslateUi() override;
35
36 void onUpdateFinished(bool success);
37 void onUpdateProgress(const CardUpdateProgress &progress);
38
39signals:
42
43private:
44 enum class State
45 {
46 NotStarted,
47 Running,
48 Succeeded,
49 Failed,
50 };
51
52 void setState(State newState);
53 bool alreadyHaveDatabase() const;
54
55 QString oracleSettingsFilePath() const;
56 QString readCustomUrl() const;
57 void writeCustomUrl(const QString &url);
58
59 void onToggleAdvanced(bool open);
60 void onApplyCustomUrl();
62
63 QLabel *statusLabel;
64 QProgressBar *progressBar;
65 QPushButton *retryButton;
66 QPushButton *manualButton;
67
69 QWidget *advancedPanel;
70 QLineEdit *urlLineEdit;
71 QLabel *urlHintLabel;
73 QPushButton *applyAndRetryButton;
74
79
82};
83
84#endif // CARD_DATABASE_SETUP_PAGE_H
void initializePage() override
Called every time the page becomes visible, including navigating back to it.
Definition card_database_setup_page.cpp:165
State
Definition card_database_setup_page.h:45
@ NotStarted
Definition card_database_setup_page.h:46
QWidget * advancedPanel
Definition card_database_setup_page.h:69
QLabel * startupBehaviorLabel
Definition card_database_setup_page.h:75
QLabel * urlHintLabel
Definition card_database_setup_page.h:71
void retranslateUi() override
Definition card_database_setup_page.cpp:330
void onToggleAdvanced(bool open)
Definition card_database_setup_page.cpp:233
QLabel * statusLabel
Definition card_database_setup_page.h:63
QSize windowSizeBeforeExpansion
Definition card_database_setup_page.h:81
QString oracleSettingsFilePath() const
Definition card_database_setup_page.cpp:144
QPushButton * advancedToggleButton
Definition card_database_setup_page.h:68
QSpinBox * checkIntervalSpinBox
Definition card_database_setup_page.h:78
bool isSkippable() const override
Whether the wizard's "Skip" button should be offered on this page.
Definition card_database_setup_page.cpp:315
QPushButton * restoreDefaultUrlButton
Definition card_database_setup_page.h:72
bool handleNextClick() override
Called when the user presses the Next button. Return true to allow advancing to the next page,...
Definition card_database_setup_page.cpp:223
QLineEdit * urlLineEdit
Definition card_database_setup_page.h:70
QPushButton * manualButton
Definition card_database_setup_page.h:66
void onApplyCustomUrl()
Definition card_database_setup_page.cpp:256
void onUpdateProgress(const CardUpdateProgress &progress)
Definition card_database_setup_page.cpp:191
QString readCustomUrl() const
Definition card_database_setup_page.cpp:149
void onRestoreDefaultUrl()
Definition card_database_setup_page.cpp:275
QProgressBar * progressBar
Definition card_database_setup_page.h:64
QString nextButtonText() const override
Override to replace the "Next"/"Finish" button text on this page. Return an empty string to use the d...
Definition card_database_setup_page.cpp:218
QPushButton * retryButton
Definition card_database_setup_page.h:65
State state
Definition card_database_setup_page.h:80
QString stepTitle() const override
Definition card_database_setup_page.cpp:320
void onUpdateFinished(bool success)
Definition card_database_setup_page.cpp:183
void writeCustomUrl(const QString &url)
Definition card_database_setup_page.cpp:155
bool isComplete() const override
Whether Next/Finish should currently be enabled. Pages doing async work can flip this mid-step; emit ...
Definition card_database_setup_page.cpp:310
QLabel * checkIntervalLabel
Definition card_database_setup_page.h:77
QPushButton * applyAndRetryButton
Definition card_database_setup_page.h:73
bool alreadyHaveDatabase() const
Definition card_database_setup_page.cpp:139
QString stepSubtitle() const override
Definition card_database_setup_page.cpp:325
QComboBox * startupBehaviorCombo
Definition card_database_setup_page.h:76
void setState(State newState)
Definition card_database_setup_page.cpp:281
CardDatabaseSetupPage(QWidget *parent=nullptr)
Definition card_database_setup_page.cpp:30
FirstRunWizardPage(QWidget *parent=nullptr)
Definition first_run_wizard_page.h:20
One progress line read from the card database updater's stdout.
Definition card_update_progress.h:24