ref: change initialize logic

*complete without change animation
This commit is contained in:
semenov
2025-08-14 15:40:46 +03:00
parent 05e09792d7
commit 0c805708ef
38 changed files with 1047 additions and 1008 deletions

View File

@@ -3,18 +3,18 @@
#include <QThread>
UpdateController::UpdateController(DataParserOutput *dataParserOut, SendSystem *sendSystem, QObject *parent) :
UpdateController::UpdateController(QObject *parent) :
QObject(parent),
versionContainer(nullptr)
{
this->sendSystem = sendSystem;
this->dataParserOut = dataParserOut;
applicationFolderPath = QDir::currentPath() + applicationFolderName;
}
void UpdateController::initialize(VersionContainer *versionContainer)
void UpdateController::initialize(VersionContainer *versionContainer,DataParserOutput *dataParserOut, SendSystem *sendSystem)
{
this->versionContainer = versionContainer;
this->sendSystem = sendSystem;
this->dataParserOut = dataParserOut;
}
void UpdateController::calculateCommonHash()

View File

@@ -26,17 +26,16 @@ class UpdateController : public QObject
Q_OBJECT
public:
explicit UpdateController(DataParserOutput *dataParser, SendSystem *sendSystem,
QObject *parent = 0);
explicit UpdateController(QObject *parent = 0);
void initialize(VersionContainer *versionContainer);
void initialize(VersionContainer *versionContainer,DataParserOutput *dataParser, SendSystem *sendSystem);
void calculateCommonHash();
void calculateStreamingHash();
~UpdateController();
void updateFilesOnServer(QList<FileData> *fileSendList);
void checkCanUpdate();
signals:
void sigUpdateComplete(bool flag);
private:

View File

@@ -132,27 +132,27 @@ void DataParser::xmlParser(const QByteArray& array)
postProcessSystem->startCompare();
}
if (value == "BASEDELETETRY")
{
emit sigNotify(tr("Нельзя удалять базовую версию"));
}
// if (value == "BASEDELETETRY")
// {
// emit sigNotify(tr("Нельзя удалять базовую версию"));
// }
if (value == "TRYACTIVEDELETE")
{
emit sigNotify(tr("Нельзя удалять активную версию"));
}
// if (value == "TRYACTIVEDELETE")
// {
// emit sigNotify(tr("Нельзя удалять активную версию"));
// }
if (value == "DUPLICATEVERNAME")
{
emit sigNotify(tr("Такое имя уже существет"));
}
// if (value == "DUPLICATEVERNAME")
// {
// emit sigNotify(tr("Такое имя уже существет"));
// }
if (value == "UNCHANGEABLE")
{
emit sigNotify(tr("Нельзя выгружать в базовую версию"));
postProcessSystem->showUpdateList();
//emit recognizeSystem->sigShowUpdateList();
}
// if (value == "UNCHANGEABLE")
// {
// emit sigNotify(tr("Нельзя выгружать в базовую версию"));
// postProcessSystem->showUpdateList();
// //emit recognizeSystem->sigShowUpdateList();
// }
if (value == "CHANGEABLE")
{

View File

@@ -256,7 +256,7 @@ void DataParserOutput::addRunData(QList<int> displays)
}
void DataParserOutput::saveClientSettrings(const QString& language, bool isAutoStart)
void DataParserOutput::saveClientSettings(const QString& language, bool isAutoStart)
{
QFile file(settingsName);
file.open(QIODevice::ReadOnly | QIODevice::Text);

View File

@@ -22,7 +22,7 @@ public:
void createAuthData(ServerAuthorization *serverAuth);
void createAuthDataOffline(const QString& username,const QString& pass);
void addRunData(QList<int> displays);
void saveClientSettrings(const QString& language, bool isAutoStart);
void saveClientSettings(const QString& language, bool isAutoStart);
QList<FileData> *xmlFileDataParse(const QByteArray& array,const QString& filter = "");
QByteArray xmlAnswer_notify(const QString& code);
QByteArray xmlAnswer(const QList<SXmlAnswerTag>& listTag, const QString& elemUp1 = "", const QString& elemUp2 = "");

View File

@@ -27,3 +27,13 @@ bool ExternalExecuter::findApp()
return false;
}
bool ExternalExecuter::getIsAutoStart() const
{
return isAutoStart;
}
void ExternalExecuter::setIsAutoStart(bool value)
{
isAutoStart = value;
}

View File

@@ -20,8 +20,12 @@ public:
void callApp();
bool findApp();
bool getIsAutoStart() const;
void setIsAutoStart(bool value);
private:
QString programPath;
bool isAutoStart;
};
#endif // EXTERNALEXECUTER_H

View File

@@ -8,9 +8,11 @@ HashComparer::HashComparer(QObject *) :
}
void HashComparer::initialize(VersionContainer *versionContainer)
void HashComparer::initialize(VersionContainer *versionContainer,UpdateNotifyWidget* updateWidget)
{
this->versionContainer = versionContainer;
this->updateWidget = updateWidget;
filesForUpdate = new QList<FileData>;
}
void HashComparer::CompareDeltas(QList<FileData> *serverStreamingHash, QList<FileData> localStreamingHash)
@@ -47,11 +49,6 @@ void HashComparer::showDeltas()
emit sigHaveDelta();
}
void HashComparer::setWidget(UpdateNotifyWidget* updateWidget)
{
this->updateWidget = updateWidget;
}
quint16 HashComparer::getFileUpdateCount() const
{
return filesForUpdate->count();

View File

@@ -13,12 +13,11 @@ class HashComparer :public QObject
Q_OBJECT
public:
explicit HashComparer(QObject *parent = nullptr);
void initialize(VersionContainer *versionContainer);
void initialize(VersionContainer *versionContainer,UpdateNotifyWidget* updateWidget);
void CompareDeltas(QList<FileData> *serverStreamingHash, QList<FileData> localStreamingHash);
~HashComparer() = default;
void showDeltas();
void setWidget(UpdateNotifyWidget *updateWidget);
quint16 getFileUpdateCount() const;
QList<FileData> *getFilesForUpdate() const;
signals:

View File

@@ -1,6 +1,5 @@
#include "Core/recognizesystem.h"
RecognizeSystem::RecognizeSystem(QObject *parent):
QObject(parent),
versionContainer(nullptr),

View File

@@ -27,7 +27,6 @@ public:
void recognize(QTcpSocket *socket);
void showServerDataList(QList<StreamingVersionData*> *showServerDataList);
signals:
void sigUpdateBytesAvailable();
void sigLoadComplete();

View File

@@ -1,13 +1,10 @@
#include "screenchecker.h"
#include <windows.h>
ScreenChecker::ScreenChecker(QWidget *mainWidget,DataParserOutput *dataParserOut, QHBoxLayout *layout, QObject *parent) :
ScreenChecker::ScreenChecker(QObject *parent) :
QObject(parent)
{
screenCount = 0;
this->mainWidget = mainWidget;
this->layout = layout;
this->dataParserOutput = dataParserOut;
}
void ScreenChecker::check()
@@ -129,6 +126,12 @@ QString ScreenChecker::getScreenCount() const
return QString::number(screenCount);
}
void ScreenChecker::initialize(DataParserOutput *dataParserOutput, QHBoxLayout *layout)
{
this->layout = layout;
this->dataParserOutput = dataParserOutput;
}
ScreenChecker::~ScreenChecker()
{
for (auto & button : buttons)

View File

@@ -22,7 +22,8 @@ class ScreenChecker : public QObject
Q_OBJECT
public:
explicit ScreenChecker(QWidget *mainWidget,DataParserOutput *dataParserOutput, QHBoxLayout *layout,QObject *parent = nullptr);
explicit ScreenChecker(QObject *parent = nullptr);
void initialize(DataParserOutput *dataParserOutput, QHBoxLayout *layout);
~ScreenChecker();
void check();
QString getScreenCount() const;

View File

@@ -29,6 +29,9 @@ static QString cmd_GetServerHash = "GETSERVERDATALIST";
static QString cmd_Disable = "DISABLE";
static QString baseNamePackage = "base";
static QString instructorTypeName = "instructor";
static QString traineeTypeName = "trainee";
enum PacketType{
TYPE_NONE = 0,
TYPE_UNITY = 1,