Cockatrice 2026-10-19-Development-3.1.2-beta.2
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 <QLabel>
11#include <QPixmap>
12#include <QPushButton>
13#include <QString>
14#include <QWidget>
16#include <libcockatrice/protocol/pb/serverinfo_user.pb.h>
17#include <qnamespace.h>
18#include <qtmetamacros.h>
19
20class AbstractClient;
21class Response;
22
23class UserInfoBox : public QWidget
24{
25 Q_OBJECT
26private:
32 QPixmap avatarPixmap;
35 bool hasUserInfo = false;
36 UserLevelFlags userLevel;
38 QString privLevel;
39
40 static QString getAgeString(int ageSeconds);
41
42public:
43 UserInfoBox(AbstractClient *_client, bool editable, QWidget *parent = nullptr, Qt::WindowFlags flags = {});
44 void retranslateUi();
45
46private slots:
47 void processResponse(const Response &r);
48 void processEditResponse(const Response &r);
49 void processPasswordResponse(const Response &r);
50 void processAvatarResponse(const Response &r);
51
52 void actEdit();
53 void actEditInternal(const Response &r);
54 void actPassword();
55 void actAvatar();
56 void actBannerCard();
57public slots:
58 void updateInfo(const ServerInfo_User &user);
59 void updateInfo(const QString &userName);
60
61private:
62 void resizeEvent(QResizeEvent *event) override;
63 void changePassword(const QString &oldPassword, const QString &newPassword);
64};
65
66#endif
Definition abstract_client.h:73
void processEditResponse(const Response &r)
Definition user_info_box.cpp:380
ServerInfo_User currentUserInfo
Definition user_info_box.h:34
void actAvatar()
Definition user_info_box.cpp:320
QLabel countryLabel3
Definition user_info_box.h:30
void actBannerCard()
Definition user_info_box.cpp:336
QLabel userLevelIcon
Definition user_info_box.h:29
UserInfoBox(AbstractClient *_client, bool editable, QWidget *parent=nullptr, Qt::WindowFlags flags={})
Definition user_info_box.cpp:39
void processAvatarResponse(const Response &r)
Definition user_info_box.cpp:425
QLabel avatarPic
Definition user_info_box.h:29
AbstractClient * client
Definition user_info_box.h:27
QLabel countryLabel2
Definition user_info_box.h:29
QLabel nameLabel
Definition user_info_box.h:29
QPushButton bannerCardButton
Definition user_info_box.h:31
QPixmap avatarPixmap
Definition user_info_box.h:32
void retranslateUi()
Definition user_info_box.cpp:95
ServerInfo_User::PawnColorsOverride pawnColors
Definition user_info_box.h:37
QLabel userLevelLabel2
Definition user_info_box.h:30
void changePassword(const QString &oldPassword, const QString &newPassword)
Definition user_info_box.cpp:300
void updateInfo(const ServerInfo_User &user)
Definition user_info_box.cpp:108
void actPassword()
Definition user_info_box.cpp:271
QLabel realNameLabel1
Definition user_info_box.h:29
bool hasUserInfo
Definition user_info_box.h:35
static QString getAgeString(int ageSeconds)
Definition user_info_box.cpp:169
void processResponse(const Response &r)
Definition user_info_box.cpp:212
void actEditInternal(const Response &r)
Definition user_info_box.cpp:230
QLabel accountAgeLabel2
Definition user_info_box.h:30
QLabel accountAgeLabel1
Definition user_info_box.h:30
QString privLevel
Definition user_info_box.h:38
QLabel countryLabel1
Definition user_info_box.h:29
QLabel realNameLabel2
Definition user_info_box.h:29
QLabel userLevelLabel1
Definition user_info_box.h:30
bool editable
Definition user_info_box.h:28
bool hasAvatar
Definition user_info_box.h:33
QPushButton avatarButton
Definition user_info_box.h:31
QPushButton editButton
Definition user_info_box.h:31
void actEdit()
Definition user_info_box.cpp:220
QPushButton passwordButton
Definition user_info_box.h:31
void processPasswordResponse(const Response &r)
Definition user_info_box.cpp:402
void resizeEvent(QResizeEvent *event) override
Definition user_info_box.cpp:442
UserLevelFlags userLevel
Definition user_info_box.h:36
Definition response.proto:11
Definition serverinfo_user.proto:12
Definition serverinfo_user.proto:2