mirror of
https://gitea.msk.dinamika-avia.ru/Constanta-Design/RRJServer.git
synced 2026-03-27 19:45:43 +03:00
Messenger убрал табы
This commit is contained in:
@@ -9,22 +9,21 @@
|
|||||||
|
|
||||||
MessangerWidget::MessangerWidget(QWidget *parent) :
|
MessangerWidget::MessangerWidget(QWidget *parent) :
|
||||||
QWidget(parent),
|
QWidget(parent),
|
||||||
tabDialogMessenger(nullptr),
|
oneDialogMessenger(nullptr),
|
||||||
currGUIclientId(""),
|
currGUIclientId(""),
|
||||||
ui(new Ui::MessangerWidget)
|
ui(new Ui::MessangerWidget)
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
|
|
||||||
ui->tabWidget->removeTab(1);
|
|
||||||
ui->tabWidget->removeTab(0);
|
|
||||||
|
|
||||||
ui->btnSend->setObjectName("btnSend");
|
ui->btnSend->setObjectName("btnSend");
|
||||||
ui->editMsg->setObjectName("editMsg");
|
ui->editMsg->setObjectName("editMsg");
|
||||||
|
|
||||||
|
ui->lblUser->setObjectName("lblUser");
|
||||||
}
|
}
|
||||||
|
|
||||||
MessangerWidget::~MessangerWidget()
|
MessangerWidget::~MessangerWidget()
|
||||||
{
|
{
|
||||||
delete tabDialogMessenger;
|
delete oneDialogMessenger;
|
||||||
delete ui;
|
delete ui;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -41,8 +40,8 @@ void MessangerWidget::reinitMessangerWidget(User user)
|
|||||||
{
|
{
|
||||||
userRemote = user;
|
userRemote = user;
|
||||||
|
|
||||||
//Обновляем статус залогинивания
|
//Обновляем заголовок
|
||||||
updateLoggedIn(userRemote.getLoggedIn());
|
updateHeader(userRemote);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -59,21 +58,21 @@ int MessangerWidget::getIDuserRemote()
|
|||||||
void MessangerWidget::showSendedMessage(ClientMessage clientMessage)
|
void MessangerWidget::showSendedMessage(ClientMessage clientMessage)
|
||||||
{
|
{
|
||||||
if(currGUIclientId == clientMessage.fromId)
|
if(currGUIclientId == clientMessage.fromId)
|
||||||
tabDialogMessenger->addMsgWidgetLocal(clientMessage.Text, clientMessage.timeStr);
|
oneDialogMessenger->addMsgWidgetLocal(clientMessage.Text, clientMessage.timeStr);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MessangerWidget::showReceivedMessage(ClientMessage clientMessage)
|
void MessangerWidget::showReceivedMessage(ClientMessage clientMessage)
|
||||||
{
|
{
|
||||||
if(QString::number(userRemote.getID()) == clientMessage.fromId)
|
if(QString::number(userRemote.getID()) == clientMessage.fromId)
|
||||||
tabDialogMessenger->addMsgWidgetRemote(clientMessage.Text, clientMessage.timeStr);
|
oneDialogMessenger->addMsgWidgetRemote(clientMessage.Text, clientMessage.timeStr);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MessangerWidget::addTabDialogMessenger(User user)
|
void MessangerWidget::addTabDialogMessenger(User user)
|
||||||
{
|
{
|
||||||
if(!tabDialogMessenger)
|
if(!oneDialogMessenger)
|
||||||
{//Диалога еще не существует
|
{//Диалога еще не существует
|
||||||
|
|
||||||
tabDialogMessenger = new OneDialogMessenger(QString::number(user.getID()), user.getTypeUserDB(), this);
|
oneDialogMessenger = new OneDialogMessenger(QString::number(user.getID()), user.getTypeUserDB(), this);
|
||||||
|
|
||||||
//Добавляем новую вкладку диалога
|
//Добавляем новую вкладку диалога
|
||||||
QString typeUserStr = "";
|
QString typeUserStr = "";
|
||||||
@@ -81,30 +80,49 @@ void MessangerWidget::addTabDialogMessenger(User user)
|
|||||||
typeUserStr = tr("Trainee");
|
typeUserStr = tr("Trainee");
|
||||||
else if(user.getTypeUserDB() == User::TypeUserDBInstructor)
|
else if(user.getTypeUserDB() == User::TypeUserDBInstructor)
|
||||||
typeUserStr = tr("Instructor");
|
typeUserStr = tr("Instructor");
|
||||||
int index = ui->tabWidget->addTab(tabDialogMessenger, typeUserStr + ": " + user.getName() + " (" + user.getLogin() + ")");
|
//int index = ui->tabWidget->addTab(oneDialogMessenger, typeUserStr + ": " + user.getName() + " (" + user.getLogin() + ")");
|
||||||
|
|
||||||
//Обновляем статус залогинивания
|
ui->verticalLayout_ListMsg->addWidget(oneDialogMessenger);
|
||||||
updateLoggedIn(user.getLoggedIn());
|
|
||||||
|
//Обновляем заголовок
|
||||||
|
updateHeader(user);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{//Диалог уже существует
|
{//Диалог уже существует
|
||||||
|
|
||||||
//Проверяем наличие диалога именно с этим клиентом
|
//Проверяем наличие диалога именно с этим клиентом
|
||||||
if(tabDialogMessenger->getUserId() == user.getID())
|
if(oneDialogMessenger->getUserId() == user.getID())
|
||||||
{
|
{
|
||||||
//Обновляем статус залогинивания
|
//Обновляем заголовок
|
||||||
updateLoggedIn(user.getLoggedIn());
|
updateHeader(user);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void MessangerWidget::updateLoggedIn(bool loggedIn)
|
void MessangerWidget::updateHeader(User user)
|
||||||
{
|
{
|
||||||
//Обновляем статус залогинивания
|
//Обновляем статус залогинивания
|
||||||
if(loggedIn)
|
if(user.getLoggedIn())
|
||||||
ui->tabWidget->setTabIcon(0, QIcon(":/resources/icons/circleGreen.png"));
|
{
|
||||||
|
//ui->tabWidget->setTabIcon(0, QIcon(":/resources/icons/circleGreen.png"));
|
||||||
|
|
||||||
|
ui->lblLoggedIn->setPixmap(QPixmap(QStringLiteral(":/resources/icons/circleGreen.png")));
|
||||||
|
}
|
||||||
else
|
else
|
||||||
ui->tabWidget->setTabIcon(0, QIcon(":/resources/icons/circleGray.png"));
|
{
|
||||||
|
//ui->tabWidget->setTabIcon(0, QIcon(":/resources/icons/circleGray.png"));
|
||||||
|
|
||||||
|
ui->lblLoggedIn->setPixmap(QPixmap(QStringLiteral(":/resources/icons/circleGray.png")));
|
||||||
|
}
|
||||||
|
|
||||||
|
QString typeUserStr = "";
|
||||||
|
if(user.getTypeUserDB() == User::TypeUserDBTrainee)
|
||||||
|
typeUserStr = tr("Trainee");
|
||||||
|
else if(user.getTypeUserDB() == User::TypeUserDBInstructor)
|
||||||
|
typeUserStr = tr("Instructor");
|
||||||
|
QString fullName = typeUserStr + ": " + user.getName() + " (" + user.getLogin() + ")";
|
||||||
|
|
||||||
|
ui->lblUser->setText(fullName);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MessangerWidget::on_btnSend_clicked()
|
void MessangerWidget::on_btnSend_clicked()
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ public:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
void addTabDialogMessenger(User user);
|
void addTabDialogMessenger(User user);
|
||||||
void updateLoggedIn(bool loggedIn);
|
void updateHeader(User user);
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void on_btnSend_clicked();
|
void on_btnSend_clicked();
|
||||||
@@ -47,7 +47,7 @@ protected:
|
|||||||
void changeEvent(QEvent * event) override;
|
void changeEvent(QEvent * event) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
OneDialogMessenger* tabDialogMessenger;
|
OneDialogMessenger* oneDialogMessenger;
|
||||||
User userRemote;
|
User userRemote;
|
||||||
QString currGUIclientId; //id этого клиента
|
QString currGUIclientId; //id этого клиента
|
||||||
|
|
||||||
|
|||||||
@@ -23,43 +23,51 @@
|
|||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_Main">
|
<layout class="QVBoxLayout" name="verticalLayout_Main">
|
||||||
<item>
|
<item>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_Dialog" stretch="0">
|
<layout class="QVBoxLayout" name="verticalLayout_Dialog" stretch="0,0">
|
||||||
<property name="sizeConstraint">
|
<property name="sizeConstraint">
|
||||||
<enum>QLayout::SetDefaultConstraint</enum>
|
<enum>QLayout::SetDefaultConstraint</enum>
|
||||||
</property>
|
</property>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QTabWidget" name="tabWidget">
|
<layout class="QHBoxLayout" name="horizontalLayout_User">
|
||||||
<property name="sizePolicy">
|
<item>
|
||||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
<widget class="QLabel" name="lblLoggedIn">
|
||||||
<horstretch>0</horstretch>
|
<property name="sizePolicy">
|
||||||
<verstretch>0</verstretch>
|
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||||
</sizepolicy>
|
<horstretch>0</horstretch>
|
||||||
</property>
|
<verstretch>0</verstretch>
|
||||||
<property name="minimumSize">
|
</sizepolicy>
|
||||||
<size>
|
</property>
|
||||||
<width>0</width>
|
<property name="minimumSize">
|
||||||
<height>0</height>
|
<size>
|
||||||
</size>
|
<width>32</width>
|
||||||
</property>
|
<height>32</height>
|
||||||
<property name="font">
|
</size>
|
||||||
<font>
|
</property>
|
||||||
<pointsize>12</pointsize>
|
<property name="maximumSize">
|
||||||
</font>
|
<size>
|
||||||
</property>
|
<width>32</width>
|
||||||
<property name="currentIndex">
|
<height>32</height>
|
||||||
<number>0</number>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QWidget" name="tab_1">
|
<property name="text">
|
||||||
<attribute name="title">
|
<string/>
|
||||||
<string>Tab 1</string>
|
</property>
|
||||||
</attribute>
|
<property name="pixmap">
|
||||||
</widget>
|
<pixmap resource="../resources.qrc">:/resources/icons/circleGray.png</pixmap>
|
||||||
<widget class="QWidget" name="tab_2">
|
</property>
|
||||||
<attribute name="title">
|
</widget>
|
||||||
<string>Tab 2</string>
|
</item>
|
||||||
</attribute>
|
<item>
|
||||||
</widget>
|
<widget class="QLabel" name="lblUser">
|
||||||
</widget>
|
<property name="text">
|
||||||
|
<string>TextLabel</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_ListMsg"/>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
|
|||||||
@@ -175,13 +175,7 @@
|
|||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" name="gridLayout_6">
|
<layout class="QGridLayout" name="gridLayout_6">
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<widget class="QWidget" name="widget_Messenger" native="true">
|
<layout class="QVBoxLayout" name="verticalLayout_Messenger"/>
|
||||||
<layout class="QGridLayout" name="gridLayout_7">
|
|
||||||
<item row="0" column="0">
|
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_Messenger"/>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
|
|||||||
Reference in New Issue
Block a user