DolphinQt: Add a 'Save as Preset' button to RiivolutionBootWidget.

This commit is contained in:
Admiral H. Curtiss
2021-10-26 03:18:06 +02:00
parent a2a39cfcfb
commit 005e850ad6
3 changed files with 68 additions and 8 deletions

View File

@ -19,7 +19,8 @@ class RiivolutionBootWidget : public QDialog
Q_OBJECT
public:
explicit RiivolutionBootWidget(std::string game_id, std::optional<u16> revision,
std::optional<u8> disc, QWidget* parent = nullptr);
std::optional<u8> disc, std::string base_game_path,
QWidget* parent = nullptr);
~RiivolutionBootWidget();
bool ShouldBoot() const { return m_should_boot; }
@ -30,21 +31,24 @@ private:
void LoadMatchingXMLs();
void OpenXML();
void MakeGUIForParsedFile(const std::string& path, std::string root,
void MakeGUIForParsedFile(std::string path, std::string root,
DiscIO::Riivolution::Disc input_disc);
std::optional<DiscIO::Riivolution::Config> LoadConfigXML(const std::string& root_directory);
void SaveConfigXMLs();
void BootGame();
void SaveAsPreset();
std::string m_game_id;
std::optional<u16> m_revision;
std::optional<u8> m_disc_number;
std::string m_base_game_path;
bool m_should_boot = false;
struct DiscWithRoot
{
DiscIO::Riivolution::Disc disc;
std::string root;
std::string path;
};
std::vector<DiscWithRoot> m_discs;
std::vector<DiscIO::Riivolution::Patch> m_patches;