VersionSelectWidget refact

This commit is contained in:
2025-11-26 17:28:22 +03:00
parent 44b6299e59
commit 1c151d4aff
14 changed files with 221 additions and 102 deletions

View File

@@ -6,6 +6,7 @@
#include <QMutex> #include <QMutex>
#include "instructorsAndTrainees_global.h" #include "instructorsAndTrainees_global.h"
#include "connectortoserver.h" #include "connectortoserver.h"
#include "waitanimationwidget.h"
//Родительский класс представления БД Инструкторов/Обучаемых (самого верхнего уровня) //Родительский класс представления БД Инструкторов/Обучаемых (самого верхнего уровня)

View File

@@ -158,6 +158,13 @@ void SendSystem::sendCopyVersion(QString versionName)
stream << versionName; stream << versionName;
} }
void SendSystem::sendGetVersion()
{
QDataStream stream(socket);
stream.setVersion(QDataStream::Qt_DefaultCompiledVersion);
stream << PacketType::GET_VERSION;
}
void SendSystem::sendPacketType(PacketType packetType) void SendSystem::sendPacketType(PacketType packetType)
{ {
QDataStream stream(socket); QDataStream stream(socket);

View File

@@ -21,11 +21,14 @@ public:
void sendQTConnect(); void sendQTConnect();
void sendXMLAnswer(QByteArray array); void sendXMLAnswer(QByteArray array);
~SendSystem(); ~SendSystem();
void sendFinish(); void sendFinish();
public slots:
void sendPacketType(PacketType packetType);
void sendChangeVersion(StreamingVersionData *streamingVersion); void sendChangeVersion(StreamingVersionData *streamingVersion);
void sendDeleteVersion(StreamingVersionData *streamingVersion); void sendDeleteVersion(StreamingVersionData *streamingVersion);
void sendCopyVersion(QString versionName); void sendCopyVersion(QString versionName);
void sendPacketType(PacketType packetType); void sendGetVersion();
signals: signals:
void sigSend(); void sigSend();
QByteArray sigGetXmlAnswer(QString); QByteArray sigGetXmlAnswer(QString);

View File

@@ -62,6 +62,7 @@ enum PacketType{
TYPE_XMLANSWER_QUERY_LIST_SUB_PROC_AMM = 133, TYPE_XMLANSWER_QUERY_LIST_SUB_PROC_AMM = 133,
GET_VERSION = 149,
HASH_READY = 150, HASH_READY = 150,
CHANGE_DATA_VERSION = 151, CHANGE_DATA_VERSION = 151,
COPY_VERSION = 152, COPY_VERSION = 152,

View File

@@ -9,10 +9,9 @@ ConnectorToServer::ConnectorToServer(QWidget* parentWidget, QObject *parent) :
dataParser(nullptr), dataParser(nullptr),
sendSystem(nullptr), sendSystem(nullptr),
recognizeSystem(nullptr), recognizeSystem(nullptr),
versionSelectWidget(nullptr),
versionContainer(nullptr),
notifyController(nullptr), notifyController(nullptr),
fl_GetedOfflineMessages(false) fl_GetedOfflineMessages(false),
nameInstructorLoggedInLocal("")
{ {
initialize(); initialize();
} }
@@ -20,9 +19,7 @@ ConnectorToServer::ConnectorToServer(QWidget* parentWidget, QObject *parent) :
ConnectorToServer::~ConnectorToServer() ConnectorToServer::~ConnectorToServer()
{ {
delete client; delete client;
delete versionSelectWidget;
delete notifyController; delete notifyController;
delete versionContainer;
delete recognizeSystem; delete recognizeSystem;
delete sendSystem; delete sendSystem;
delete dataParser; delete dataParser;
@@ -57,7 +54,13 @@ void ConnectorToServer::StopConnectToServer()
void ConnectorToServer::setLoginName(QString name) void ConnectorToServer::setLoginName(QString name)
{ {
versionSelectWidget->setAuthor(name); //versionSelectWidget->setAuthor(name);
nameInstructorLoggedInLocal = name;
}
QString ConnectorToServer::getLoginName()
{
return nameInstructorLoggedInLocal;
} }
void ConnectorToServer::slot_sendMessage(ClientMessage clientMessage) void ConnectorToServer::slot_sendMessage(ClientMessage clientMessage)
@@ -67,7 +70,8 @@ void ConnectorToServer::slot_sendMessage(ClientMessage clientMessage)
void ConnectorToServer::slot_showServerList(QList<StreamingVersionData *> *serverList) void ConnectorToServer::slot_showServerList(QList<StreamingVersionData *> *serverList)
{ {
versionSelectWidget->fillView(serverList); //versionSelectWidget->fillView(serverList);
emit signal_showServerList(serverList);
} }
void ConnectorToServer::slot_HashReady() void ConnectorToServer::slot_HashReady()
@@ -81,6 +85,26 @@ void ConnectorToServer::slot_Auth(ServerAuthorization *serverAuth)
emit sigLoginResult(serverAuth); emit sigLoginResult(serverAuth);
} }
void ConnectorToServer::slot_SendDeleteVersion(StreamingVersionData *streaming)
{
emit signal_SendDeleteVersion(streaming);
}
void ConnectorToServer::slot_SendSwitchVersion(StreamingVersionData *selectVersion)
{
emit signal_SendSwitchVersion(selectVersion);
}
void ConnectorToServer::slot_SendCopyVersion(QString versionPair)
{
emit signal_SendCopyVersion(versionPair);
}
void ConnectorToServer::slot_getVersion()
{
emit signal_SendGetVersion();
}
void ConnectorToServer::initialize() void ConnectorToServer::initialize()
{ {
createObjects(); createObjects();
@@ -104,7 +128,6 @@ void ConnectorToServer::bindConnection()
connect(recognizeSystem,&RecognizeSystem::sigDeAuth,this,&ConnectorToServer::sigDeLoginResult); connect(recognizeSystem,&RecognizeSystem::sigDeAuth,this,&ConnectorToServer::sigDeLoginResult);
connect(recognizeSystem,&RecognizeSystem::signal_ReceiveMessage,this,&ConnectorToServer::signal_receiveMessage,Qt::AutoConnection); connect(recognizeSystem,&RecognizeSystem::signal_ReceiveMessage,this,&ConnectorToServer::signal_receiveMessage,Qt::AutoConnection);
connect(recognizeSystem,&RecognizeSystem::sigShowServerDataList,this,&ConnectorToServer::slot_showServerList); connect(recognizeSystem,&RecognizeSystem::sigShowServerDataList,this,&ConnectorToServer::slot_showServerList);
connect (recognizeSystem,&RecognizeSystem::sigSetVersion,versionContainer,&VersionContainer::setServerVersionData);
connect(recognizeSystem,&RecognizeSystem::sigAnswerQueryToDB_ListInstructors,this,&ConnectorToServer::slot_AnswerQueryToDB_ListInstructors); connect(recognizeSystem,&RecognizeSystem::sigAnswerQueryToDB_ListInstructors,this,&ConnectorToServer::slot_AnswerQueryToDB_ListInstructors);
connect(recognizeSystem,&RecognizeSystem::sigAnswerQueryToDB_ListGroups,this,&ConnectorToServer::slot_AnswerQueryToDB_ListGroups); connect(recognizeSystem,&RecognizeSystem::sigAnswerQueryToDB_ListGroups,this,&ConnectorToServer::slot_AnswerQueryToDB_ListGroups);
@@ -127,6 +150,15 @@ void ConnectorToServer::bindConnection()
connect(recognizeSystem,&RecognizeSystem::sigHashReady,this,&ConnectorToServer::slot_HashReady); connect(recognizeSystem,&RecognizeSystem::sigHashReady,this,&ConnectorToServer::slot_HashReady);
connect(recognizeSystem,&RecognizeSystem::signal_AnswerDocsChanged,this,&ConnectorToServer::slot_AnswerDocsChanged); connect(recognizeSystem,&RecognizeSystem::signal_AnswerDocsChanged,this,&ConnectorToServer::slot_AnswerDocsChanged);
connect(recognizeSystem, &RecognizeSystem::sigSetVersion, this, &ConnectorToServer::signal_SetVersion);
connect(recognizeSystem, &RecognizeSystem::sigAnimationActivated, this, &ConnectorToServer::signal_AnimationActivated);
connect(this, &ConnectorToServer::signal_SendCopyVersion, sendSystem, &SendSystem::sendCopyVersion);
connect(this, &ConnectorToServer::signal_SendDeleteVersion, sendSystem, &SendSystem::sendDeleteVersion);
connect(this, &ConnectorToServer::signal_SendSwitchVersion, sendSystem, &SendSystem::sendChangeVersion);
connect(this, &ConnectorToServer::signal_SendGetVersion, sendSystem, &SendSystem::sendGetVersion);
} }
void ConnectorToServer::createObjects() void ConnectorToServer::createObjects()
@@ -145,9 +177,6 @@ void ConnectorToServer::createObjects()
recognizeSystem->moveToThread(connectionThread); recognizeSystem->moveToThread(connectionThread);
notifyController = new NotifyController(parentWidget); notifyController = new NotifyController(parentWidget);
versionContainer = new VersionContainer;
versionSelectWidget = new VersionSelectWidget(parentWidget);
versionSelectWidget->initialize(sendSystem,versionContainer,notifyController, recognizeSystem);
connectionThread->start(); connectionThread->start();
connectionThread->setPriority(QThread::HighestPriority); connectionThread->setPriority(QThread::HighestPriority);

View File

@@ -4,7 +4,6 @@
#include <QObject> #include <QObject>
#include <QMap> #include <QMap>
#include <QMutex> #include <QMutex>
#include <widgets/versionselectwidget.h>
#include "Core\tcpclient.h" #include "Core\tcpclient.h"
#include "Core\dataparser.h" #include "Core\dataparser.h"
#include "Core\sendsystem.h" #include "Core\sendsystem.h"
@@ -14,8 +13,9 @@
#include "group.h" #include "group.h"
#include "computer.h" #include "computer.h"
#include "classroom.h" #include "classroom.h"
#include "streamingversiondata.h"
#include "Datas.h" #include "Datas.h"
#include "notifycontroller.h"
#include "streamingversiondata.h"
class ConnectorToServer : public QObject class ConnectorToServer : public QObject
{ {
@@ -36,6 +36,7 @@ public:
void StopConnectToServer(); void StopConnectToServer();
void setLoginName(QString name); void setLoginName(QString name);
QString getLoginName();
public: public:
//Send //Send
@@ -107,6 +108,12 @@ public slots:
void slot_HashReady(); void slot_HashReady();
void slot_Auth(ServerAuthorization * serverAuth); void slot_Auth(ServerAuthorization * serverAuth);
void slot_SendDeleteVersion(StreamingVersionData *streaming);
void slot_SendSwitchVersion(StreamingVersionData *selectVersion);
void slot_SendCopyVersion(QString versionPair);
void slot_getVersion();
signals: signals:
void sigSetConnect(ServerSettings* serverSettings,QThread *thread); void sigSetConnect(ServerSettings* serverSettings,QThread *thread);
void sigStopConnect(); void sigStopConnect();
@@ -136,6 +143,16 @@ signals:
void signal_AnswerDocsChanged(); void signal_AnswerDocsChanged();
void signal_SetVersion(StreamingVersionData* serverVersion);
void signal_AnimationActivated(bool flag);
void signal_SendDeleteVersion(StreamingVersionData *streaming);
void signal_SendSwitchVersion(StreamingVersionData *selectVersion);
void signal_SendCopyVersion(QString versionPair);
void signal_showServerList(QList<StreamingVersionData*> *serverList);
void signal_SendGetVersion();
private: private:
void initialize(); void initialize();
void bindConnection(); void bindConnection();
@@ -148,8 +165,6 @@ private:
DataParser *dataParser; DataParser *dataParser;
SendSystem *sendSystem; SendSystem *sendSystem;
RecognizeSystem *recognizeSystem; RecognizeSystem *recognizeSystem;
VersionSelectWidget *versionSelectWidget;
VersionContainer *versionContainer;
NotifyController *notifyController; NotifyController *notifyController;
//Списочная модель БД СУО //Списочная модель БД СУО
@@ -170,6 +185,8 @@ private:
ServerAuthorization serverAuth; ServerAuthorization serverAuth;
bool fl_GetedOfflineMessages; bool fl_GetedOfflineMessages;
QString nameInstructorLoggedInLocal;
}; };
#endif // CONNECTORTOSERVER_H #endif // CONNECTORTOSERVER_H

View File

@@ -4,6 +4,7 @@
#include <QFile> #include <QFile>
#include <QXmlStreamReader> #include <QXmlStreamReader>
#include <QRegExpValidator> #include <QRegExpValidator>
#include "versionselectwidget.h"
DialogSettings::DialogSettings(ConnectorToServer* connectorToServer, bool instructorIsLogged, QWidget *parent) : DialogSettings::DialogSettings(ConnectorToServer* connectorToServer, bool instructorIsLogged, QWidget *parent) :
QDialog(parent), QDialog(parent),
@@ -197,9 +198,21 @@ void DialogSettings::on_btnSave_clicked()
void DialogSettings::on_btnSetVersion_clicked() void DialogSettings::on_btnSetVersion_clicked()
{ {
/*
if(connectorToServer) if(connectorToServer)
if(connectorToServer->getIsConnected()) if(connectorToServer->getIsConnected())
connectorToServer->sendShowVersionSelect(); connectorToServer->sendShowVersionSelect();
*/
if(connectorToServer)
if(connectorToServer->getIsConnected())
{
VersionSelectWidget *versionSelectWidget = new VersionSelectWidget(connectorToServer, this);
versionSelectWidget->setAuthor(connectorToServer->getLoginName());
versionSelectWidget->initialize();
versionSelectWidget->exec();
delete versionSelectWidget;
}
} }
void DialogSettings::on_cmbLanguage_currentIndexChanged(int index) void DialogSettings::on_cmbLanguage_currentIndexChanged(int index)

View File

@@ -9,6 +9,7 @@
#include "tasktreepreparation.h" #include "tasktreepreparation.h"
#include "dialogchekertask.h" #include "dialogchekertask.h"
#include "dialoglistsubproc.h" #include "dialoglistsubproc.h"
#include "waitanimationwidget.h"
namespace Ui { namespace Ui {
class AMMtasksWidget; class AMMtasksWidget;

View File

@@ -7,6 +7,7 @@
#include "connectortoserver.h" #include "connectortoserver.h"
#include "tasktreepreparation.h" #include "tasktreepreparation.h"
#include "dialogchekertask.h" #include "dialogchekertask.h"
#include "waitanimationwidget.h"
namespace Ui { namespace Ui {
class FIMtasksWidget; class FIMtasksWidget;

View File

@@ -1,59 +1,87 @@
#include "versionselectwidget.h"
#include "ui_versionselectwidget.h"
#include "ui_versionselectwidget.h"
#include <QMessageBox>
#include <QResizeEvent> #include <QResizeEvent>
VersionSelectWidget::VersionSelectWidget(QWidget *parent) : #include "versionselectwidget.h"
QWidget(parent), #include "specialmessagebox.h"
#include "ui_versionselectwidget.h"
VersionSelectWidget::VersionSelectWidget(ConnectorToServer* connectorToServer, QWidget *parent) :
QDialog(parent),
ui(new Ui::VersionSelectWidget), ui(new Ui::VersionSelectWidget),
connectorToServer(connectorToServer),
versionContainer(nullptr),
serverDataList(nullptr),
selectedVersion(nullptr), selectedVersion(nullptr),
waitAnimationWidget(nullptr), waitAnimationWidget(nullptr),
recognizeSystem(nullptr) authorName(""),
flGetVersion(false)
{ {
ui->setupUi(this); ui->setupUi(this);
setWindowFlags(Qt::Dialog | Qt::MSWindowsFixedSizeDialogHint);
setAttribute(Qt::WA_ShowModal,true);
}
void VersionSelectWidget::initialize(SendSystem *sendSystem,VersionContainer *versionContainer,NotifyController *notifyController, RecognizeSystem *recognizeSystem) setMinimumSize(500, 300);
{ setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
this->recognizeSystem = recognizeSystem; setWindowTitle(tr("Version control"));
versionContainer = new VersionContainer;
waitAnimationWidget = new WaitAnimationWidget; waitAnimationWidget = new WaitAnimationWidget;
QMovie *movie = new QMovie(":/resources/icons/762.gif"); QMovie *movie = new QMovie(":/resources/icons/762.gif");
waitAnimationWidget->setParent(this); waitAnimationWidget->setParent(this);
waitAnimationWidget->initialize(movie,this); waitAnimationWidget->initialize(movie,this);
}
connect(this,&VersionSelectWidget::sigSendSwitchVersion,sendSystem,&SendSystem::sendChangeVersion,Qt::AutoConnection); VersionSelectWidget::~VersionSelectWidget()
connect(this,&VersionSelectWidget::sigSendCopyVersion,sendSystem,&SendSystem::sendCopyVersion,Qt::AutoConnection); {
connect(this,&VersionSelectWidget::sigSendDeleteVersion,sendSystem,&SendSystem::sendDeleteVersion,Qt::AutoConnection); waitAnimationWidget->hideWithStop();
connect(this,&VersionSelectWidget::sigSendNotify,notifyController,&NotifyController::showWarning,Qt::AutoConnection);
connect(recognizeSystem,&RecognizeSystem::sigAnimationActivated,this,&VersionSelectWidget::slot_activateLoadAnimation,Qt::AutoConnection); delete versionContainer;
this->versionContainer = versionContainer; delete waitAnimationWidget;
hide();
setWindowTitle(tr("Version control")); delete ui;
}
void VersionSelectWidget::initialize()
{
connect (connectorToServer, &ConnectorToServer::signal_SetVersion, this, &VersionSelectWidget::slot_SetVersion);
connect(connectorToServer, &ConnectorToServer::signal_AnimationActivated, this, &VersionSelectWidget::slot_activateLoadAnimation);
connect(connectorToServer, &ConnectorToServer::signal_showServerList, this, &VersionSelectWidget::slot_showServerList);
connect(this, &VersionSelectWidget::sigSendSwitchVersion, connectorToServer, &ConnectorToServer::slot_SendSwitchVersion);
connect(this, &VersionSelectWidget::sigSendCopyVersion, connectorToServer, &ConnectorToServer::slot_SendCopyVersion);
connect(this, &VersionSelectWidget::sigSendDeleteVersion, connectorToServer, &ConnectorToServer::slot_SendDeleteVersion);
connect(this, &VersionSelectWidget::signal_getVersion, connectorToServer, &ConnectorToServer::slot_getVersion);
emit signal_getVersion();
//connectorToServer->sendShowVersionSelect();
} }
void VersionSelectWidget::fillView(QList<StreamingVersionData *> *serverData) void VersionSelectWidget::fillView(QList<StreamingVersionData *> *serverData)
{ {
show();
ui->verListView->clear(); ui->verListView->clear();
serverDataList = serverData; serverDataList = serverData;
ui->verValue->setText(versionContainer->getServerVersionData()->getViewName()); ui->verValue->setText(versionContainer->getServerVersionData()->getViewName());
foreach(StreamingVersionData *data,*serverData) for(StreamingVersionData *data : *serverData)
{ {
ui->verListView->addItem(data->getViewName()); ui->verListView->addItem(data->getViewName());
} }
ui->verListView->setCurrentRow(0);
ui->verListView->itemClicked(ui->verListView->item(0));
}
QString VersionSelectWidget::changableText(bool flag)
{
if(flag) return tr("Yes");
else return tr("No");
} }
void VersionSelectWidget::on_verListView_itemClicked(QListWidgetItem *item) void VersionSelectWidget::on_verListView_itemClicked(QListWidgetItem *item)
{ {
foreach(StreamingVersionData *data,*serverDataList) for(StreamingVersionData *data : *serverDataList)
{ {
if(data->getViewName() == item->text()) if(data->getViewName() == item->text())
{ {
@@ -67,47 +95,42 @@ void VersionSelectWidget::on_verListView_itemClicked(QListWidgetItem *item)
} }
} }
QString VersionSelectWidget::changableText(bool flag)
{
if(flag) return tr("Yes");
else return tr("No");
}
void VersionSelectWidget::on_createDuplicateButton_clicked()
{
if (selectedVersion == nullptr)
{
emit sigSendNotify(tr("Version not selected"), this);
return;
}
DialogNewVersion *dlgNewVersion = new DialogNewVersion(this);
dlgNewVersion->initialize(this,selectedVersion->getViewName());
dlgNewVersion->exec();
delete dlgNewVersion;
}
void VersionSelectWidget::sendCopyEmit(QString newName) void VersionSelectWidget::sendCopyEmit(QString newName)
{ {
QString result = selectedVersion->getViewName() + ";" + newName + ";" + authorName; QString result = selectedVersion->getViewName() + ";" + newName + ";" + authorName;
if (selectedVersion == nullptr) if (selectedVersion == nullptr)
{ {
emit sigSendNotify(tr("Version not selected"), this); QString text = tr("Version not selected");
SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningClose, text).exec();
return; return;
} }
//versionContainer->setLocalVersionData(selectedVersion); versionContainer->setLocalVersionData(selectedVersion);
emit sigSendCopyVersion(result); emit sigSendCopyVersion(result);
} }
void VersionSelectWidget::on_DeleteVersionButton_clicked() void VersionSelectWidget::on_createDuplicateButton_clicked()
{ {
if (selectedVersion == nullptr) if (selectedVersion == nullptr)
{ {
emit sigSendNotify(tr("Version not selected"), this); QString text = tr("Version not selected");
SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningClose, text).exec();
return;
}
DialogNewVersion *dlgNewVersion = new DialogNewVersion(this);
dlgNewVersion->initialize(this, selectedVersion->getViewName());
dlgNewVersion->exec();
delete dlgNewVersion;
}
void VersionSelectWidget::on_deleteVersionButton_clicked()
{
if (selectedVersion == nullptr)
{
QString text = tr("Version not selected");
SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningClose, text).exec();
return; return;
} }
@@ -118,7 +141,8 @@ void VersionSelectWidget::on_switchServerVersionButton_clicked()
{ {
if (selectedVersion == nullptr) if (selectedVersion == nullptr)
{ {
emit sigSendNotify(tr("Version not selected"), this); QString text = tr("Version not selected");
SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningClose, text).exec();
return; return;
} }
@@ -139,6 +163,21 @@ void VersionSelectWidget::slot_activateLoadAnimation(bool flag)
} }
} }
void VersionSelectWidget::slot_showServerList(QList<StreamingVersionData *> *serverList)
{
fillView(serverList);
}
void VersionSelectWidget::slot_SetVersion(StreamingVersionData *serverVersion)
{
versionContainer->setServerVersionData(serverVersion);
if(!flGetVersion)
connectorToServer->sendShowVersionSelect();
flGetVersion = true;
}
void VersionSelectWidget::setAuthor(QString name) void VersionSelectWidget::setAuthor(QString name)
{ {
authorName = name; authorName = name;
@@ -149,15 +188,3 @@ void VersionSelectWidget::resizeEvent(QResizeEvent *event)
QSize size = event->size(); QSize size = event->size();
waitAnimationWidget->resize(size); waitAnimationWidget->resize(size);
} }
VersionSelectWidget::~VersionSelectWidget()
{
waitAnimationWidget->hideWithStop();
delete waitAnimationWidget;
delete ui;
}

View File

@@ -3,30 +3,28 @@
#include <QListWidget> #include <QListWidget>
#include <QWidget> #include <QWidget>
#include <QDialog>
#include <Core/sendsystem.h> #include "versioncontainer.h"
#include <Core/versioncontainer.h> #include "streamingversiondata.h"
#include <notifycontroller.h> #include "dialognewversion.h"
#include <streamingversiondata.h> #include "waitanimationwidget.h"
#include <dialognewversion.h> #include "connectortoserver.h"
#include <waitanimationwidget.h> #include "versioncontainer.h"
#include "recognizesystem.h"
namespace Ui { namespace Ui {
class VersionSelectWidget; class VersionSelectWidget;
} }
class VersionSelectWidget : public QWidget class VersionSelectWidget : public QDialog
{ {
Q_OBJECT Q_OBJECT
public: public:
explicit VersionSelectWidget(QWidget *parent = nullptr); explicit VersionSelectWidget(ConnectorToServer* connectorToServer, QWidget *parent = nullptr);
~VersionSelectWidget(); ~VersionSelectWidget();
void initialize(SendSystem *sendSystem,VersionContainer *versionContainer,NotifyController *notifyController, RecognizeSystem *recognizeSystem); void initialize();
void fillView(QList<StreamingVersionData*> *serverData);
void sendCopyEmit(QString newName); void sendCopyEmit(QString newName);
void setAuthor(QString name); void setAuthor(QString name);
@@ -35,30 +33,44 @@ public:
private slots: private slots:
void on_createDuplicateButton_clicked(); void on_createDuplicateButton_clicked();
void on_DeleteVersionButton_clicked(); void on_deleteVersionButton_clicked();
void on_switchServerVersionButton_clicked(); void on_switchServerVersionButton_clicked();
void on_verListView_itemClicked(QListWidgetItem *item); void on_verListView_itemClicked(QListWidgetItem *item);
private slots:
void slot_activateLoadAnimation(bool flag); void slot_activateLoadAnimation(bool flag);
void slot_showServerList(QList<StreamingVersionData*> *serverList);
void slot_SetVersion(StreamingVersionData* serverVersion);
signals: signals:
void sigSendDeleteVersion(StreamingVersionData *streaming); void sigSendDeleteVersion(StreamingVersionData *streaming);
void sigSendSwitchVersion(StreamingVersionData *selectVersion); void sigSendSwitchVersion(StreamingVersionData *selectVersion);
void sigSendCopyVersion(QString versionPair); void sigSendCopyVersion(QString versionPair);
void sigSendNotify(QString message, QWidget *parentWidget = nullptr);
void signal_getVersion();
private:
QString changableText(bool flag);
void fillView(QList<StreamingVersionData*> *serverData);
private: private:
Ui::VersionSelectWidget *ui; Ui::VersionSelectWidget *ui;
SendSystem *sendSystem;
QList<StreamingVersionData*> *serverDataList; ConnectorToServer* connectorToServer;
VersionContainer *versionContainer; VersionContainer *versionContainer;
NotifyController *notifyController;
QList<StreamingVersionData*> *serverDataList;
StreamingVersionData *selectedVersion; StreamingVersionData *selectedVersion;
WaitAnimationWidget *waitAnimationWidget; WaitAnimationWidget *waitAnimationWidget;
RecognizeSystem *recognizeSystem;
QString authorName; QString authorName;
QString changableText(bool flag);
bool flGetVersion;
}; };
#endif // VERSIONSELECTWIDGET_H #endif // VERSIONSELECTWIDGET_H

View File

@@ -156,7 +156,7 @@
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QPushButton" name="DeleteVersionButton"> <widget class="QPushButton" name="deleteVersionButton">
<property name="sizePolicy"> <property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred"> <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch> <horstretch>0</horstretch>

View File

@@ -45,6 +45,7 @@ enum PacketType
TYPE_XMLANSWER_QUERY_LIST_SUB_PROC_AMM = 133, TYPE_XMLANSWER_QUERY_LIST_SUB_PROC_AMM = 133,
//ответы по обновлениям //ответы по обновлениям
GET_VERSION = 149,
HASH_READY = 150, HASH_READY = 150,
CHANGE_DATA_VERSION = 151, CHANGE_DATA_VERSION = 151,
COPY_VERSION = 152, COPY_VERSION = 152,
@@ -91,6 +92,7 @@ inline QString enumToString(PacketType value) {
case PacketType::TYPE_XMLANSWER_QUERY_TASKS_XML_AMM: return "TYPE_XMLANSWER_QUERY_TASKS_XML_AMM"; case PacketType::TYPE_XMLANSWER_QUERY_TASKS_XML_AMM: return "TYPE_XMLANSWER_QUERY_TASKS_XML_AMM";
case PacketType::TYPE_XMLANSWER_DOCS_CHANGED: return "TYPE_XMLANSWER_DOCS_CHANGED"; case PacketType::TYPE_XMLANSWER_DOCS_CHANGED: return "TYPE_XMLANSWER_DOCS_CHANGED";
case PacketType::TYPE_XMLANSWER_QUERY_LIST_SUB_PROC_AMM: return "TYPE_XMLANSWER_QUERY_LIST_SUB_PROC_AMM"; case PacketType::TYPE_XMLANSWER_QUERY_LIST_SUB_PROC_AMM: return "TYPE_XMLANSWER_QUERY_LIST_SUB_PROC_AMM";
case PacketType::GET_VERSION: return "GET_VERSION";
case PacketType::HASH_READY: return "HASH_READY"; case PacketType::HASH_READY: return "HASH_READY";
case PacketType::CHANGE_DATA_VERSION: return "CHANGE_DATA_VERSION"; case PacketType::CHANGE_DATA_VERSION: return "CHANGE_DATA_VERSION";
case PacketType::COPY_VERSION: return "COPY_VERSION"; case PacketType::COPY_VERSION: return "COPY_VERSION";

View File

@@ -372,6 +372,11 @@ void RecognizeSystem::recognize()
continue; continue;
} }
if(packetType == PacketType::GET_VERSION)
{
clientHandler->sendVersion();
}
if(packetType == PacketType::CHANGE_DATA_VERSION) if(packetType == PacketType::CHANGE_DATA_VERSION)
{ {
stream.startTransaction(); stream.startTransaction();