configure_per_game.h 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. // Copyright 2020 yuzu Emulator Project
  2. // Licensed under GPLv2 or any later version
  3. // Refer to the license.txt file included.
  4. #pragma once
  5. #include <memory>
  6. #include <string>
  7. #include <vector>
  8. #include <QDialog>
  9. #include <QList>
  10. #include "core/file_sys/vfs_types.h"
  11. #include "yuzu/configuration/config.h"
  12. class QGraphicsScene;
  13. class QStandardItem;
  14. class QStandardItemModel;
  15. class QTreeView;
  16. class QVBoxLayout;
  17. namespace Ui {
  18. class ConfigurePerGame;
  19. }
  20. class ConfigurePerGame : public QDialog {
  21. Q_OBJECT
  22. public:
  23. explicit ConfigurePerGame(QWidget* parent, u64 title_id, std::string_view file_name);
  24. ~ConfigurePerGame() override;
  25. /// Save all button configurations to settings file
  26. void ApplyConfiguration();
  27. void LoadFromFile(FileSys::VirtualFile file);
  28. private:
  29. void changeEvent(QEvent* event) override;
  30. void RetranslateUI();
  31. void LoadConfiguration();
  32. std::unique_ptr<Ui::ConfigurePerGame> ui;
  33. FileSys::VirtualFile file;
  34. u64 title_id;
  35. QGraphicsScene* scene;
  36. std::unique_ptr<Config> game_config;
  37. };