summaryrefslogtreecommitdiff
path: root/src/citron/configuration/configure_per_game_addons.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/citron/configuration/configure_per_game_addons.h')
-rw-r--r--src/citron/configuration/configure_per_game_addons.h58
1 files changed, 58 insertions, 0 deletions
diff --git a/src/citron/configuration/configure_per_game_addons.h b/src/citron/configuration/configure_per_game_addons.h
new file mode 100644
index 000000000..32dc5dde6
--- /dev/null
+++ b/src/citron/configuration/configure_per_game_addons.h
@@ -0,0 +1,58 @@
+// SPDX-FileCopyrightText: 2016 Citra Emulator Project
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#include <memory>
+#include <vector>
+
+#include <QList>
+
+#include "core/file_sys/vfs/vfs_types.h"
+
+namespace Core {
+class System;
+}
+
+class QGraphicsScene;
+class QStandardItem;
+class QStandardItemModel;
+class QTreeView;
+class QVBoxLayout;
+
+namespace Ui {
+class ConfigurePerGameAddons;
+}
+
+class ConfigurePerGameAddons : public QWidget {
+ Q_OBJECT
+
+public:
+ explicit ConfigurePerGameAddons(Core::System& system_, QWidget* parent = nullptr);
+ ~ConfigurePerGameAddons() override;
+
+ /// Save all button configurations to settings file
+ void ApplyConfiguration();
+
+ void LoadFromFile(FileSys::VirtualFile file_);
+
+ void SetTitleId(u64 id);
+
+private:
+ void changeEvent(QEvent* event) override;
+ void RetranslateUI();
+
+ void LoadConfiguration();
+
+ std::unique_ptr<Ui::ConfigurePerGameAddons> ui;
+ FileSys::VirtualFile file;
+ u64 title_id;
+
+ QVBoxLayout* layout;
+ QTreeView* tree_view;
+ QStandardItemModel* item_model;
+
+ std::vector<QList<QStandardItem*>> list_items;
+
+ Core::System& system;
+};