30 lines
		
	
	
		
			513 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			513 B
		
	
	
	
		
			C++
		
	
	
	
	
	
#pragma once
 | 
						|
#include <QRunnable>
 | 
						|
#include <QObject>
 | 
						|
#include <QDir>
 | 
						|
#include <QMap>
 | 
						|
#include "Mod.h"
 | 
						|
#include <memory>
 | 
						|
 | 
						|
class ModFolderLoadTask : public QObject, public QRunnable
 | 
						|
{
 | 
						|
    Q_OBJECT
 | 
						|
public:
 | 
						|
    struct Result {
 | 
						|
        QMap<QString, Mod> mods;
 | 
						|
    };
 | 
						|
    using ResultPtr = std::shared_ptr<Result>;
 | 
						|
    ResultPtr result() const {
 | 
						|
        return m_result;
 | 
						|
    }
 | 
						|
 | 
						|
public:
 | 
						|
    ModFolderLoadTask(QDir dir);
 | 
						|
    void run();
 | 
						|
signals:
 | 
						|
    void succeeded();
 | 
						|
private:
 | 
						|
    QDir m_dir;
 | 
						|
    ResultPtr m_result;
 | 
						|
};
 |