mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 14:19:46 -06:00
Merge pull request #11756 from lioncash/ini
Common/IniFile: Move interface into Common namespace
This commit is contained in:
@ -50,7 +50,7 @@ void ControlGroup::AddDeadzoneSetting(SettingValue<double>* value, double maximu
|
||||
|
||||
ControlGroup::~ControlGroup() = default;
|
||||
|
||||
void ControlGroup::LoadConfig(IniFile::Section* sec, const std::string& defdev,
|
||||
void ControlGroup::LoadConfig(Common::IniFile::Section* sec, const std::string& defdev,
|
||||
const std::string& base)
|
||||
{
|
||||
const std::string group(base + name + "/");
|
||||
@ -103,7 +103,7 @@ void ControlGroup::LoadConfig(IniFile::Section* sec, const std::string& defdev,
|
||||
}
|
||||
}
|
||||
|
||||
void ControlGroup::SaveConfig(IniFile::Section* sec, const std::string& defdev,
|
||||
void ControlGroup::SaveConfig(Common::IniFile::Section* sec, const std::string& defdev,
|
||||
const std::string& base)
|
||||
{
|
||||
const std::string group(base + name + "/");
|
||||
|
@ -68,9 +68,9 @@ public:
|
||||
DefaultValue default_value = DefaultValue::AlwaysEnabled);
|
||||
virtual ~ControlGroup();
|
||||
|
||||
virtual void LoadConfig(IniFile::Section* sec, const std::string& defdev = "",
|
||||
virtual void LoadConfig(Common::IniFile::Section* sec, const std::string& defdev = "",
|
||||
const std::string& base = "");
|
||||
virtual void SaveConfig(IniFile::Section* sec, const std::string& defdev = "",
|
||||
virtual void SaveConfig(Common::IniFile::Section* sec, const std::string& defdev = "",
|
||||
const std::string& base = "");
|
||||
|
||||
void SetControlExpression(int index, const std::string& expression);
|
||||
|
@ -139,7 +139,7 @@ void EmulatedController::SetDefaultDevice(ciface::Core::DeviceQualifier devq)
|
||||
}
|
||||
}
|
||||
|
||||
void EmulatedController::LoadConfig(IniFile::Section* sec, const std::string& base)
|
||||
void EmulatedController::LoadConfig(Common::IniFile::Section* sec, const std::string& base)
|
||||
{
|
||||
const auto lock = GetStateLock();
|
||||
std::string defdev = GetDefaultDevice().ToString();
|
||||
@ -153,7 +153,7 @@ void EmulatedController::LoadConfig(IniFile::Section* sec, const std::string& ba
|
||||
cg->LoadConfig(sec, defdev, base);
|
||||
}
|
||||
|
||||
void EmulatedController::SaveConfig(IniFile::Section* sec, const std::string& base)
|
||||
void EmulatedController::SaveConfig(Common::IniFile::Section* sec, const std::string& base)
|
||||
{
|
||||
const auto lock = GetStateLock();
|
||||
const std::string defdev = GetDefaultDevice().ToString();
|
||||
@ -168,7 +168,7 @@ void EmulatedController::LoadDefaults(const ControllerInterface& ciface)
|
||||
{
|
||||
const auto lock = GetStateLock();
|
||||
// load an empty inifile section, clears everything
|
||||
IniFile::Section sec;
|
||||
Common::IniFile::Section sec;
|
||||
LoadConfig(&sec);
|
||||
|
||||
const std::string& default_device_string = ciface.GetDefaultDeviceString();
|
||||
|
@ -182,8 +182,8 @@ public:
|
||||
|
||||
virtual void LoadDefaults(const ControllerInterface& ciface);
|
||||
|
||||
virtual void LoadConfig(IniFile::Section* sec, const std::string& base = "");
|
||||
virtual void SaveConfig(IniFile::Section* sec, const std::string& base = "");
|
||||
virtual void LoadConfig(Common::IniFile::Section* sec, const std::string& base = "");
|
||||
virtual void SaveConfig(Common::IniFile::Section* sec, const std::string& base = "");
|
||||
|
||||
bool IsDefaultDeviceConnected() const;
|
||||
const ciface::Core::DeviceQualifier& GetDefaultDevice() const;
|
||||
|
@ -60,8 +60,10 @@ public:
|
||||
|
||||
virtual ~NumericSettingBase() = default;
|
||||
|
||||
virtual void LoadFromIni(const IniFile::Section& section, const std::string& group_name) = 0;
|
||||
virtual void SaveToIni(IniFile::Section& section, const std::string& group_name) const = 0;
|
||||
virtual void LoadFromIni(const Common::IniFile::Section& section,
|
||||
const std::string& group_name) = 0;
|
||||
virtual void SaveToIni(Common::IniFile::Section& section,
|
||||
const std::string& group_name) const = 0;
|
||||
|
||||
virtual InputReference& GetInputReference() = 0;
|
||||
virtual const InputReference& GetInputReference() const = 0;
|
||||
@ -111,7 +113,7 @@ public:
|
||||
|
||||
void SetToDefault() override { m_value.SetValue(m_default_value); }
|
||||
|
||||
void LoadFromIni(const IniFile::Section& section, const std::string& group_name) override
|
||||
void LoadFromIni(const Common::IniFile::Section& section, const std::string& group_name) override
|
||||
{
|
||||
std::string str_value;
|
||||
if (section.Get(group_name + m_details.ini_name, &str_value))
|
||||
@ -125,7 +127,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
void SaveToIni(IniFile::Section& section, const std::string& group_name) const override
|
||||
void SaveToIni(Common::IniFile::Section& section, const std::string& group_name) const override
|
||||
{
|
||||
if (IsSimpleValue())
|
||||
{
|
||||
|
@ -226,8 +226,8 @@ void ReshapableInput::SetCenter(ReshapableInput::ReshapeData center)
|
||||
m_center = center;
|
||||
}
|
||||
|
||||
void ReshapableInput::LoadConfig(IniFile::Section* section, const std::string& default_device,
|
||||
const std::string& base_name)
|
||||
void ReshapableInput::LoadConfig(Common::IniFile::Section* section,
|
||||
const std::string& default_device, const std::string& base_name)
|
||||
{
|
||||
ControlGroup::LoadConfig(section, default_device, base_name);
|
||||
|
||||
@ -269,8 +269,8 @@ void ReshapableInput::LoadConfig(IniFile::Section* section, const std::string& d
|
||||
}
|
||||
}
|
||||
|
||||
void ReshapableInput::SaveConfig(IniFile::Section* section, const std::string& default_device,
|
||||
const std::string& base_name)
|
||||
void ReshapableInput::SaveConfig(Common::IniFile::Section* section,
|
||||
const std::string& default_device, const std::string& base_name)
|
||||
{
|
||||
ControlGroup::SaveConfig(section, default_device, base_name);
|
||||
|
||||
|
@ -117,8 +117,8 @@ protected:
|
||||
virtual Control* GetModifierInput() const;
|
||||
|
||||
private:
|
||||
void LoadConfig(IniFile::Section*, const std::string&, const std::string&) override;
|
||||
void SaveConfig(IniFile::Section*, const std::string&, const std::string&) override;
|
||||
void LoadConfig(Common::IniFile::Section*, const std::string&, const std::string&) override;
|
||||
void SaveConfig(Common::IniFile::Section*, const std::string&, const std::string&) override;
|
||||
|
||||
CalibrationData m_calibration;
|
||||
SettingValue<double> m_deadzone_setting;
|
||||
|
@ -39,7 +39,7 @@ void DynamicInputTextureManager::Load()
|
||||
}
|
||||
}
|
||||
|
||||
void DynamicInputTextureManager::GenerateTextures(const IniFile& file,
|
||||
void DynamicInputTextureManager::GenerateTextures(const Common::IniFile& file,
|
||||
const std::vector<std::string>& controller_names)
|
||||
{
|
||||
bool any_dirty = false;
|
||||
|
@ -20,7 +20,8 @@ public:
|
||||
DynamicInputTextureManager();
|
||||
~DynamicInputTextureManager();
|
||||
void Load();
|
||||
void GenerateTextures(const IniFile& file, const std::vector<std::string>& controller_names);
|
||||
void GenerateTextures(const Common::IniFile& file,
|
||||
const std::vector<std::string>& controller_names);
|
||||
|
||||
private:
|
||||
std::vector<DynamicInputTextures::Configuration> m_configuration;
|
||||
|
@ -11,6 +11,7 @@
|
||||
|
||||
#include "Common/CommonPaths.h"
|
||||
#include "Common/FileUtil.h"
|
||||
#include "Common/IniFile.h"
|
||||
#include "Common/Logging/Log.h"
|
||||
#include "Common/StringUtil.h"
|
||||
#include "Core/ConfigManager.h"
|
||||
@ -86,7 +87,7 @@ Configuration::Configuration(const std::string& json_file)
|
||||
|
||||
Configuration::~Configuration() = default;
|
||||
|
||||
bool Configuration::GenerateTextures(const IniFile& file,
|
||||
bool Configuration::GenerateTextures(const Common::IniFile& file,
|
||||
const std::vector<std::string>& controller_names) const
|
||||
{
|
||||
bool any_dirty = false;
|
||||
@ -98,7 +99,7 @@ bool Configuration::GenerateTextures(const IniFile& file,
|
||||
return any_dirty;
|
||||
}
|
||||
|
||||
bool Configuration::GenerateTexture(const IniFile& file,
|
||||
bool Configuration::GenerateTexture(const Common::IniFile& file,
|
||||
const std::vector<std::string>& controller_names,
|
||||
const Data& texture_data) const
|
||||
{
|
||||
|
@ -4,13 +4,16 @@
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
#include <unordered_map>
|
||||
#include <vector>
|
||||
|
||||
#include "Common/CommonTypes.h"
|
||||
#include "Common/IniFile.h"
|
||||
#include "InputCommon/DynamicInputTextures/DITData.h"
|
||||
|
||||
namespace Common
|
||||
{
|
||||
class IniFile;
|
||||
}
|
||||
|
||||
namespace InputCommon::DynamicInputTextures
|
||||
{
|
||||
class Configuration
|
||||
@ -18,11 +21,12 @@ class Configuration
|
||||
public:
|
||||
explicit Configuration(const std::string& json_file);
|
||||
~Configuration();
|
||||
bool GenerateTextures(const IniFile& file,
|
||||
bool GenerateTextures(const Common::IniFile& file,
|
||||
const std::vector<std::string>& controller_names) const;
|
||||
|
||||
private:
|
||||
bool GenerateTexture(const IniFile& file, const std::vector<std::string>& controller_names,
|
||||
bool GenerateTexture(const Common::IniFile& file,
|
||||
const std::vector<std::string>& controller_names,
|
||||
const Data& texture_data) const;
|
||||
|
||||
std::vector<Data> m_dynamic_input_textures;
|
||||
|
@ -29,7 +29,7 @@ InputConfig::~InputConfig() = default;
|
||||
|
||||
bool InputConfig::LoadConfig(InputClass type)
|
||||
{
|
||||
IniFile inifile;
|
||||
Common::IniFile inifile;
|
||||
bool useProfile[MAX_BBMOTES] = {false, false, false, false, false};
|
||||
static constexpr std::array<std::string_view, MAX_BBMOTES> num = {"1", "2", "3", "4", "BB"};
|
||||
std::string profile[MAX_BBMOTES];
|
||||
@ -57,8 +57,8 @@ bool InputConfig::LoadConfig(InputClass type)
|
||||
break;
|
||||
}
|
||||
|
||||
IniFile game_ini = SConfig::GetInstance().LoadGameIni();
|
||||
IniFile::Section* control_section = game_ini.GetOrCreateSection("Controls");
|
||||
Common::IniFile game_ini = SConfig::GetInstance().LoadGameIni();
|
||||
auto* control_section = game_ini.GetOrCreateSection("Controls");
|
||||
|
||||
for (int i = 0; i < 4; i++)
|
||||
{
|
||||
@ -95,7 +95,7 @@ bool InputConfig::LoadConfig(InputClass type)
|
||||
std::vector<std::string> controller_names;
|
||||
for (auto& controller : m_controllers)
|
||||
{
|
||||
IniFile::Section config;
|
||||
Common::IniFile::Section config;
|
||||
// Load settings from ini
|
||||
if (useProfile[n])
|
||||
{
|
||||
@ -146,7 +146,7 @@ void InputConfig::SaveConfig()
|
||||
{
|
||||
std::string ini_filename = File::GetUserPath(D_CONFIG_IDX) + m_ini_name + ".ini";
|
||||
|
||||
IniFile inifile;
|
||||
Common::IniFile inifile;
|
||||
inifile.Load(ini_filename);
|
||||
|
||||
std::vector<std::string> controller_names;
|
||||
@ -212,7 +212,7 @@ bool InputConfig::IsControllerControlledByGamepadDevice(int index) const
|
||||
controller.name == "Keyboard Mouse")); // Windows Keyboard/Mouse
|
||||
}
|
||||
|
||||
void InputConfig::GenerateControllerTextures(const IniFile& file)
|
||||
void InputConfig::GenerateControllerTextures(const Common::IniFile& file)
|
||||
{
|
||||
std::vector<std::string> controller_names;
|
||||
for (auto& controller : m_controllers)
|
||||
|
@ -11,6 +11,11 @@
|
||||
#include "InputCommon/ControllerInterface/ControllerInterface.h"
|
||||
#include "InputCommon/DynamicInputTextureManager.h"
|
||||
|
||||
namespace Common
|
||||
{
|
||||
class IniFile;
|
||||
}
|
||||
|
||||
namespace ControllerEmu
|
||||
{
|
||||
class EmulatedController;
|
||||
@ -53,7 +58,7 @@ public:
|
||||
void RegisterHotplugCallback();
|
||||
void UnregisterHotplugCallback();
|
||||
|
||||
void GenerateControllerTextures(const IniFile& file);
|
||||
void GenerateControllerTextures(const Common::IniFile& file);
|
||||
|
||||
private:
|
||||
ControllerInterface::HotplugCallbackHandle m_hotplug_callback_handle;
|
||||
|
@ -78,7 +78,7 @@ void ProfileCycler::UpdateToProfile(const std::string& profile_filename,
|
||||
std::string base;
|
||||
SplitPath(profile_filename, nullptr, &base, nullptr);
|
||||
|
||||
IniFile ini_file;
|
||||
Common::IniFile ini_file;
|
||||
if (ini_file.Load(profile_filename))
|
||||
{
|
||||
Core::DisplayMessage("Loading input profile '" + base + "' for device '" +
|
||||
@ -180,8 +180,8 @@ void ProfileCycler::CycleProfileForGame(CycleDirection cycle_direction,
|
||||
|
||||
std::string ProfileCycler::GetWiimoteInputProfilesForGame(int controller_index)
|
||||
{
|
||||
IniFile game_ini = SConfig::GetInstance().LoadGameIni();
|
||||
const IniFile::Section* const control_section = game_ini.GetOrCreateSection("Controls");
|
||||
Common::IniFile game_ini = SConfig::GetInstance().LoadGameIni();
|
||||
const auto* const control_section = game_ini.GetOrCreateSection("Controls");
|
||||
|
||||
std::string result;
|
||||
control_section->Get(fmt::format("WiimoteProfile{}", controller_index + 1), &result);
|
||||
|
Reference in New Issue
Block a user