#include "loading-worker.h" #include "install-i2p.h" #include "locales.h" #include "install-java.h" #include "fs-tools.h" #include "prog-constains.h" #include #include #include #include #include LoadingWorker::LoadingWorker(QObject *parent) { } LoadingWorker::~LoadingWorker () { //delete this->loading; } void LoadingWorker::process() { std::string locale = (QLocale::system()).name().toStdString(); if (locales.find(locale) == locales.end()) { locale = "en_US"; } LocaleMap* localeMap = locales[locale]; emptyFolder(TEMP_PATH); // Checking updates emit changeStep(QString::fromStdString(localeMap->at("loading.checkUpdates"))); // TODO: Add it later // Checking: Is java installed emit changeStep(QString::fromStdString(localeMap->at("loading.isJavaInst"))); if (!checkJava()) { // Let's we install the java emptyFolder(JAVA_INSTALL_PATH); bool isDownloaded = installJava([this, localeMap](QString msg, unsigned int current, unsigned int total){ //qDebug() << "Java install:" << msg; emit changeStep(QString::fromStdString(localeMap->at("loading.installJava") + ": " + msg.toStdString())); if (total != 0) { emit progressBar(current, total); } }); if (!isDownloaded) return; } // Start I2P emit changeStep(QString::fromStdString(localeMap->at("loading.i2p"))); if (!checkI2P()) { // Let's we install i2p emptyFolder(I2P_INSTALL_PATH); bool isDownloaded = installI2P([this, localeMap](QString msg, unsigned int current, unsigned int total){ qDebug() << "I2P install:" << msg; emit changeStep(QString::fromStdString(localeMap->at("loading.installI2P") + ": " + msg.toStdString())); if (total != 0) { emit progressBar(current, total); } }); if (!isDownloaded) return; } configCheckAndMake(); emit startI2P(); // Checking: Is minecraft installed emit changeStep(QString::fromStdString(localeMap->at("loading.isMinecraftInst"))); // Getting endpoint API emit changeStep(QString::fromStdString(localeMap->at("loading.gettingEndpoint"))); std::string endpointAPI = "TODO: Add it later"; // Handle data emit changeStep(QString::fromStdString(localeMap->at("loading.logging"))); // TODO: Add it later // Setup current locale for welcome form emit changeStep(QString::fromStdString(localeMap->at("loading.setupLocale"))); emit setupWelcomeLocale(QString::fromStdString(locale)); emit changeStep(QString::fromStdString(localeMap->at("loading.end"))); emptyFolder(TEMP_PATH); emit finished(); }