mirror of
https://gitea.msk.dinamika-avia.ru/Constanta-Design/RRJServer.git
synced 2026-03-27 19:45:43 +03:00
Сервер рефакт
This commit is contained in:
@@ -18,6 +18,7 @@ add_library(ServerLMS SHARED
|
|||||||
Data/Client.h
|
Data/Client.h
|
||||||
Data/PacketType.h
|
Data/PacketType.h
|
||||||
Data/StreamingVersionData.h
|
Data/StreamingVersionData.h
|
||||||
|
Data/usertype.h
|
||||||
Systems/assetsmanager.cpp
|
Systems/assetsmanager.cpp
|
||||||
Systems/assetsmanager.h
|
Systems/assetsmanager.h
|
||||||
Systems/recognizesystem.cpp
|
Systems/recognizesystem.cpp
|
||||||
@@ -45,8 +46,7 @@ add_library(ServerLMS SHARED
|
|||||||
Systems/chatsystem.cpp
|
Systems/chatsystem.cpp
|
||||||
Systems/chatsystem.h
|
Systems/chatsystem.h
|
||||||
Systems/fasthashcalculator.cpp
|
Systems/fasthashcalculator.cpp
|
||||||
Systems/fasthashcalculator.h
|
Systems/fasthashcalculator.h
|
||||||
Data/usertype.h
|
|
||||||
providerdblms.cpp
|
providerdblms.cpp
|
||||||
providerdblms.h
|
providerdblms.h
|
||||||
ServerLMS.qrc
|
ServerLMS.qrc
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ DialogSettingsTray::DialogSettingsTray(QWidget *parent) :
|
|||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
|
|
||||||
settings = new DBSettings;
|
settings = new ServerDBSettings;
|
||||||
|
|
||||||
//Задаём два пункта с текстом локалей в комбобоксе
|
//Задаём два пункта с текстом локалей в комбобоксе
|
||||||
ui->cmbLanguage->addItems(QStringList() << "English" << "Русский");
|
ui->cmbLanguage->addItems(QStringList() << "English" << "Русский");
|
||||||
@@ -37,12 +37,12 @@ DialogSettingsTray::~DialogSettingsTray()
|
|||||||
delete settings;
|
delete settings;
|
||||||
}
|
}
|
||||||
|
|
||||||
DBSettings DialogSettingsTray::getSettings()
|
ServerDBSettings DialogSettingsTray::getSettings()
|
||||||
{
|
{
|
||||||
return *settings;
|
return *settings;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool DialogSettingsTray::loadSettings(DBSettings *settings)
|
bool DialogSettingsTray::loadSettings(ServerDBSettings *settings)
|
||||||
{
|
{
|
||||||
QFile file(settingsName);
|
QFile file(settingsName);
|
||||||
if(! file.open(QIODevice::ReadOnly))
|
if(! file.open(QIODevice::ReadOnly))
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
#include <QTranslator>
|
#include <QTranslator>
|
||||||
#include <QEvent>
|
#include <QEvent>
|
||||||
|
|
||||||
class DBSettings{
|
class ServerDBSettings{
|
||||||
public:
|
public:
|
||||||
QString Type;
|
QString Type;
|
||||||
QString Name;
|
QString Name;
|
||||||
@@ -28,11 +28,11 @@ public:
|
|||||||
explicit DialogSettingsTray(QWidget *parent = nullptr);
|
explicit DialogSettingsTray(QWidget *parent = nullptr);
|
||||||
~DialogSettingsTray();
|
~DialogSettingsTray();
|
||||||
|
|
||||||
DBSettings getSettings();
|
ServerDBSettings getSettings();
|
||||||
|
|
||||||
bool settingsServerIsChanged(){ return flSettingsServerChanged;}
|
bool settingsServerIsChanged(){ return flSettingsServerChanged;}
|
||||||
|
|
||||||
static bool loadSettings(DBSettings *settings);
|
static bool loadSettings(ServerDBSettings *settings);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
//сигнал об изменении языка интерфейса
|
//сигнал об изменении языка интерфейса
|
||||||
@@ -52,7 +52,7 @@ private:
|
|||||||
private:
|
private:
|
||||||
Ui::DialogSettingsTray *ui;
|
Ui::DialogSettingsTray *ui;
|
||||||
|
|
||||||
DBSettings *settings;
|
ServerDBSettings *settings;
|
||||||
|
|
||||||
bool flSettingsServerChanged;
|
bool flSettingsServerChanged;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -18,11 +18,16 @@ ServerLMSWidget::ServerLMSWidget(QWidget *parent) :
|
|||||||
server(nullptr),
|
server(nullptr),
|
||||||
updateThread(nullptr),
|
updateThread(nullptr),
|
||||||
loggerThread(nullptr),
|
loggerThread(nullptr),
|
||||||
|
mutex(nullptr),
|
||||||
dataParser(nullptr),
|
dataParser(nullptr),
|
||||||
processingSystem(nullptr),
|
processingSystem(nullptr),
|
||||||
updateController(nullptr),
|
updateController(nullptr),
|
||||||
|
assetsManager(nullptr),
|
||||||
|
commonClientHandler(nullptr),
|
||||||
|
chatSystem(nullptr),
|
||||||
providerDBLMS(nullptr),
|
providerDBLMS(nullptr),
|
||||||
language(languageENG)
|
language(languageENG),
|
||||||
|
errorCode(0)
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
mutex = new QMutex;
|
mutex = new QMutex;
|
||||||
@@ -38,10 +43,6 @@ ServerLMSWidget::ServerLMSWidget(QWidget *parent) :
|
|||||||
ui->btnStopServer->setEnabled(false);
|
ui->btnStopServer->setEnabled(false);
|
||||||
ui->btnStartServer->setEnabled(true);
|
ui->btnStartServer->setEnabled(true);
|
||||||
|
|
||||||
// Сделаем первоначальную инициализацию перевода для окна виджета
|
|
||||||
//qtLanguageTranslator.load(QString("translations/ServerLMS_") + QString("en_EN"), ".");
|
|
||||||
//qApp->installTranslator(&qtLanguageTranslator);
|
|
||||||
|
|
||||||
updateThread = new QThread;
|
updateThread = new QThread;
|
||||||
loggerThread = new QThread;
|
loggerThread = new QThread;
|
||||||
|
|
||||||
@@ -108,6 +109,20 @@ ServerLMSWidget::~ServerLMSWidget()
|
|||||||
server->stopServer();
|
server->stopServer();
|
||||||
updateThread->exit();
|
updateThread->exit();
|
||||||
loggerThread->exit();
|
loggerThread->exit();
|
||||||
|
|
||||||
|
|
||||||
|
delete server;
|
||||||
|
delete commonClientHandler;
|
||||||
|
delete dataParser;
|
||||||
|
delete processingSystem;
|
||||||
|
delete updateController;
|
||||||
|
delete assetsManager;
|
||||||
|
delete chatSystem;
|
||||||
|
delete providerDBLMS;
|
||||||
|
delete loggerThread;
|
||||||
|
delete updateThread;
|
||||||
|
delete mutex;
|
||||||
|
|
||||||
delete ui;
|
delete ui;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -208,11 +223,6 @@ void ServerLMSWidget::changeEvent(QEvent *event)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void ServerLMSWidget::on_cmbLanguage_currentTextChanged(const QString &arg1)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
void ServerLMSWidget::on_btnSettings_clicked()
|
void ServerLMSWidget::on_btnSettings_clicked()
|
||||||
{
|
{
|
||||||
DialogSettingsTray dlg(this);
|
DialogSettingsTray dlg(this);
|
||||||
@@ -251,7 +261,7 @@ void ServerLMSWidget::on_btnSettings_clicked()
|
|||||||
|
|
||||||
void ServerLMSWidget::setLanguageInterfase()
|
void ServerLMSWidget::setLanguageInterfase()
|
||||||
{
|
{
|
||||||
DBSettings settings;
|
ServerDBSettings settings;
|
||||||
DialogSettingsTray::loadSettings(&settings);
|
DialogSettingsTray::loadSettings(&settings);
|
||||||
|
|
||||||
if(settings.Language == "ENG")
|
if(settings.Language == "ENG")
|
||||||
|
|||||||
@@ -78,6 +78,7 @@ public slots:
|
|||||||
void slotUpdateListClients();
|
void slotUpdateListClients();
|
||||||
void slot_BlockAutorization(bool block);
|
void slot_BlockAutorization(bool block);
|
||||||
void addToLog(QString message);
|
void addToLog(QString message);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
void removeClient(int socketId);
|
void removeClient(int socketId);
|
||||||
|
|
||||||
@@ -96,9 +97,6 @@ public:
|
|||||||
private slots:
|
private slots:
|
||||||
void on_btnStartServer_clicked();
|
void on_btnStartServer_clicked();
|
||||||
void on_btnStopServer_clicked();
|
void on_btnStopServer_clicked();
|
||||||
|
|
||||||
void on_cmbLanguage_currentTextChanged(const QString &arg1);
|
|
||||||
|
|
||||||
void on_btnSettings_clicked();
|
void on_btnSettings_clicked();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
@@ -126,7 +126,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<spacer name="horizontalSpacer">
|
<spacer name="horizontalSpacer_1">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Horizontal</enum>
|
<enum>Qt::Horizontal</enum>
|
||||||
</property>
|
</property>
|
||||||
@@ -215,7 +215,7 @@
|
|||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" name="gridLayout_4">
|
<layout class="QGridLayout" name="gridLayout_4">
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_3">
|
<layout class="QVBoxLayout" name="verticalLayout_Clients">
|
||||||
<item>
|
<item>
|
||||||
<widget class="QListWidget" name="listWidget_Clients">
|
<widget class="QListWidget" name="listWidget_Clients">
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
@@ -250,7 +250,7 @@
|
|||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" name="gridLayout_3">
|
<layout class="QGridLayout" name="gridLayout_3">
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<layout class="QVBoxLayout" name="verticalLayout">
|
<layout class="QVBoxLayout" name="verticalLayout_Logger">
|
||||||
<item>
|
<item>
|
||||||
<widget class="QPlainTextEdit" name="loggerTextField">
|
<widget class="QPlainTextEdit" name="loggerTextField">
|
||||||
<property name="readOnly">
|
<property name="readOnly">
|
||||||
|
|||||||
@@ -6,6 +6,6 @@ int main(int argc, char *argv[])
|
|||||||
{
|
{
|
||||||
QApplication a(argc, argv);
|
QApplication a(argc, argv);
|
||||||
MainWindow w;
|
MainWindow w;
|
||||||
//w.show();
|
//w.show(); //По-умолчанию свернуто в трее
|
||||||
return a.exec();
|
return a.exec();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -67,15 +67,13 @@ MainWindow::MainWindow(QWidget *parent) :
|
|||||||
this, SLOT(slot_IconActivated(QSystemTrayIcon::ActivationReason)));
|
this, SLOT(slot_IconActivated(QSystemTrayIcon::ActivationReason)));
|
||||||
|
|
||||||
slot_Menu_HideWindow();
|
slot_Menu_HideWindow();
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Метод, который обрабатывает событие закрытия окна приложения
|
/* Метод, который обрабатывает событие закрытия окна приложения
|
||||||
* */
|
* */
|
||||||
void MainWindow::closeEvent(QCloseEvent * event)
|
void MainWindow::closeEvent(QCloseEvent * event)
|
||||||
{
|
{
|
||||||
/* Если окно видимо и чекбокс отмечен, то завершение приложения
|
/* Если окно видимо, то завершение приложения
|
||||||
* игнорируется, а окно просто скрывается, что сопровождается
|
* игнорируется, а окно просто скрывается, что сопровождается
|
||||||
* соответствующим всплывающим сообщением
|
* соответствующим всплывающим сообщением
|
||||||
*/
|
*/
|
||||||
@@ -92,7 +90,7 @@ void MainWindow::slot_IconActivated(QSystemTrayIcon::ActivationReason reason)
|
|||||||
{
|
{
|
||||||
switch (reason){
|
switch (reason){
|
||||||
case QSystemTrayIcon::Trigger:
|
case QSystemTrayIcon::Trigger:
|
||||||
/* иначе, если окно видимо, то оно скрывается,
|
/* если окно видимо, то оно скрывается,
|
||||||
* и наоборот, если скрыто, то разворачивается на экран
|
* и наоборот, если скрыто, то разворачивается на экран
|
||||||
* */
|
* */
|
||||||
if(!this->isVisible())
|
if(!this->isVisible())
|
||||||
@@ -119,6 +117,10 @@ MainWindow::~MainWindow()
|
|||||||
{
|
{
|
||||||
delete serverLMSWidget;
|
delete serverLMSWidget;
|
||||||
delete trayIcon;
|
delete trayIcon;
|
||||||
|
delete menu;
|
||||||
|
delete action_ShowWindow;
|
||||||
|
delete action_HideWindow;
|
||||||
|
delete action_Exit;
|
||||||
delete ui;
|
delete ui;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -135,28 +137,13 @@ void MainWindow::changeEvent(QEvent *event)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::on_cmbLanguage_currentIndexChanged(const QString &arg1)
|
|
||||||
{
|
|
||||||
QString language;
|
|
||||||
|
|
||||||
if(arg1 == QStringLiteral("English"))
|
|
||||||
language = QString("en_EN");
|
|
||||||
else
|
|
||||||
language = QString("ru_RU");
|
|
||||||
|
|
||||||
qtLanguageTranslator.load(QString("translations/TrayServerLMS_") + language, ".");
|
|
||||||
qApp->installTranslator(&qtLanguageTranslator);
|
|
||||||
|
|
||||||
emit signal_LanguageChanged(language);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::errorCheck()
|
void MainWindow::errorCheck()
|
||||||
{
|
{
|
||||||
if(serverLMSWidget->hasError() == 100)
|
if(serverLMSWidget->hasError() == 100)
|
||||||
{
|
{
|
||||||
QMessageBox msgBox;
|
QMessageBox msgBox;
|
||||||
|
|
||||||
msgBox.setWindowTitle("Ошибка!");
|
msgBox.setWindowTitle(tr("Error!"));
|
||||||
msgBox.setIcon(QMessageBox::Critical);
|
msgBox.setIcon(QMessageBox::Critical);
|
||||||
msgBox.setText(tr("No Client files found!"));
|
msgBox.setText(tr("No Client files found!"));
|
||||||
msgBox.setInformativeText(tr("* check Application for the presence of a folder with a build \n"
|
msgBox.setInformativeText(tr("* check Application for the presence of a folder with a build \n"
|
||||||
|
|||||||
@@ -40,20 +40,14 @@ public slots:
|
|||||||
//Слот обработки смены языка
|
//Слот обработки смены языка
|
||||||
void slot_LanguageChanged(QString language);
|
void slot_LanguageChanged(QString language);
|
||||||
|
|
||||||
private slots:
|
|
||||||
//Слот нажатия на иконку приложения в трее
|
//Слот нажатия на иконку приложения в трее
|
||||||
void slot_IconActivated(QSystemTrayIcon::ActivationReason reason);
|
void slot_IconActivated(QSystemTrayIcon::ActivationReason reason);
|
||||||
|
|
||||||
public slots:
|
|
||||||
//Слоты нажатия на пункты меню
|
//Слоты нажатия на пункты меню
|
||||||
void slot_Menu_ShowWindow();
|
void slot_Menu_ShowWindow();
|
||||||
void slot_Menu_HideWindow();
|
void slot_Menu_HideWindow();
|
||||||
void slot_Menu_Exit();
|
void slot_Menu_Exit();
|
||||||
|
|
||||||
private slots:
|
|
||||||
//Слот смены языка
|
|
||||||
void on_cmbLanguage_currentIndexChanged(const QString &arg1);
|
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
//сигнал об изменении языка интерфейса
|
//сигнал об изменении языка интерфейса
|
||||||
void signal_LanguageChanged(QString language);
|
void signal_LanguageChanged(QString language);
|
||||||
@@ -67,6 +61,7 @@ private:
|
|||||||
ServerLMSWidget* serverLMSWidget;
|
ServerLMSWidget* serverLMSWidget;
|
||||||
QTranslator qtLanguageTranslator;
|
QTranslator qtLanguageTranslator;
|
||||||
|
|
||||||
|
//Трей
|
||||||
QSystemTrayIcon* trayIcon;
|
QSystemTrayIcon* trayIcon;
|
||||||
QMenu * menu;
|
QMenu * menu;
|
||||||
QAction * action_ShowWindow;
|
QAction * action_ShowWindow;
|
||||||
|
|||||||
Reference in New Issue
Block a user