diff options
| author | Felix (xq) Queißner <git@mq32.de> | 2020-06-07 01:06:07 +0200 |
|---|---|---|
| committer | Felix (xq) Queißner <git@mq32.de> | 2020-06-07 01:06:07 +0200 |
| commit | 093bfcc50d5889358ed806096ac5652a9e925cfc (patch) | |
| tree | f0276f86cf9b14309851b9d3136c370503ecea64 /src/protocolsetup.cpp | |
| parent | d4d353dab0f7c2fe2e1d76f6666f848e077d07dd (diff) | |
Implements multi-protocol support. Adds support for HTTP/HTTPS, adds settings to enable/disable protocols
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; +} |
