2023-01-26 18:24:34 +02:00
|
|
|
/*
|
|
|
|
* firstlaunch_moc.h, part of VCMI engine
|
|
|
|
*
|
|
|
|
* Authors: listed in file AUTHORS in main folder
|
|
|
|
*
|
|
|
|
* License: GNU General Public License v2.0 or later
|
|
|
|
* Full text of license available in license.txt file, in main folder
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include "../StdInc.h"
|
|
|
|
|
|
|
|
namespace Ui
|
|
|
|
{
|
|
|
|
class FirstLaunchView;
|
|
|
|
}
|
|
|
|
|
2023-03-11 00:57:55 +02:00
|
|
|
class CModListView;
|
|
|
|
|
2023-01-26 18:24:34 +02:00
|
|
|
class FirstLaunchView : public QWidget
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
|
2023-03-08 02:01:56 +02:00
|
|
|
void changeEvent(QEvent *event);
|
2023-03-11 00:57:55 +02:00
|
|
|
CModListView * getModView();
|
|
|
|
|
|
|
|
void setSetupProgress(int progress);
|
|
|
|
void enterSetup();
|
|
|
|
void activateTabLanguage();
|
|
|
|
void activateTabHeroesData();
|
|
|
|
void activateTabModPreset();
|
|
|
|
void exitSetup();
|
2023-04-06 23:36:00 +02:00
|
|
|
|
2023-03-11 00:57:55 +02:00
|
|
|
// Tab Language
|
|
|
|
void languageSelected(const QString & languageCode);
|
|
|
|
|
|
|
|
// Tab Heroes III Data
|
|
|
|
bool heroesDataDetect();
|
|
|
|
|
|
|
|
void heroesDataMissing();
|
|
|
|
void heroesDataDetected();
|
|
|
|
|
2024-01-05 23:03:22 +02:00
|
|
|
QString getHeroesInstallDir();
|
2024-04-01 02:31:33 +02:00
|
|
|
void extractGogData();
|
|
|
|
void copyHeroesData(const QString & path = {}, bool move = false);
|
2023-03-11 00:57:55 +02:00
|
|
|
|
|
|
|
// Tab Mod Preset
|
|
|
|
void modPresetUpdate();
|
|
|
|
|
|
|
|
QString findTranslationModName();
|
|
|
|
|
|
|
|
bool checkCanInstallTranslation();
|
|
|
|
bool checkCanInstallWog();
|
|
|
|
bool checkCanInstallHota();
|
|
|
|
bool checkCanInstallExtras();
|
|
|
|
bool checkCanInstallMod(const QString & modID);
|
|
|
|
|
|
|
|
void installMod(const QString & modID);
|
|
|
|
|
2023-01-26 18:24:34 +02:00
|
|
|
public:
|
2023-10-27 17:10:54 +02:00
|
|
|
explicit FirstLaunchView(QWidget * parent = nullptr);
|
2023-01-26 18:24:34 +02:00
|
|
|
|
2024-05-26 16:38:50 +02:00
|
|
|
// Tab Heroes III Data
|
|
|
|
bool heroesDataUpdate();
|
|
|
|
|
2023-01-26 18:24:34 +02:00
|
|
|
public slots:
|
|
|
|
|
|
|
|
private slots:
|
|
|
|
|
|
|
|
void on_buttonTabLanguage_clicked();
|
|
|
|
void on_buttonTabHeroesData_clicked();
|
|
|
|
void on_buttonTabModPreset_clicked();
|
2023-03-08 02:01:56 +02:00
|
|
|
void on_listWidgetLanguage_currentRowChanged(int currentRow);
|
2023-03-11 00:57:55 +02:00
|
|
|
void on_pushButtonLanguageNext_clicked();
|
|
|
|
void on_pushButtonDataNext_clicked();
|
|
|
|
void on_pushButtonDataBack_clicked();
|
|
|
|
|
|
|
|
void on_pushButtonDataSearch_clicked();
|
|
|
|
|
|
|
|
void on_pushButtonDataCopy_clicked();
|
|
|
|
|
2024-04-01 02:31:33 +02:00
|
|
|
void on_pushButtonGogInstall_clicked();
|
|
|
|
|
2023-03-11 00:57:55 +02:00
|
|
|
void on_pushButtonPresetBack_clicked();
|
|
|
|
|
|
|
|
void on_pushButtonPresetNext_clicked();
|
2023-03-08 02:01:56 +02:00
|
|
|
|
2023-03-27 18:35:42 +02:00
|
|
|
void on_pushButtonDiscord_clicked();
|
|
|
|
|
|
|
|
void on_pushButtonGithub_clicked();
|
|
|
|
|
2023-01-26 18:24:34 +02:00
|
|
|
private:
|
|
|
|
Ui::FirstLaunchView * ui;
|
|
|
|
};
|