mirror of
https://git.suyu.dev/suyu/suyu.git
synced 2024-11-15 22:54:00 +00:00
configuration_shared: Add some comments
Monke brain can't remember what all of these does a year later.
This commit is contained in:
parent
e169fdad4f
commit
59236b7d0f
1 changed files with 14 additions and 6 deletions
|
@ -15,23 +15,24 @@ constexpr int USE_GLOBAL_INDEX = 0;
|
|||
constexpr int USE_GLOBAL_SEPARATOR_INDEX = 1;
|
||||
constexpr int USE_GLOBAL_OFFSET = 2;
|
||||
|
||||
// CheckBoxes require a tracker for their state since we emulate a tristate CheckBox
|
||||
enum class CheckState {
|
||||
Off,
|
||||
On,
|
||||
Global,
|
||||
Count,
|
||||
Off, // Checkbox overrides to off/false
|
||||
On, // Checkbox overrides to on/true
|
||||
Global, // Checkbox defers to the global state
|
||||
Count, // Simply the number of states, not a valid checkbox state
|
||||
};
|
||||
|
||||
// Global-aware apply and set functions
|
||||
|
||||
// ApplyPerGameSetting, given a Settings::Setting and a Qt UI element, properly applies a Setting
|
||||
void ApplyPerGameSetting(Settings::Setting<bool>* setting, const QCheckBox* checkbox,
|
||||
const CheckState& tracker);
|
||||
void ApplyPerGameSetting(Settings::Setting<int>* setting, const QComboBox* combobox);
|
||||
void ApplyPerGameSetting(Settings::Setting<Settings::RendererBackend>* setting,
|
||||
const QComboBox* combobox);
|
||||
void ApplyPerGameSetting(Settings::Setting<Settings::GPUAccuracy>* setting,
|
||||
const QComboBox* combobox);
|
||||
|
||||
// Sets a Qt UI element given a Settings::Setting
|
||||
void SetPerGameSetting(QCheckBox* checkbox, const Settings::Setting<bool>* setting);
|
||||
void SetPerGameSetting(QComboBox* combobox, const Settings::Setting<int>* setting);
|
||||
void SetPerGameSetting(QComboBox* combobox,
|
||||
|
@ -39,13 +40,20 @@ void SetPerGameSetting(QComboBox* combobox,
|
|||
void SetPerGameSetting(QComboBox* combobox,
|
||||
const Settings::Setting<Settings::GPUAccuracy>* setting);
|
||||
|
||||
// (Un)highlights a Qt UI element
|
||||
void SetHighlight(QWidget* widget, bool highlighted);
|
||||
|
||||
// Sets up a QCheckBox like a tristate one, given a Setting
|
||||
void SetColoredTristate(QCheckBox* checkbox, const Settings::Setting<bool>& setting,
|
||||
CheckState& tracker);
|
||||
void SetColoredTristate(QCheckBox* checkbox, bool global, bool state, bool global_state,
|
||||
CheckState& tracker);
|
||||
|
||||
// Sets up coloring of a QWidget `target` based on the state of a QComboBox, and calls
|
||||
// InsertGlobalItem
|
||||
void SetColoredComboBox(QComboBox* combobox, QWidget* target, int global);
|
||||
|
||||
// Adds the "Use Global Configuration" selection and separator to the beginning of a QComboBox
|
||||
void InsertGlobalItem(QComboBox* combobox, int global_index);
|
||||
|
||||
} // namespace ConfigurationShared
|
||||
|
|
Loading…
Reference in a new issue