#pragma once #include #include class AppSettings { public: static AppSettings &instance() { static AppSettings inst; return inst; } QString authToken() const { return m_settings.value("auth/token").toString(); } void setAuthToken(const QString &t) { m_settings.setValue("auth/token", t); } QString userEmail() const { return m_settings.value("auth/email").toString(); } void setUserEmail(const QString &e) { m_settings.setValue("auth/email", e); } QString displayName() const { return m_settings.value("user/display_name").toString(); } void setDisplayName(const QString &n) { m_settings.setValue("user/display_name", n); } // 5 = MP3, 6 = CD, 7 = HiRes96, 27 = HiRes192 int preferredFormat() const { return m_settings.value("playback/format", 6).toInt(); } void setPreferredFormat(int f) { m_settings.setValue("playback/format", f); } int volume() const { return m_settings.value("playback/volume", 80).toInt(); } void setVolume(int v) { m_settings.setValue("playback/volume", v); } bool rememberLogin() const { return m_settings.value("auth/remember", true).toBool(); } void setRememberLogin(bool r) { m_settings.setValue("auth/remember", r); } private: AppSettings() : m_settings("qobuz-qt", "qobuz-qt") {} QSettings m_settings; };