Files
RRJServer/DB_IaT/InstructorsAndTrainees/messanger/messangerwidget.h

83 lines
2.2 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#ifndef MESSANGERWIDGET_H
#define MESSANGERWIDGET_H
#include <QWidget>
#include <QListWidget>
#include <QTranslator>
#include <trainee.h>
class DialogMsg
{
public:
DialogMsg();
DialogMsg(int indexTab, QListWidget* listWidget, QString login)
{
this->indexTab = indexTab;
this->listWidget = listWidget;
this->login = login;
};
QString getLogin() {return login;};
QListWidget* getListWidget() {return listWidget;};
int getIndexTab() {return indexTab;};
private:
QString login = "";
int indexTab = 0;
QListWidget* listWidget = nullptr;
};
namespace Ui {
class MessangerWidget;
}
class MessangerWidget : public QWidget
{
Q_OBJECT
public:
explicit MessangerWidget(QWidget *parent = nullptr);
~MessangerWidget();
protected:
// Метод получения событий
// В нём будет производиться проверка события смены перевода приложения
void changeEvent(QEvent * event) override;
public:
enum ETypeMsg{fromClient, toClient};
void addMsg(QString login, QString name, QString text, ETypeMsg typeMsg);
void addDialogTab(QString login, QString name);
private slots:
void on_btnSend_clicked();
void on_tabWidget_currentChanged(int index);
signals:
//сигнал о готовности нового сообщения на отправку клиенту
void signal_msgToClientReady(QString login, QString text);
//сигнал об изменении вкладки диалога
void signal_tabMessengerChanged(QString login);
public slots:
//слот обработки сигнала о выборе обучаемого
void slot_traineeSelected(QString login);
void slot_LanguageChanged(QString language);
//слот обработки сигнала об инициализации мессенджера
void slot_InitMessanger(QList<Trainee> listTrainees);
private:
virtual void keyPressEvent(QKeyEvent *event) override;
private:
QList <DialogMsg> listDialogMsg;
QString currLogin = "";
Ui::MessangerWidget *ui;
QTranslator qtLanguageTranslator;
};
#endif // MESSANGERWIDGET_H