Qt crash fix. Don't store Config::Info variable as a reference.

This commit is contained in:
TryTwo 2024-12-23 14:54:26 -07:00
parent c528a70e64
commit 27ac5fa777
6 changed files with 12 additions and 36 deletions

View File

@ -6,11 +6,7 @@
#include "DolphinQt/Config/ConfigControls/ConfigControl.h" #include "DolphinQt/Config/ConfigControls/ConfigControl.h"
#include "DolphinQt/Config/ToolTipControls/ToolTipCheckBox.h" #include "DolphinQt/Config/ToolTipControls/ToolTipCheckBox.h"
namespace Config #include "Common/Config/ConfigInfo.h"
{
template <typename T>
class Info;
}
class ConfigBool final : public ConfigControl<ToolTipCheckBox> class ConfigBool final : public ConfigControl<ToolTipCheckBox>
{ {
@ -26,6 +22,6 @@ protected:
private: private:
void Update(); void Update();
const Config::Info<bool>& m_setting; const Config::Info<bool> m_setting;
bool m_reverse; bool m_reverse;
}; };

View File

@ -10,11 +10,7 @@
#include "DolphinQt/Config/ConfigControls/ConfigControl.h" #include "DolphinQt/Config/ConfigControls/ConfigControl.h"
#include "DolphinQt/Config/ToolTipControls/ToolTipComboBox.h" #include "DolphinQt/Config/ToolTipControls/ToolTipComboBox.h"
namespace Config #include "Common/Config/ConfigInfo.h"
{
template <typename T>
class Info;
}
class ConfigChoice final : public ConfigControl<ToolTipComboBox> class ConfigChoice final : public ConfigControl<ToolTipComboBox>
{ {
@ -48,7 +44,7 @@ protected:
private: private:
void Update(int index); void Update(int index);
const Config::Info<std::string>& m_setting; const Config::Info<std::string> m_setting;
bool m_text_is_data = false; bool m_text_is_data = false;
}; };

View File

@ -6,11 +6,7 @@
#include "DolphinQt/Config/ConfigControls/ConfigControl.h" #include "DolphinQt/Config/ConfigControls/ConfigControl.h"
#include "DolphinQt/Config/ToolTipControls/ToolTipSlider.h" #include "DolphinQt/Config/ToolTipControls/ToolTipSlider.h"
namespace Config #include "Common/Config/ConfigInfo.h"
{
template <typename T>
class Info;
}
// Automatically converts an int slider into a float one. // Automatically converts an int slider into a float one.
// Do not read the int values or ranges directly from it. // Do not read the int values or ranges directly from it.
@ -31,5 +27,5 @@ protected:
private: private:
float m_minimum; float m_minimum;
float m_step; float m_step;
const Config::Info<float>& m_setting; const Config::Info<float> m_setting;
}; };

View File

@ -9,11 +9,7 @@
#include "DolphinQt/Config/ConfigControls/ConfigControl.h" #include "DolphinQt/Config/ConfigControls/ConfigControl.h"
#include "DolphinQt/Config/ToolTipControls/ToolTipSpinBox.h" #include "DolphinQt/Config/ToolTipControls/ToolTipSpinBox.h"
namespace Config #include "Common/Config/ConfigInfo.h"
{
template <typename T>
class Info;
}
class ConfigInteger final : public ConfigControl<ToolTipSpinBox> class ConfigInteger final : public ConfigControl<ToolTipSpinBox>
{ {
@ -29,7 +25,7 @@ protected:
void OnConfigChanged() override; void OnConfigChanged() override;
private: private:
const Config::Info<int>& m_setting; const Config::Info<int> m_setting;
}; };
class ConfigIntegerLabel final : public QLabel class ConfigIntegerLabel final : public QLabel

View File

@ -6,11 +6,7 @@
#include "DolphinQt/Config/ConfigControls/ConfigControl.h" #include "DolphinQt/Config/ConfigControls/ConfigControl.h"
#include "DolphinQt/Config/ToolTipControls/ToolTipRadioButton.h" #include "DolphinQt/Config/ToolTipControls/ToolTipRadioButton.h"
namespace Config #include "Common/Config/ConfigInfo.h"
{
template <typename T>
class Info;
}
class ConfigRadioInt final : public ConfigControl<ToolTipRadioButton> class ConfigRadioInt final : public ConfigControl<ToolTipRadioButton>
{ {
@ -31,6 +27,6 @@ protected:
private: private:
void Update(); void Update();
const Config::Info<int>& m_setting; const Config::Info<int> m_setting;
int m_value; int m_value;
}; };

View File

@ -9,11 +9,7 @@
#include "DolphinQt/Config/ConfigControls/ConfigControl.h" #include "DolphinQt/Config/ConfigControls/ConfigControl.h"
#include "DolphinQt/Config/ToolTipControls/ToolTipSlider.h" #include "DolphinQt/Config/ToolTipControls/ToolTipSlider.h"
namespace Config #include "Common/Config/ConfigInfo.h"
{
template <typename T>
class Info;
}
class ConfigSlider final : public ConfigControl<ToolTipSlider> class ConfigSlider final : public ConfigControl<ToolTipSlider>
{ {
@ -29,7 +25,7 @@ protected:
void OnConfigChanged() override; void OnConfigChanged() override;
private: private:
const Config::Info<int>& m_setting; const Config::Info<int> m_setting;
}; };
class ConfigSliderLabel final : public QLabel class ConfigSliderLabel final : public QLabel