From b0c02e208f770132f7f9fc4b7a9c2d7564bab6d9 Mon Sep 17 00:00:00 2001 From: krivoshein Date: Tue, 9 Sep 2025 12:32:43 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D1=84=D0=B0=D0=BA=D1=823=20=D0=9C?= =?UTF-8?q?=D0=B5=D1=81=D1=81=D0=B5=D0=BD=D0=B4=D0=B6=D0=B5=D1=80=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../instructorsandtraineeswidget.cpp | 1 - .../messanger/messangercontroller.cpp | 13 +-- .../messanger/messangercontroller.h | 4 +- .../messanger/messangerwidget.cpp | 97 +------------------ .../messanger/messangerwidget.h | 4 - 5 files changed, 9 insertions(+), 110 deletions(-) diff --git a/InstructorsAndTrainees/instructorsandtraineeswidget.cpp b/InstructorsAndTrainees/instructorsandtraineeswidget.cpp index 5af7356..105b764 100644 --- a/InstructorsAndTrainees/instructorsandtraineeswidget.cpp +++ b/InstructorsAndTrainees/instructorsandtraineeswidget.cpp @@ -51,7 +51,6 @@ InstructorsAndTraineesWidget::InstructorsAndTraineesWidget(QWidget *parent) : connect(connectorToServer,&ConnectorToServer::signal_ConnectedToServer,this,&InstructorsAndTraineesWidget::slot_ConnectedToServer); - connect(viewerTrainees, &ViewerTrainees::signal_traineeSelected, messangerController, &MessangerController::slot_traineeSelected); connect(viewerTrainees, &ViewerTrainees::signal_traineeSelected, this, &InstructorsAndTraineesWidget::slot_traineeSelected); //Размещение diff --git a/InstructorsAndTrainees/messanger/messangercontroller.cpp b/InstructorsAndTrainees/messanger/messangercontroller.cpp index 07f639b..b17c379 100644 --- a/InstructorsAndTrainees/messanger/messangercontroller.cpp +++ b/InstructorsAndTrainees/messanger/messangercontroller.cpp @@ -76,10 +76,15 @@ void MessangerController::setGUIclientId(QString id) void MessangerController::clearAllWidgets() { + /* for(MessangerWidget* widget : listWidgets) { widget->clear(); } + */ + for(MessangerWidget* widget : listWidgets) + delete widget; + listWidgets.clear(); } @@ -140,11 +145,3 @@ void MessangerController::slot_initMessanger(QList listTrainees) widget->initMessangerWidget(listTrainees); } } - -void MessangerController::slot_traineeSelected(QString login) -{ - for(MessangerWidget* widget : listWidgets) - { - widget->traineeSelected(login); - } -} diff --git a/InstructorsAndTrainees/messanger/messangercontroller.h b/InstructorsAndTrainees/messanger/messangercontroller.h index 66d2ab5..010ce0b 100644 --- a/InstructorsAndTrainees/messanger/messangercontroller.h +++ b/InstructorsAndTrainees/messanger/messangercontroller.h @@ -20,7 +20,7 @@ public: ~MessangerController(); public: - MessangerWidget* newWidget(QWidget *parent, Trainee* trainee = nullptr, QVBoxLayout* boxLayout = nullptr); + MessangerWidget* newWidget(QWidget *parent, Trainee* trainee, QVBoxLayout* boxLayout); void deleteWidget(MessangerWidget* msgWdgt); void setGUIclientId(QString id); @@ -28,10 +28,8 @@ public: public slots: void slot_sendMessage(ClientMessage clientMessage); - void slot_receiveMessage(ClientMessage clientMessage); void slot_initMessanger(QList listTrainees); - void slot_traineeSelected(QString login); private: ConnectorToServer* connectorToServer; diff --git a/InstructorsAndTrainees/messanger/messangerwidget.cpp b/InstructorsAndTrainees/messanger/messangerwidget.cpp index 131e866..40c99ea 100644 --- a/InstructorsAndTrainees/messanger/messangerwidget.cpp +++ b/InstructorsAndTrainees/messanger/messangerwidget.cpp @@ -38,9 +38,10 @@ void MessangerWidget::addMsgFromClient(Trainee trainee, QString text) //Ищем нужный диалог QString login = trainee.getLogin(); foreach(TabDialogMessenger* tabDialog, listTabDialogMessenger) - {//Есть такой + { if(tabDialog->getUserLogin() == trainee.getLogin()) - { + {//Есть такой + //Добавляем в существующую вкладку ui->tabWidget->setCurrentIndex(getIndexTab(login)); tabDialog->addMsgWidgetRemote(text); @@ -99,40 +100,6 @@ void MessangerWidget::addTabDialogMessenger(Trainee trainee) ui->tabWidget->setTabIcon(index, QIcon(":/resources/icons/circleGray.png")); } -void MessangerWidget::actualizationTabsDialogMessenger() -{ - foreach(TabDialogMessenger* tabDialog, listTabDialogMessenger) - { - QString login = tabDialog->getUserLogin(); - bool exist = false; - - for(Trainee trainee : listTrainees) - { - if(trainee.getLogin() == login) - { - if(trainee.getArchived()) - {//Стал архивным - //Удаляем диалог с клиентом - ui->tabWidget->removeTab(getIndexTab(login)); - listTabDialogMessenger.removeOne(tabDialog); - } - else - { - exist = true; - } - - break; - } - } - if(!exist) - {//Нет такого логина - //Удаляем диалог с клиентом - ui->tabWidget->removeTab(getIndexTab(login)); - listTabDialogMessenger.removeOne(tabDialog); - } - } -} - int MessangerWidget::getIndexTab(QString login) { for(int index = 0; index < ui->tabWidget->count(); index++) @@ -144,14 +111,6 @@ int MessangerWidget::getIndexTab(QString login) return -1; } -void MessangerWidget::clear() -{ - ui->btnSend->setEnabled(false); - ui->editMsg->setEnabled(false); - listTrainees.clear(); - actualizationTabsDialogMessenger(); -} - void MessangerWidget::showSendedMessage(QString text) { //Ищем нужный диалог @@ -189,54 +148,6 @@ void MessangerWidget::on_btnSend_clicked() emit signal_sendMessage(message); ui->editMsg->clear(); - - /* - //Ищем нужный диалог - foreach(TabDialogMessenger* tabDialog, listTabDialogMessenger) - { - if(tabDialog->getUserLogin() == selectedUserLogin) - { - //Добавляем в существующую вкладку - tabDialog->addMsgWidgetLocal(text); - //Делаем ее активной - ui->tabWidget->setCurrentIndex(getIndexTab(selectedUserLogin)); - - return; - } - }*/ -} - -void MessangerWidget::traineeSelected(QString login) -{ - //Ищем нужный диалог - foreach(TabDialogMessenger* tabDialog, listTabDialogMessenger) - { - if(tabDialog->getUserLogin() == login) - { - //Активируем нужную вкладку - ui->tabWidget->setCurrentIndex(getIndexTab(login)); - ui->btnSend->setEnabled(true); - ui->editMsg->setEnabled(true); - return; - //break; - } - else - { - - } - } - ui->btnSend->setEnabled(false); - ui->editMsg->setEnabled(false); - - /* - for(Trainee trainee : this->listTrainees) - { - if(trainee.getLogin() != selectedUserLogin) - { - ui->tabWidget->removeTab(getIndexTab(trainee.getLogin())); - } - } - */ } void MessangerWidget::getTabDialogMessengerByID(QString id_user) @@ -275,8 +186,6 @@ void MessangerWidget::initMessangerWidget(QList listTrainees) this->listTrainees = listTrainees; } - actualizationTabsDialogMessenger(); - for(Trainee trainee: this->listTrainees) { if(! trainee.getArchived()) diff --git a/InstructorsAndTrainees/messanger/messangerwidget.h b/InstructorsAndTrainees/messanger/messangerwidget.h index f1c5d05..0bab1d7 100644 --- a/InstructorsAndTrainees/messanger/messangerwidget.h +++ b/InstructorsAndTrainees/messanger/messangerwidget.h @@ -34,12 +34,9 @@ public: void initialize(QString id); void addTabDialogMessenger(Trainee trainee); - void actualizationTabsDialogMessenger(); int getIndexTab(QString login); - void clear(); - void showSendedMessage(QString text); void setOneTrainee(Trainee trainee); @@ -60,7 +57,6 @@ public: void initMessangerWidget(QList listTrainees); //? - void traineeSelected(QString login); //? void getTabDialogMessengerByID(QString id_user);