From f53256f5b15283d81fe4ce913a9a03a4e84f84ff Mon Sep 17 00:00:00 2001 From: krivoshein Date: Thu, 11 Sep 2025 15:23:26 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D1=84=D0=B0=D0=BA=D1=82=20=D0=B01?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../messanger/messangerwidget.cpp | 2 +- .../messanger/tabdialogmessenger.cpp | 48 +++++++++---------- .../messanger/tabdialogmessenger.h | 4 ++ 3 files changed, 27 insertions(+), 27 deletions(-) diff --git a/InstructorsAndTrainees/messanger/messangerwidget.cpp b/InstructorsAndTrainees/messanger/messangerwidget.cpp index 61e24d2..7817c77 100644 --- a/InstructorsAndTrainees/messanger/messangerwidget.cpp +++ b/InstructorsAndTrainees/messanger/messangerwidget.cpp @@ -89,7 +89,7 @@ void MessangerWidget::addTabDialogMessenger(User user) else {//Диалог уже существует - //Проверяем наличие диалога с этим клиентом + //Проверяем наличие диалога именно с этим клиентом if(tabDialogMessenger->getUserLogin() == user.getLogin()) { //Обновляем статус залогинивания diff --git a/InstructorsAndTrainees/messanger/tabdialogmessenger.cpp b/InstructorsAndTrainees/messanger/tabdialogmessenger.cpp index 26aa074..c791d83 100644 --- a/InstructorsAndTrainees/messanger/tabdialogmessenger.cpp +++ b/InstructorsAndTrainees/messanger/tabdialogmessenger.cpp @@ -22,43 +22,39 @@ OneDialogMessenger::~OneDialogMessenger() void OneDialogMessenger::addMsgWidgetLocal(QString text, QString timeStr) { - QListWidgetItem *listWidgetItem = new QListWidgetItem(); - QString avatar = ":/resources/icons/instructor.png"; - - int widthW = width(); - int widthSB = verticalScrollBar()->size().width(); - //TODO Времянка - widthW = 450; - widthSB = 17; - - MsgWidget *msgWidget = new MsgWidget(avatar, MsgWidget::AligneAvatar::Left, - widthW - widthSB); - - addItem(listWidgetItem); - setItemWidget(listWidgetItem, msgWidget); - - msgWidget->setText(text); - msgWidget->setTime(timeStr); - - //Корректировка высоты item - listWidgetItem->setSizeHint (QSize(10, msgWidget->height())); - - scrollToItem(listWidgetItem); + addMsgWidget(text, timeStr, MsgWidget::DirectionMsg::Outgoing); } void OneDialogMessenger::addMsgWidgetRemote(QString text, QString timeStr) +{ + addMsgWidget(text, timeStr, MsgWidget::DirectionMsg::Incoming); +} + +void OneDialogMessenger::addMsgWidget(QString text, QString timeStr, MsgWidget::DirectionMsg direction) { QListWidgetItem *listWidgetItem = new QListWidgetItem(); - QString avatar = ":/resources/icons/trainee.png"; + + QString avatar = ""; + MsgWidget::AligneAvatar aligneAvatar = MsgWidget::AligneAvatar::Left; + + //TODO уточнить аватарки! + if(direction == MsgWidget::DirectionMsg::Outgoing) + { + avatar = ":/resources/icons/instructor.png"; + aligneAvatar = MsgWidget::AligneAvatar::Left; + } + else + { + avatar = ":/resources/icons/trainee.png"; + aligneAvatar = MsgWidget::AligneAvatar::Right; + } int widthW = width(); int widthSB = verticalScrollBar()->size().width(); //TODO Времянка widthW = 450; - widthSB = 17; - MsgWidget *msgWidget = new MsgWidget(avatar, MsgWidget::AligneAvatar::Right, - widthW - widthSB); + MsgWidget *msgWidget = new MsgWidget(avatar, aligneAvatar, widthW - widthSB); addItem(listWidgetItem); setItemWidget(listWidgetItem, msgWidget); diff --git a/InstructorsAndTrainees/messanger/tabdialogmessenger.h b/InstructorsAndTrainees/messanger/tabdialogmessenger.h index eecfc59..de85790 100644 --- a/InstructorsAndTrainees/messanger/tabdialogmessenger.h +++ b/InstructorsAndTrainees/messanger/tabdialogmessenger.h @@ -2,6 +2,7 @@ #define TABDIALOGMESSENGER_H #include +#include "msgwidget.h" //Закладка ведения диалога с одним клиентом @@ -21,6 +22,9 @@ public: void addMsgWidgetLocal(QString text, QString timeStr = ""); void addMsgWidgetRemote(QString text, QString timeStr = ""); +private: + void addMsgWidget(QString text, QString timeStr, MsgWidget::DirectionMsg direction); + private: QString login; QString userId;