general: Make most settings a BasicSetting

Creates a new BasicSettings class in common/settings, and forces setting
a default and label for each setting that uses it in common/settings.
Moves defaults and labels from both frontends into common settings.
Creates a helper function in each frontend to facillitate reading the
settings now with the new default and label properties.

Settings::Setting is also now a subclass of Settings::BasicSetting. Also
adds documentation for both Setting and BasicSetting.
This commit is contained in:
lat9nq 2021-06-28 15:58:16 -04:00
parent 35b17fa5e0
commit b91b76df4f
32 changed files with 813 additions and 666 deletions

View file

@ -12,8 +12,7 @@ namespace InputCommon {
class TouchFromButtonDevice final : public Input::TouchDevice {
public:
TouchFromButtonDevice() {
const auto button_index =
static_cast<std::size_t>(Settings::values.touch_from_button_map_index);
const auto button_index = Settings::values.touch_from_button_map_index.GetValue();
const auto& buttons = Settings::values.touch_from_button_maps[button_index].buttons;
for (const auto& config_entry : buttons) {