DocsUpdater 1rev

This commit is contained in:
2025-11-11 14:55:37 +03:00
parent ff8767d1b3
commit 9b87bcc490
14 changed files with 387 additions and 14 deletions

View File

@@ -52,7 +52,13 @@ bool Module::getIsActive()
return this->isActive;
}
void Module::setModeList(ModeList modeList)
{
this->modeList = modeList;
if(modeList.demo || modeList.train || modeList.exam || modeList.autoM)
setIsActiveTrue();
}
PM::PM():
modelIdentCode (),

View File

@@ -2,6 +2,7 @@
#define MODULE_H
#include <QString>
#include <QList>
#include "instructorsAndTrainees_global.h"
enum ModuleType
{
@@ -9,7 +10,15 @@ enum ModuleType
TYPE_DM = 1
};
class Module
struct ModeList
{
bool demo = false;
bool train = false;
bool exam = false;
bool autoM = false;
};
class INSTRUCTORSANDTRAINEES_EXPORT Module
{
public:
Module();
@@ -20,19 +29,26 @@ public:
void setParentModule(Module* parentModule){ this->parentModule = parentModule; };
Module* getModuleByID(int id);
void setIsActiveTrue();
bool getIsActive();
void setModeList(ModeList modeList);;
ModeList getModeList(){return modeList;};
protected:
void setIsActiveTrue();
protected:
ModuleType type;
Module* parentModule;
int ID;
static int lastID;
bool isActive;
ModeList modeList;
};
class PM : public Module
class INSTRUCTORSANDTRAINEES_EXPORT PM : public Module
{
public:
struct pmLangStruct
@@ -66,7 +82,7 @@ private:
};
class DM : public Module
class INSTRUCTORSANDTRAINEES_EXPORT DM : public Module
{
public:
struct dmLangStruct

View File

@@ -356,8 +356,9 @@ void TaskAMMFIMTreePreparation::domElementParserAMM(QDomElement element, Module*
//Активность
QString canplay = nodeMap.namedItem("canplay").nodeValue();
if(canplay.contains("+"))
DMmodulParent->setIsActiveTrue();
DMmodulParent->setModeList(parseCanplay(canplay));
//if(canplay.contains("+"))
//DMmodulParent->setIsActiveTrue();
}
else
DMmodulParent->setLangStructEng(nodeMap.namedItem("techName").nodeValue(),
@@ -391,6 +392,45 @@ void TaskAMMFIMTreePreparation::domElementParserAMM(QDomElement element, Module*
}while (! (childElement = childElement.nextSiblingElement()).isNull());
}
ModeList TaskAMMFIMTreePreparation::parseCanplay(QString canplay)
{
ModeList modeList;
if(canplay == "")
{
modeList.demo = false;
modeList.train = false;
modeList.exam = false;
modeList.autoM = false;
}
else
{
QStringList list = canplay.split("/");
if(list.at(0) == "+")
modeList.demo = true;
else
modeList.demo = false;
if(list.at(1) == "+")
modeList.train = true;
else
modeList.train = false;
if(list.at(2) == "+")
modeList.exam = true;
else
modeList.exam = false;
if(list.at(3) == "+")
modeList.autoM = true;
else
modeList.autoM = false;
}
return modeList;
}
void TaskAMMFIMTreePreparation::slot_prepareAMMListItems(QByteArray array, bool flOnlyActive, bool flRequestFirst)
{
qDebug() << "TaskAMMFIMTreePreparation::slot_prepareAMMListItems thread ID " << QThread::currentThreadId();

View File

@@ -50,6 +50,7 @@ private:
void loadAMMtasksFromXML(QByteArray array);
void domElementParserAMM(QDomElement element, Module* moduleParent);
void deleteAllModulsAMM();
ModeList parseCanplay(QString canplay);
void loadFIMtasksFromXML(QByteArray array);