WSJT-X/SettingsGroup.hpp

35 lines
610 B
C++

#ifndef SETTINGS_GROUP_HPP_
#define SETTINGS_GROUP_HPP_
#include <QSettings>
#include <QString>
//
// Class SettingsGroup
//
// Simple RAII type class to apply a QSettings group witin a
// scope.
//
class SettingsGroup
{
public:
SettingsGroup (QSettings * settings, QString const& group)
: settings_ {settings}
{
settings_->beginGroup (group);
}
SettingsGroup (SettingsGroup const&) = delete;
SettingsGroup& operator = (SettingsGroup const&) = delete;
~SettingsGroup ()
{
settings_->endGroup ();
}
private:
QSettings * settings_;
};
#endif