2025-01-04 04:12:51 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include <QObject>
|
|
|
|
|
|
|
|
|
|
#include "xml/tinyxml2.h"
|
|
|
|
|
|
|
|
|
|
class WorkSpace;
|
|
|
|
|
|
|
|
|
|
class WorkSpaceXMLWrite : public QObject {
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
explicit WorkSpaceXMLWrite(WorkSpace* workspace, QObject* parent = nullptr) noexcept;
|
|
|
|
|
~WorkSpaceXMLWrite() override = default;
|
|
|
|
|
|
|
|
|
|
bool Save(const QString& path);
|
|
|
|
|
|
|
|
|
|
protected:
|
2025-10-12 14:14:16 +00:00
|
|
|
bool SaveScene(tinyxml2::XMLElement* scene);
|
|
|
|
|
bool SaveTimeStep(tinyxml2::XMLElement* scene);
|
|
|
|
|
bool SaveLamp(tinyxml2::XMLElement* scene);
|
|
|
|
|
bool SaveEntities(tinyxml2::XMLElement* scene, tinyxml2::XMLDocument* doc);
|
|
|
|
|
bool SaveChart(tinyxml2::XMLElement* scene, tinyxml2::XMLDocument* doc);
|
|
|
|
|
bool SaveFiles(tinyxml2::XMLElement* scene, tinyxml2::XMLDocument* doc);
|
2025-01-04 04:12:51 +00:00
|
|
|
private:
|
|
|
|
|
WorkSpace* workSpace_;
|
|
|
|
|
|
|
|
|
|
};
|