mirror of
https://gitea.msk.dinamika-avia.ru/Constanta-Design/RRJServer.git
synced 2026-03-27 19:45:43 +03:00
50 lines
1.2 KiB
C++
50 lines
1.2 KiB
C++
#ifndef MESSANGERCONTROLLER_H
|
|
#define MESSANGERCONTROLLER_H
|
|
|
|
#include <QObject>
|
|
#include <QVBoxLayout>
|
|
#include "messangerwidget.h"
|
|
#include "connectortoserver.h"
|
|
|
|
struct MessageOfMessanger
|
|
{
|
|
QString text;
|
|
bool flLocal;
|
|
};
|
|
|
|
class MessangerController : public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit MessangerController(ConnectorToServer* connectorToServer, QObject *parent = nullptr);
|
|
~MessangerController();
|
|
|
|
public:
|
|
MessangerWidget* newWidget(QWidget *parent, Trainee* trainee = nullptr, QVBoxLayout* boxLayout = nullptr);
|
|
void deleteWidget(MessangerWidget* msgWdgt);
|
|
|
|
void setGUIclientId(QString id);
|
|
void clearAllWidgets();
|
|
|
|
signals:
|
|
void signal_tabMessengerChanged(QString login);
|
|
|
|
public slots:
|
|
void slot_sendMessage(ClientMessage clientMessage);
|
|
void slot_tabMessengerChanged(QString login);
|
|
|
|
void slot_receiveMessage(ClientMessage clientMessage);
|
|
void slot_initMessanger(QList<Trainee> listTrainees);
|
|
void slot_traineeSelected(QString login);
|
|
|
|
private:
|
|
ConnectorToServer* connectorToServer;
|
|
QList <MessangerWidget*> listWidgets;
|
|
|
|
QString GUIclientId; //id этого GUI клиента
|
|
|
|
QMap <int, QList<MessageOfMessanger>*> mapAlldialogsWithClients;
|
|
};
|
|
|
|
#endif // MESSANGERCONTROLLER_H
|