Cockatrice 2026-10-19-Development-3.1.2-beta.2
A virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
dlg_connect.h
Go to the documentation of this file.
1
6
7#ifndef DLG_CONNECT_H
8#define DLG_CONNECT_H
9
10#include <QCheckBox>
11#include <QDialog>
12#include <QLineEdit>
13#include <QMap>
14#include <QString>
16#include <qtmetamacros.h>
17#include <utility>
18
19class QCheckBox;
20class QComboBox;
21class QGridLayout;
22class QGroupBox;
23class QHBoxLayout;
24class QLabel;
25class QPushButton;
26class QRadioButton;
27class QVBoxLayout;
29class QWidget;
31
32class DlgConnect : public QDialog
33{
34 Q_OBJECT
35signals:
38
39public:
40 explicit DlgConnect(QWidget *parent = nullptr);
41 ~DlgConnect() override;
42 [[nodiscard]] QString getHost() const;
43 [[nodiscard]] int getPort() const
44 {
45 return portEdit->text().toInt();
46 }
47 [[nodiscard]] QString getPlayerName() const
48 {
49 return playernameEdit->text();
50 }
51 [[nodiscard]] QString getPassword() const
52 {
53 return passwordEdit->text();
54 }
55
56 [[nodiscard]] QString getStoredVerifier() const
57 {
58 return storedVerifier;
59 }
60 [[nodiscard]] QString getSaveName() const
61 {
62 // Trim so the profile lookup key always matches the name DlgConnect::actOk
63 // stored (it saves under saveEdit->text().trimmed()); otherwise a trailing
64 // space here misses the index and silently drops the saved verifier.
65 return saveEdit->text().trimmed();
66 }
67 [[nodiscard]] bool getSavePassword() const
68 {
69 return savePasswordCheckBox->isChecked();
70 }
71
72public slots:
74
75private slots:
76 void actOk();
77
79 void previousHostSelected(bool state);
80 void newHostSelected(bool state);
81 void actForgotPassword();
83 void updateDisplayInfo(const QString &saveName);
85 void rebuildComboBoxList(int failure = -1);
86
87private:
91 QVBoxLayout *mainLayout;
96 QComboBox *previousHosts;
102 const QString placeHolderText = tr("Downloading...");
103};
104#endif
QGridLayout * connectionLayout
Definition dlg_connect.h:88
QGroupBox * serverInfoGroupBox
Definition dlg_connect.h:90
QCheckBox * autoConnectCheckBox
Definition dlg_connect.h:95
void downloadThePublicServers()
Definition dlg_connect.cpp:202
DlgConnect(QWidget *parent=nullptr)
Definition dlg_connect.cpp:34
QLabel * serverIssuesLabel
Definition dlg_connect.h:92
HandlePublicServers * hps
Definition dlg_connect.h:100
QLabel * serverContactLink
Definition dlg_connect.h:93
QLabel * playernameLabel
Definition dlg_connect.h:92
~DlgConnect() override
QPushButton * btnDeleteServer
Definition dlg_connect.h:98
void actRemoveSavedServer()
Definition dlg_connect.cpp:396
QPushButton * btnRefreshServers
Definition dlg_connect.h:98
QComboBox * previousHosts
Definition dlg_connect.h:96
QLineEdit * hostEdit
Definition dlg_connect.h:94
QLabel * forgotPasswordLabel
Definition dlg_connect.h:93
QHBoxLayout * forgotPasswordLayout
Definition dlg_connect.h:89
void updateDisplayInfo(const QString &saveName)
Definition dlg_connect.cpp:271
QVBoxLayout * mainLayout
Definition dlg_connect.h:91
QString getStoredVerifier() const
Stored "$scrypt$..." verifier for challenge-response servers (never the plaintext password).
Definition dlg_connect.h:56
QLineEdit * passwordEdit
Definition dlg_connect.h:94
void actOk()
Definition dlg_connect.cpp:348
QGroupBox * loginGroupBox
Definition dlg_connect.h:90
QMap< QString, std::pair< QString, UserConnection_Information > > savedHostList
Definition dlg_connect.h:99
QLabel * hostLabel
Definition dlg_connect.h:92
QLabel * serverContactLabel
Definition dlg_connect.h:93
QPushButton * btnForgotPassword
Definition dlg_connect.h:98
QString getHost() const
Definition dlg_connect.cpp:381
void sigStartForgotPasswordRequest()
void newHostSelected(bool state)
Definition dlg_connect.cpp:313
QGridLayout * loginLayout
Definition dlg_connect.h:88
QLineEdit * portEdit
Definition dlg_connect.h:94
QString storedVerifier
Definition dlg_connect.h:101
void sigPublicServersDownloaded()
QLineEdit * playernameEdit
Definition dlg_connect.h:94
QGridLayout * grid
Definition dlg_connect.h:88
QLineEdit * saveEdit
Definition dlg_connect.h:94
QLabel * saveLabel
Definition dlg_connect.h:92
QLabel * passwordLabel
Definition dlg_connect.h:92
QGridLayout * serverInfoLayout
Definition dlg_connect.h:88
const QString placeHolderText
Definition dlg_connect.h:102
QString getPlayerName() const
Definition dlg_connect.h:47
QHBoxLayout * newHolderLayout
Definition dlg_connect.h:89
QLabel * portLabel
Definition dlg_connect.h:92
void rebuildComboBoxList(int failure=-1)
Definition dlg_connect.cpp:222
QCheckBox * savePasswordCheckBox
Definition dlg_connect.h:95
QString getSaveName() const
Definition dlg_connect.h:60
QString getPassword() const
Definition dlg_connect.h:51
void preRebuildComboBoxList()
Definition dlg_connect.cpp:210
void actForgotPassword()
Definition dlg_connect.cpp:386
QPushButton * btnConnect
Definition dlg_connect.h:98
void previousHostSelected(bool state)
Definition dlg_connect.cpp:260
int getPort() const
Definition dlg_connect.h:43
bool getSavePassword() const
Definition dlg_connect.h:67
void passwordSaved(QT_STATE_CHANGED_T state)
Definition dlg_connect.cpp:337
QRadioButton * newHostButton
Definition dlg_connect.h:97
QGroupBox * restrictionsGroupBox
Definition dlg_connect.h:90
QRadioButton * previousHostButton
Definition dlg_connect.h:97
Definition handle_public_servers.h:30
Definition game.h:18
Definition user_info_connection.h:19
#define QT_STATE_CHANGED_T
Definition macros.h:11