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) :
|
||||
QWidget(parent),
|
||||
tabDialogMessenger(nullptr),
|
||||
oneDialogMessenger(nullptr),
|
||||
currGUIclientId(""),
|
||||
ui(new Ui::MessangerWidget)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
|
||||
ui->tabWidget->removeTab(1);
|
||||
ui->tabWidget->removeTab(0);
|
||||
|
||||
ui->btnSend->setObjectName("btnSend");
|
||||
ui->editMsg->setObjectName("editMsg");
|
||||
|
||||
ui->lblUser->setObjectName("lblUser");
|
||||
}
|
||||
|
||||
MessangerWidget::~MessangerWidget()
|
||||
{
|
||||
delete tabDialogMessenger;
|
||||
delete oneDialogMessenger;
|
||||
delete ui;
|
||||
}
|
||||
|
||||
@@ -41,8 +40,8 @@ void MessangerWidget::reinitMessangerWidget(User user)
|
||||
{
|
||||
userRemote = user;
|
||||
|
||||
//Обновляем статус залогинивания
|
||||
updateLoggedIn(userRemote.getLoggedIn());
|
||||
//Обновляем заголовок
|
||||
updateHeader(userRemote);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -59,21 +58,21 @@ int MessangerWidget::getIDuserRemote()
|
||||
void MessangerWidget::showSendedMessage(ClientMessage clientMessage)
|
||||
{
|
||||
if(currGUIclientId == clientMessage.fromId)
|
||||
tabDialogMessenger->addMsgWidgetLocal(clientMessage.Text, clientMessage.timeStr);
|
||||
oneDialogMessenger->addMsgWidgetLocal(clientMessage.Text, clientMessage.timeStr);
|
||||
}
|
||||
|
||||
void MessangerWidget::showReceivedMessage(ClientMessage clientMessage)
|
||||
{
|
||||
if(QString::number(userRemote.getID()) == clientMessage.fromId)
|
||||
tabDialogMessenger->addMsgWidgetRemote(clientMessage.Text, clientMessage.timeStr);
|
||||
oneDialogMessenger->addMsgWidgetRemote(clientMessage.Text, clientMessage.timeStr);
|
||||
}
|
||||
|
||||
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 = "";
|
||||
@@ -81,30 +80,49 @@ void MessangerWidget::addTabDialogMessenger(User user)
|
||||
typeUserStr = tr("Trainee");
|
||||
else if(user.getTypeUserDB() == User::TypeUserDBInstructor)
|
||||
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() + ")");
|
||||
|
||||
//Обновляем статус залогинивания
|
||||
updateLoggedIn(user.getLoggedIn());
|
||||
ui->verticalLayout_ListMsg->addWidget(oneDialogMessenger);
|
||||
|
||||
//Обновляем заголовок
|
||||
updateHeader(user);
|
||||
}
|
||||
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)
|
||||
ui->tabWidget->setTabIcon(0, QIcon(":/resources/icons/circleGreen.png"));
|
||||
if(user.getLoggedIn())
|
||||
{
|
||||
//ui->tabWidget->setTabIcon(0, QIcon(":/resources/icons/circleGreen.png"));
|
||||
|
||||
ui->lblLoggedIn->setPixmap(QPixmap(QStringLiteral(":/resources/icons/circleGreen.png")));
|
||||
}
|
||||
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()
|
||||
|
||||
@@ -31,7 +31,7 @@ public:
|
||||
|
||||
private:
|
||||
void addTabDialogMessenger(User user);
|
||||
void updateLoggedIn(bool loggedIn);
|
||||
void updateHeader(User user);
|
||||
|
||||
private slots:
|
||||
void on_btnSend_clicked();
|
||||
@@ -47,7 +47,7 @@ protected:
|
||||
void changeEvent(QEvent * event) override;
|
||||
|
||||
private:
|
||||
OneDialogMessenger* tabDialogMessenger;
|
||||
OneDialogMessenger* oneDialogMessenger;
|
||||
User userRemote;
|
||||
QString currGUIclientId; //id этого клиента
|
||||
|
||||
|
||||
@@ -23,46 +23,54 @@
|
||||
<item row="0" column="0">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_Main">
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_Dialog" stretch="0">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_Dialog" stretch="0,0">
|
||||
<property name="sizeConstraint">
|
||||
<enum>QLayout::SetDefaultConstraint</enum>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QTabWidget" name="tabWidget">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_User">
|
||||
<item>
|
||||
<widget class="QLabel" name="lblLoggedIn">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>12</pointsize>
|
||||
</font>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="pixmap">
|
||||
<pixmap resource="../resources.qrc">:/resources/icons/circleGray.png</pixmap>
|
||||
</property>
|
||||
<widget class="QWidget" name="tab_1">
|
||||
<attribute name="title">
|
||||
<string>Tab 1</string>
|
||||
</attribute>
|
||||
</widget>
|
||||
<widget class="QWidget" name="tab_2">
|
||||
<attribute name="title">
|
||||
<string>Tab 2</string>
|
||||
</attribute>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="lblUser">
|
||||
<property name="text">
|
||||
<string>TextLabel</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_ListMsg"/>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_Input">
|
||||
<property name="sizeConstraint">
|
||||
|
||||
@@ -174,9 +174,6 @@
|
||||
<string>Chat</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_6">
|
||||
<item row="0" column="0">
|
||||
<widget class="QWidget" name="widget_Messenger" native="true">
|
||||
<layout class="QGridLayout" name="gridLayout_7">
|
||||
<item row="0" column="0">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_Messenger"/>
|
||||
</item>
|
||||
@@ -184,9 +181,6 @@
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="groupBox_2">
|
||||
|
||||
Reference in New Issue
Block a user