diff options
Diffstat (limited to 'src/protocolsetup.cpp')
| -rw-r--r-- | src/protocolsetup.cpp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/protocolsetup.cpp b/src/protocolsetup.cpp new file mode 100644 index 0000000..bbecfa0 --- /dev/null +++ b/src/protocolsetup.cpp @@ -0,0 +1,42 @@ +#include "protocolsetup.hpp" + +ProtocolSetup::ProtocolSetup() +{ +#define MAC(X) this->X = false; + PROTOCOLS(MAC) +#undef MAC + + this->gemini = true; +} + +void ProtocolSetup::save(QSettings &settings) const +{ + settings.beginGroup("Protocols"); +#define MAC(X) settings.setValue(#X, this->X); + PROTOCOLS(MAC) +#undef MAC + settings.endGroup(); +} + +void ProtocolSetup::load(QSettings &settings) +{ + settings.beginGroup("Protocols"); +#define MAC(X) if(settings.contains(#X)) this->X = settings.value(#X).toBool(); + PROTOCOLS(MAC) +#undef MAC + settings.endGroup(); +} + +bool ProtocolSetup::isSchemeSupported(QString const & _scheme) const +{ + auto scheme = _scheme.toLower(); + +#define MAC(X) if(scheme == #X) return this->X; + PROTOCOLS(MAC) +#undef MAC + + // built-in schemes: + if(scheme == "about") return true; + + return false; +} |
