mirror of
https://github.com/RetroDECK/ES-DE.git
synced 2024-12-18 02:05:38 +00:00
39 lines
1.1 KiB
C
39 lines
1.1 KiB
C
|
#pragma once
|
||
|
|
||
|
#include "GuiComponent.h"
|
||
|
#include "SystemData.h"
|
||
|
#include "scrapers/Scraper.h"
|
||
|
#include "components/MenuComponent.h"
|
||
|
#include <queue>
|
||
|
|
||
|
typedef std::function<bool(SystemData*, FileData*)> GameFilterFunc;
|
||
|
|
||
|
template<typename T>
|
||
|
class OptionListComponent;
|
||
|
|
||
|
class SwitchComponent;
|
||
|
|
||
|
//The starting point for a multi-game scrape.
|
||
|
//Allows the user to set various parameters (to set filters, to set which systems to scrape, to enable manual mode).
|
||
|
//Generates a list of "searches" that will be carried out by GuiScraperLog.
|
||
|
class GuiScraperStart : public GuiComponent
|
||
|
{
|
||
|
public:
|
||
|
GuiScraperStart(Window* window);
|
||
|
|
||
|
bool input(InputConfig* config, Input input) override;
|
||
|
|
||
|
virtual std::vector<HelpPrompt> getHelpPrompts() override;
|
||
|
|
||
|
private:
|
||
|
void pressedStart();
|
||
|
void start();
|
||
|
std::queue<ScraperSearchParams> getSearches(std::vector<SystemData*> systems, GameFilterFunc selector);
|
||
|
|
||
|
std::shared_ptr< OptionListComponent<GameFilterFunc> > mFilters;
|
||
|
std::shared_ptr< OptionListComponent<SystemData*> > mSystems;
|
||
|
std::shared_ptr<SwitchComponent> mApproveResults;
|
||
|
|
||
|
MenuComponent mMenu;
|
||
|
};
|