35 lines
748 B
C++
35 lines
748 B
C++
#ifndef SCRIPTMANAGER_H
|
|
#define SCRIPTMANAGER_H
|
|
|
|
#include "../WingHexExplorer/WingHexExplorer/plugin/iwingplugin.h"
|
|
#include "plginterface.h"
|
|
#include <QMap>
|
|
#include <QObject>
|
|
|
|
struct ScriptMeta {
|
|
QString name;
|
|
QString filename;
|
|
QString author;
|
|
QString license;
|
|
QString commnet;
|
|
uint version;
|
|
};
|
|
|
|
Q_DECLARE_METATYPE(ScriptMeta)
|
|
|
|
class ScriptManager : public QObject {
|
|
Q_OBJECT
|
|
public:
|
|
static ScriptManager *instance();
|
|
void loadMenu(QMenu *menu);
|
|
void loadTreeWidget(QTreeWidget *tree);
|
|
void parseMeta(QFileInfo fileinfo, QString folder, QList<ScriptMeta> &m);
|
|
static ScriptManager *m_instance;
|
|
|
|
private:
|
|
ScriptManager(QObject *parent = nullptr);
|
|
QMap<QString, QList<ScriptMeta>> m_metas;
|
|
};
|
|
|
|
#endif // SCRIPTMANAGER_H
|