Cockatrice 2026-06-27-Development-3.1.0-beta.3
A virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
user_info_box.h
Go to the documentation of this file.
1
6
7#ifndef USERINFOBOX_H
8#define USERINFOBOX_H
9
10#include <QDateTime>
11#include <QLabel>
12#include <QPushButton>
13#include <QWidget>
15#include <libcockatrice/protocol/pb/serverinfo_user.pb.h>
17
18class AbstractClient;
19class Response;
20
21class UserInfoBox : public QWidget
22{
23 Q_OBJECT
24private:
30 QPixmap avatarPixmap;
32 ServerInfo_User currentUserInfo;
33 bool hasUserInfo = false;
34 UserLevelFlags userLevel;
35 ServerInfo_User::PawnColorsOverride pawnColors;
36 QString privLevel;
37
38 static QString getAgeString(int ageSeconds);
39
40public:
41 UserInfoBox(AbstractClient *_client, bool editable, QWidget *parent = nullptr, Qt::WindowFlags flags = {});
42 void retranslateUi();
43
44private slots:
45 void processResponse(const Response &r);
46 void processEditResponse(const Response &r);
47 void processPasswordResponse(const Response &r);
48 void processAvatarResponse(const Response &r);
49
50 void actEdit();
51 void actEditInternal(const Response &r);
52 void actPassword();
53 void actAvatar();
54 void actBannerCard();
55public slots:
56 void updateInfo(const ServerInfo_User &user);
57 void updateInfo(const QString &userName);
58
59private:
60 void resizeEvent(QResizeEvent *event) override;
61 void changePassword(const QString &oldPassword, const QString &newPassword);
62};
63
64#endif
Definition abstract_client.h:51
void processEditResponse(const Response &r)
Definition user_info_box.cpp:359
ServerInfo_User currentUserInfo
Definition user_info_box.h:32
void actAvatar()
Definition user_info_box.cpp:300
QLabel countryLabel3
Definition user_info_box.h:28
void actBannerCard()
Definition user_info_box.cpp:316
QLabel userLevelIcon
Definition user_info_box.h:27
UserInfoBox(AbstractClient *_client, bool editable, QWidget *parent=nullptr, Qt::WindowFlags flags={})
Definition user_info_box.cpp:23
void processAvatarResponse(const Response &r)
Definition user_info_box.cpp:404
QLabel avatarPic
Definition user_info_box.h:27
AbstractClient * client
Definition user_info_box.h:25
QLabel countryLabel2
Definition user_info_box.h:27
QLabel nameLabel
Definition user_info_box.h:27
QPushButton bannerCardButton
Definition user_info_box.h:29
QPixmap avatarPixmap
Definition user_info_box.h:30
void retranslateUi()
Definition user_info_box.cpp:79
ServerInfo_User::PawnColorsOverride pawnColors
Definition user_info_box.h:35
QLabel userLevelLabel2
Definition user_info_box.h:28
void changePassword(const QString &oldPassword, const QString &newPassword)
Definition user_info_box.cpp:282
void updateInfo(const ServerInfo_User &user)
Definition user_info_box.cpp:92
void actPassword()
Definition user_info_box.cpp:253
QLabel realNameLabel1
Definition user_info_box.h:27
bool hasUserInfo
Definition user_info_box.h:33
static QString getAgeString(int ageSeconds)
Definition user_info_box.cpp:151
void processResponse(const Response &r)
Definition user_info_box.cpp:194
void actEditInternal(const Response &r)
Definition user_info_box.cpp:212
QLabel accountAgeLabel2
Definition user_info_box.h:28
QLabel accountAgeLabel1
Definition user_info_box.h:28
QString privLevel
Definition user_info_box.h:36
QLabel countryLabel1
Definition user_info_box.h:27
QLabel realNameLabel2
Definition user_info_box.h:27
QLabel userLevelLabel1
Definition user_info_box.h:28
bool editable
Definition user_info_box.h:26
bool hasAvatar
Definition user_info_box.h:31
QPushButton avatarButton
Definition user_info_box.h:29
QPushButton editButton
Definition user_info_box.h:29
void actEdit()
Definition user_info_box.cpp:202
QPushButton passwordButton
Definition user_info_box.h:29
void processPasswordResponse(const Response &r)
Definition user_info_box.cpp:381
void resizeEvent(QResizeEvent *event) override
Definition user_info_box.cpp:421
UserLevelFlags userLevel
Definition user_info_box.h:34