SingSettingsStore

The app level of the sing schema, stored in app::Settings.

Inherits QObject and config::IStore

In the namespace sing::settings. Declared in src/libs/libsing/settings/SingSettingsStore.hpp.

Detailed description

It obeys the facts of `app::Settings` that config::ui::SettingsStore obeys (config-ui §CFGM-6): a change is reported only when the value differs, and the INI back end returns strings, so get() converts each value to the type of its default.

It adds two things that a generic store cannot do. The channel layout and the output pair are kept once per output device, so their key comes from the device that resolves now (sing::settings::isPerDevice()). And the legacy keys of the audio settings are migrated before the first read, so a value an old build wrote reads through the schema (config-ui §CFGC-4, parity CFG-82).

In this section