From 6f5bede402251196ceeeceb6517dab07daa11463 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Tue, 23 Oct 2018 21:46:33 -0400 Subject: [PATCH 1/2] yuzu/configuration/config: Reorganize member variable and function layout Makes the class layout consistent with the others. --- src/yuzu/configuration/config.h | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/yuzu/configuration/config.h b/src/yuzu/configuration/config.h index cbf745ea2..a1d0fbe7e 100644 --- a/src/yuzu/configuration/config.h +++ b/src/yuzu/configuration/config.h @@ -12,12 +12,6 @@ class QSettings; class Config { - QSettings* qt_config; - std::string qt_config_loc; - - void ReadValues(); - void SaveValues(); - public: Config(); ~Config(); @@ -27,4 +21,11 @@ public: static const std::array default_buttons; static const std::array, Settings::NativeAnalog::NumAnalogs> default_analogs; + +private: + void ReadValues(); + void SaveValues(); + + QSettings* qt_config; + std::string qt_config_loc; }; From 6949f73149644820c678c1ffb57d18f21259740d Mon Sep 17 00:00:00 2001 From: Lioncash Date: Tue, 23 Oct 2018 21:49:50 -0400 Subject: [PATCH 2/2] yuzu/configuration/config: Use a std::unique_ptr for qt_config instead of a raw pointer Same behavior, less code. --- src/yuzu/configuration/config.cpp | 13 ++++++------- src/yuzu/configuration/config.h | 3 ++- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/yuzu/configuration/config.cpp b/src/yuzu/configuration/config.cpp index d029590ff..a1e13ed8f 100644 --- a/src/yuzu/configuration/config.cpp +++ b/src/yuzu/configuration/config.cpp @@ -12,11 +12,16 @@ Config::Config() { // TODO: Don't hardcode the path; let the frontend decide where to put the config files. qt_config_loc = FileUtil::GetUserPath(FileUtil::UserPath::ConfigDir) + "qt-config.ini"; FileUtil::CreateFullPath(qt_config_loc); - qt_config = new QSettings(QString::fromStdString(qt_config_loc), QSettings::IniFormat); + qt_config = + std::make_unique(QString::fromStdString(qt_config_loc), QSettings::IniFormat); Reload(); } +Config::~Config() { + Save(); +} + const std::array Config::default_buttons = { Qt::Key_A, Qt::Key_S, Qt::Key_Z, Qt::Key_X, Qt::Key_3, Qt::Key_4, Qt::Key_Q, Qt::Key_W, Qt::Key_1, Qt::Key_2, Qt::Key_N, Qt::Key_M, Qt::Key_F, Qt::Key_T, @@ -337,9 +342,3 @@ void Config::Reload() { void Config::Save() { SaveValues(); } - -Config::~Config() { - Save(); - - delete qt_config; -} diff --git a/src/yuzu/configuration/config.h b/src/yuzu/configuration/config.h index a1d0fbe7e..9c99c1b75 100644 --- a/src/yuzu/configuration/config.h +++ b/src/yuzu/configuration/config.h @@ -5,6 +5,7 @@ #pragma once #include +#include #include #include #include "core/settings.h" @@ -26,6 +27,6 @@ private: void ReadValues(); void SaveValues(); - QSettings* qt_config; + std::unique_ptr qt_config; std::string qt_config_loc; };