Правильные аватары для Юзеров (удаленных) в чате

This commit is contained in:
2025-09-12 12:51:21 +03:00
parent 96d63effa5
commit 2a8947f378
3 changed files with 16 additions and 14 deletions

View File

@@ -73,7 +73,7 @@ void MessangerWidget::addTabDialogMessenger(User user)
if(!oneDialogMessenger)
{//Диалога еще не существует
oneDialogMessenger = new OneDialogMessenger(QString::number(user.getID()), user.getTypeUserDB(), this);
oneDialogMessenger = new OneDialogMessenger(user, this);
ui->verticalLayout_ListMsg->addWidget(oneDialogMessenger);

View File

@@ -2,15 +2,13 @@
#include "tabdialogmessenger.h"
#include "msgwidget.h"
#include "user.h"
#include "instructor.h"
OneDialogMessenger::OneDialogMessenger(QString userId, QString typeUserDB, QWidget *parent):
QListWidget(parent),
userId(""),
typeUserDB("")
OneDialogMessenger::OneDialogMessenger(User user, QWidget *parent):
QListWidget(parent)
{
this->userId = userId;
this->typeUserDB = typeUserDB;
this->user = user;
setWordWrap(true);
setVerticalScrollBarPolicy(Qt::ScrollBarPolicy::ScrollBarAlwaysOn);
@@ -38,7 +36,6 @@ void OneDialogMessenger::addMsgWidget(QString text, QString timeStr, MsgWidget::
QString avatar = "";
MsgWidget::AligneAvatar aligneAvatar = MsgWidget::AligneAvatar::Left;
//TODO уточнить аватарки!
if(direction == MsgWidget::DirectionMsg::Outgoing)
{//Исходящее
avatar = ":/resources/icons/instructor.png";
@@ -46,10 +43,15 @@ void OneDialogMessenger::addMsgWidget(QString text, QString timeStr, MsgWidget::
}
else
{//Входящее
if(typeUserDB == User::TypeUserDBTrainee)
if(user.getTypeUserDB() == User::TypeUserDBTrainee)
avatar = ":/resources/icons/trainee.png";
else
avatar = ":/resources/icons/instructor.png";
{
if(static_cast<Instructor*>(&user)->getIsAdmin())
avatar = ":/resources/icons/admin.png";
else
avatar = ":/resources/icons/instructor.png";
}
aligneAvatar = MsgWidget::AligneAvatar::Right;
}

View File

@@ -3,16 +3,17 @@
#include <QListWidget>
#include "msgwidget.h"
#include "user.h"
class OneDialogMessenger : public QListWidget
{
Q_OBJECT
public:
OneDialogMessenger(QString userId, QString typeUserDB, QWidget *parent = nullptr);
OneDialogMessenger(User user, QWidget *parent = nullptr);
~OneDialogMessenger();
QString getUserId() {return userId;}
int getUserId() {return user.getID();}
void addMsgWidgetLocal(QString text, QString timeStr = "");
void addMsgWidgetRemote(QString text, QString timeStr = "");
@@ -21,8 +22,7 @@ private:
void addMsgWidget(QString text, QString timeStr, MsgWidget::DirectionMsg direction);
private:
QString userId;
QString typeUserDB;
User user;
};
#endif // TABDIALOGMESSENGER_H