configuration: Use a mapping of setting value to name

Makes comboboxes always correspond to the value of the setting they're
modifying.
This commit is contained in:
lat9nq 2023-05-18 22:17:36 -04:00
parent 7a56b4a224
commit b212eb4d6f
18 changed files with 354 additions and 228 deletions

View file

@ -35,13 +35,12 @@ class Widget : public QWidget {
Q_OBJECT
public:
Widget(Settings::BasicSetting* setting, const TranslationMap& translations, QWidget* parent,
bool runtime_lock, std::forward_list<std::function<void(bool)>>& apply_funcs_,
Widget(Settings::BasicSetting* setting, const TranslationMap& translations,
const ComboboxTranslationMap& combobox_translations, QWidget* parent, bool runtime_lock,
std::forward_list<std::function<void(bool)>>& apply_funcs_,
RequestType request = RequestType::Default, bool managed = true, float multiplier = 1.0f,
Settings::BasicSetting* other_setting = nullptr,
const QString& string = QStringLiteral(""));
Widget(Settings::BasicSetting* setting_, const TranslationMap& translations_, QWidget* parent_,
std::forward_list<std::function<void(bool)>>& apply_funcs_);
virtual ~Widget();
bool Valid();
@ -77,6 +76,7 @@ private:
QWidget* parent;
const TranslationMap& translations;
const ComboboxTranslationMap& combobox_enumerations;
Settings::BasicSetting& setting;
std::forward_list<std::function<void(bool)>>& apply_funcs;