Files
RRJServer/InstructorsAndTrainees/tasks/tasktreepreparation.h
2025-04-02 14:46:33 +03:00

47 lines
1.1 KiB
C++

#ifndef TASKTREEPREPARATION_H
#define TASKTREEPREPARATION_H
#include <QObject>
#include <QTreeWidgetItem>
#include <QDomElement>
#include "module.h"
#include "tasksAmmFim.h"
enum ColumnsTree{
clmn_PMorDM = 0,
clmn_code,
clmn_ID,
clmn_count
};
class TaskTreePreparation : public QObject
{
Q_OBJECT
public:
explicit TaskTreePreparation(QObject *parent = nullptr);
~TaskTreePreparation();
public:
void stopParser();
private:
QTreeWidgetItem* addModuleToTreeWidget(Module* module, bool flOnlyActive = false, QTreeWidgetItem* parentItem = nullptr);
void loadAMMtasksFromXML(QByteArray array);
void domElementParser(QDomElement element, Module* moduleParent);
void deleteAllModuls();
public Q_SLOTS:
void slot_prepareListItems(QByteArray array, QList<Module*>* listAllModules, bool flOnlyActive);
void slot_prepareListItemsForTrainee(QList<TaskAmmFim> listTask, QList<Module*>* listAllModules);
Q_SIGNALS:
void signal_listItemsReady(QList<QTreeWidgetItem*> listItems);
private:
QList<QTreeWidgetItem*> listItems;
QList<Module*>* listAllModules;
bool flagStop;
};
#endif // TASKTREEPREPARATION_H