summaryrefslogtreecommitdiffstats
path: root/src/yuzu/configuration/configure_profile_manager.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/yuzu/configuration/configure_profile_manager.h')
-rw-r--r--src/yuzu/configuration/configure_profile_manager.h25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/yuzu/configuration/configure_profile_manager.h b/src/yuzu/configuration/configure_profile_manager.h
index fe9033779..6e5cb748d 100644
--- a/src/yuzu/configuration/configure_profile_manager.h
+++ b/src/yuzu/configuration/configure_profile_manager.h
@@ -3,16 +3,22 @@
#pragma once
+#include <functional>
#include <memory>
+#include <QDialog>
#include <QList>
#include <QWidget>
+#include "common/uuid.h"
+
namespace Core {
class System;
}
class QGraphicsScene;
+class QDialogButtonBox;
+class QLabel;
class QStandardItem;
class QStandardItemModel;
class QTreeView;
@@ -26,6 +32,20 @@ namespace Ui {
class ConfigureProfileManager;
}
+class ConfigureProfileManagerDeleteDialog : public QDialog {
+public:
+ explicit ConfigureProfileManagerDeleteDialog(QWidget* parent);
+ ~ConfigureProfileManagerDeleteDialog();
+
+ void SetInfo(const QString username, const Common::UUID uuid,
+ std::function<void()> accept_callback);
+
+private:
+ QDialogButtonBox* dialog_button_box;
+ QGraphicsScene* icon_scene;
+ QLabel* label_info;
+};
+
class ConfigureProfileManager : public QWidget {
Q_OBJECT
@@ -47,7 +67,8 @@ private:
void SelectUser(const QModelIndex& index);
void AddUser();
void RenameUser();
- void DeleteUser();
+ void ConfirmDeleteUser();
+ void DeleteUser(const Common::UUID uuid);
void SetUserImage();
QVBoxLayout* layout;
@@ -55,6 +76,8 @@ private:
QStandardItemModel* item_model;
QGraphicsScene* scene;
+ std::unique_ptr<ConfigureProfileManagerDeleteDialog> confirm_dialog;
+
std::vector<QList<QStandardItem*>> list_items;
std::unique_ptr<Ui::ConfigureProfileManager> ui;