mirror of
https://github.com/UltimMC/Launcher.git
synced 2025-10-04 09:08:42 +00:00
Added FTB pack selection ad download, WIP
This commit is contained in:
63
api/logic/modplatform/FtbPackDownloader.h
Normal file
63
api/logic/modplatform/FtbPackDownloader.h
Normal file
@@ -0,0 +1,63 @@
|
||||
#include <QString>
|
||||
#include <QUrl>
|
||||
#include <QList>
|
||||
#include <QObject>
|
||||
#include "FtbPackFetchTask.h"
|
||||
#include "tasks/Task.h"
|
||||
#include "net/NetJob.h"
|
||||
|
||||
#include "PackHelpers.h"
|
||||
#include "Env.h"
|
||||
|
||||
#pragma once
|
||||
|
||||
class FtbPackDownloader;
|
||||
class MULTIMC_LOGIC_EXPORT FtbPackDownloader : public QObject {
|
||||
|
||||
Q_OBJECT
|
||||
|
||||
private:
|
||||
QMap<QString, FtbModpack> fetchedPacks;
|
||||
bool fetching;
|
||||
bool done;
|
||||
|
||||
FtbModpack selected;
|
||||
QString selectedVersion;
|
||||
QString downloadPath;
|
||||
|
||||
FtbPackFetchTask *fetchTask = 0;
|
||||
NetJobPtr netJobContainer;
|
||||
|
||||
void _downloadSucceeded();
|
||||
void _downloadFailed(QString reason);
|
||||
void _downloadProgress(qint64 current, qint64 total);
|
||||
|
||||
private slots:
|
||||
void fetchSuccess(FtbModpackList modlist);
|
||||
void fetchFailed(QString reason);
|
||||
|
||||
public:
|
||||
FtbPackDownloader();
|
||||
~FtbPackDownloader();
|
||||
|
||||
bool isValidPackSelected();
|
||||
void selectPack(FtbModpack modpack, QString version);
|
||||
|
||||
FtbModpack getSelectedPack();
|
||||
|
||||
void fetchModpacks(bool force);
|
||||
void downloadSelected(MetaEntryPtr cache);
|
||||
|
||||
QString getSuggestedInstanceName();
|
||||
|
||||
FtbModpackList getModpacks();
|
||||
|
||||
signals:
|
||||
void ready();
|
||||
void packFetchFailed();
|
||||
|
||||
void downloadSucceded(QString archivePath);
|
||||
void downloadFailed(QString reason);
|
||||
void downloadProgress(qint64 current, qint64 total);
|
||||
|
||||
};
|
Reference in New Issue
Block a user