Files
OpenVR-AdvancedSettings-frame/src/settings/settings.cpp
T
Vasily 752295fa63 Make currently used settings be printed out at application start
Due to the SettingsController being a static object it will be
initialized before the main method has been run. This will cause
easylogging to log using the default logging style instead of the
defined application style. Because of this the settings are propogated
up through a function into the main method.
2019-12-10 08:28:41 +01:00

77 lines
1.8 KiB
C++

#include <utility>
#include <QSettings>
#include <easylogging++.h>
#include "../overlaycontroller.h"
#include "internal/settings_controller.h"
namespace settings
{
static SettingsController settingController{};
void saveChangedSettings()
{
settingController.saveChangedSettings();
}
void saveAllSettings()
{
LOG( INFO ) << "Saving all settings.";
settingController.saveAllSettings();
LOG( INFO ) << "All settings saved.";
}
[[nodiscard]] bool getSetting( const BoolSetting setting )
{
return settingController.getSetting<bool>( setting );
}
void setSetting( const BoolSetting setting, const bool value )
{
settingController.setSetting( setting, value );
}
[[nodiscard]] double getSetting( const DoubleSetting setting )
{
return settingController.getSetting<double>( setting );
}
void setSetting( const DoubleSetting setting, const double value )
{
settingController.setSetting( setting, value );
}
[[nodiscard]] int getSetting( const IntSetting setting )
{
return settingController.getSetting<int>( setting );
}
void setSetting( const IntSetting setting, const int value )
{
settingController.setSetting( setting, value );
}
[[nodiscard]] std::string getSetting( const StringSetting setting )
{
return settingController.getSetting<std::string>( setting );
}
void setSetting( const StringSetting setting, const std::string value )
{
settingController.setSetting( setting, value );
}
std::string initializeAndGetSettingsPath()
{
// The static object is initialized the first time the function is called.
// Having a dedicated function for this allows more control over when this
// happens.
return settingController.getSettingsFileName();
}
std::string getSettingsAndValues()
{
return settingController.getSettingsAndValues();
}
} // namespace settings