#pragma once #include #include #include #include namespace scwx { namespace qt { namespace settings { class UnitSettings : public SettingsCategory { public: explicit UnitSettings(); ~UnitSettings(); UnitSettings(const UnitSettings&) = delete; UnitSettings& operator=(const UnitSettings&) = delete; UnitSettings(UnitSettings&&) noexcept; UnitSettings& operator=(UnitSettings&&) noexcept; SettingsVariable& accumulation_units() const; SettingsVariable& echo_tops_units() const; SettingsVariable& other_units() const; SettingsVariable& speed_units() const; SettingsVariable& distance_units() const; static UnitSettings& Instance(); friend bool operator==(const UnitSettings& lhs, const UnitSettings& rhs); private: class Impl; std::unique_ptr p; }; } // namespace settings } // namespace qt } // namespace scwx