diff options
Diffstat (limited to 'logic/JavaChecker.h')
-rw-r--r-- | logic/JavaChecker.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/logic/JavaChecker.h b/logic/JavaChecker.h index 34782383..291bf46c 100644 --- a/logic/JavaChecker.h +++ b/logic/JavaChecker.h @@ -1,29 +1,39 @@ #pragma once #include <QProcess> #include <QTimer> +#include <QTemporaryFile> #include <memory> +class JavaChecker; + + struct JavaCheckResult { + QString path; QString mojangPlatform; QString realPlatform; + QString javaVersion; bool valid = false; bool is_64bit = false; }; -typedef std::shared_ptr<QProcess> QProcessPtr; +typedef std::shared_ptr<QProcess> QProcessPtr; +typedef std::shared_ptr<JavaChecker> JavaCheckerPtr; class JavaChecker : public QObject { Q_OBJECT public: explicit JavaChecker(QObject *parent = 0); - void performCheck(QString path); + void performCheck(); + + QString path; signals: void checkFinished(JavaCheckResult result); private: QProcessPtr process; QTimer killTimer; + QTemporaryFile checkerJar; public slots: void timeout(); |