Chrysalis - CLO3D DevTools Extension
Loading...
Searching...
No Matches
JsonUIExporter.h
Go to the documentation of this file.
1#ifndef CHRYSALIS_JSONUIEXPORTER_H
2#define CHRYSALIS_JSONUIEXPORTER_H
3
4#include <memory>
5#include <forward_list>
6
7#include <QWidget>
8#include <QObject>
9#include <QJsonObject>
10
11#include "BaseTask.h"
12#include "BaseUIExporter.h"
15
16namespace CLO3D {
18 public:
19 explicit JsonUIExporter(std::unique_ptr<JsonUIExporterOptions> options);
20
21 static JsonUIExporter* create();
22
23 void exportUI(std::forward_list<QWidget*>&& widgets) override;
25 private:
26 QJsonObject getWidgetJson(const QWidget* widget);
27 static QJsonObject getObjectJson(const QObject* object);
28
29 std::unique_ptr<JsonUIExporterOptions> options_;
30 };
31}
32
33#endif //CHRYSALIS_JSONUIEXPORTER_H
Definition BaseUIExporterOptions.h:7
Definition BaseUIExporter.h:10
static JsonUIExporter * create()
Definition JsonUIExporter.cpp:24
BaseUIExporterOptions * getOptions() override
Definition JsonUIExporter.cpp:46
void exportUI(std::forward_list< QWidget * > &&widgets) override
Definition JsonUIExporter.cpp:28
JsonUIExporter(std::unique_ptr< JsonUIExporterOptions > options)
Definition JsonUIExporter.cpp:20
Definition BaseDevTool.h:6