4
0
mirror of https://github.com/QuasarApp/QtDeployer.git synced 2025-05-02 08:09:33 +00:00
2018-06-02 15:55:53 +03:00

60 lines
1.2 KiB
C++
Executable File

#ifndef MAINMANAGER_H
#define MAINMANAGER_H
#include "baseclass.h"
#include "cppmanager.h"
#include "outputmanager.h"
#include "pluginmanager.h"
#include "qmlmanager.h"
#include "buildmanager.h"
class MainManager : public BaseClass
{
Q_OBJECT
Q_PROPERTY(int state READ state WRITE setState NOTIFY stateChanged)
Q_PROPERTY(QString outDir READ outDir NOTIFY outDirChanged)
CppManager *m_cpp;
QmlManager *m_qml;
PluginManager *m_plg;
OutputManager *m_out;
BuildManager *m_bld;
int m_state;
QStringList getAllExecutables();
private slots:
void buildFinished();
public:
explicit MainManager(CppManager *cpp, QmlManager *qml, OutputManager *out,
PluginManager *plg, BuildManager* bld, QObject *parent = nullptr);
int state() const;
BuildManager* getBuild();
CppManager* getCpp();
public slots:
void prepare(const QString &qtdir, const QString &projectdir);
void deploy(const QStringList& list);
void start(bool erase);
const QString& outDir() const;
bool hasPrems(const QString &path);
QString stringFromUrl(QString url);
bool pathExists(bool isdir, const QString &path);
void setState(int state);
signals:
void stateChanged(int state);
void outDirChanged();
};
#endif // MAINMANAGER_H