// Copyright 2016 Citra Emulator Project // Licensed under GPLv2 or any later version // Refer to the license.txt file included. #pragma once #include #include #include namespace Core { class System; } class QGraphicsScene; class QStandardItem; class QStandardItemModel; class QTreeView; class QVBoxLayout; namespace Service::Account { class ProfileManager; } namespace Ui { class ConfigureProfileManager; } class ConfigureProfileManager : public QWidget { Q_OBJECT public: explicit ConfigureProfileManager(Core::System& system_, QWidget* parent = nullptr); ~ConfigureProfileManager() override; void ApplyConfiguration(); private: void changeEvent(QEvent* event) override; void RetranslateUI(); void SetConfiguration(); void PopulateUserList(); void UpdateCurrentUser(); void SelectUser(const QModelIndex& index); void AddUser(); void RenameUser(); void DeleteUser(); void SetUserImage(); QVBoxLayout* layout; QTreeView* tree_view; QStandardItemModel* item_model; QGraphicsScene* scene; std::vector> list_items; std::unique_ptr ui; bool enabled = false; std::unique_ptr profile_manager; Core::System& system; };