#ifndef APPLICATION_H #define APPLICATION_H #include #include class Application : public QObject { Q_OBJECT public: explicit Application(QObject *parent = 0); Q_PROPERTY( QString appName READ appName WRITE setAppName) Q_PROPERTY( QString arguments READ arguments WRITE setArguments) Q_PROPERTY( QString stdERR READ stdERR WRITE setstdERR) Q_PROPERTY( QString stdOUT READ stdOUT WRITE setstdOUT) Q_PROPERTY( QString outFName READ outFName WRITE setoutFName) Q_PROPERTY( int exitCode READ exitCode) int exitCode(); Q_PROPERTY( int exitStatus READ exitStatus) int exitStatus(); Q_PROPERTY( int exitError READ exitError) int exitError(); QString appName() const; void setAppName(const QString &appName); QString arguments() const; void setArguments(const QString &arguments); QString outFName() const; void setoutFName(const QString &outFName); QString stdERR() const; void setstdERR(const QString &stdERR); QString stdOUT() const; void setstdOUT(const QString &stdOUT); Q_INVOKABLE void launchScript(); Q_SIGNALS: void appFinished(); void appStarted(); void appError(); private: QProcess *m_process; QString m_AppName; QString m_Arguments; QString m_outFName; QString m_stdERR; QString m_stdOUT; int m_exitCode; int m_exitStatus; int m_error; private Q_SLOTS: void finished(int exitCode, QProcess::ExitStatus status); void process_started(void); void process_error(QProcess::ProcessError); }; #endif //APPLICATION_H