ES-DE/src/components/GuiScraperStart.h

53 lines
1.3 KiB
C
Raw Normal View History

#pragma once
#include "../GuiComponent.h"
#include "../SystemData.h"
#include "TextComponent.h"
#include "ComponentListComponent.h"
#include "OptionListComponent.h"
#include "SwitchComponent.h"
2013-10-11 00:55:57 +00:00
#include "ButtonComponent.h"
#include "../scrapers/Scraper.h"
#include <queue>
typedef std::function<bool(SystemData*, GameData*)> GameFilterFunc;
//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);
2013-10-11 00:55:57 +00:00
bool input(InputConfig* config, Input input) override;
private:
void pressedStart();
2013-10-11 00:55:57 +00:00
void start();
std::queue<ScraperSearchParams> getSearches(std::vector<SystemData*> systems, GameFilterFunc selector);
NinePatchComponent mBox;
ComponentListComponent mList;
TextComponent mFilterLabel;
TextComponent mSystemsLabel;
TextComponent mManualLabel;
2013-10-11 00:55:57 +00:00
OptionListComponent<GameFilterFunc> mFiltersOpt;
OptionListComponent<SystemData*> mSystemsOpt;
SwitchComponent mManualSwitch;
2013-10-11 00:55:57 +00:00
ButtonComponent mStartButton;
};
/*
Filter: [MISSING IMAGES | ALL]
Systems: [# selected]
Manual Mode: [ON | OFF]
GO GO GO
*/