diff options
| author | isanae <14251494+isanae@users.noreply.github.com> | 2019-07-20 09:31:38 -0400 |
|---|---|---|
| committer | isanae <14251494+isanae@users.noreply.github.com> | 2019-08-02 03:06:58 -0400 |
| commit | af95b3b8637d28517f69a70f13b901cc7f43d121 (patch) | |
| tree | 5ff6113611c85b5aabebdf5805d7f93e67a48fb5 /src/settingsdialognexus.h | |
| parent | 0a5ce34b1a80694fbfe6a4d6b4f032b9c11a5376 (diff) | |
renamed tab classes, clashing with mod info dialog
split nexus tab
Diffstat (limited to 'src/settingsdialognexus.h')
| -rw-r--r-- | src/settingsdialognexus.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/settingsdialognexus.h b/src/settingsdialognexus.h new file mode 100644 index 00000000..5c01f61f --- /dev/null +++ b/src/settingsdialognexus.h @@ -0,0 +1,40 @@ +#ifndef SETTINGSDIALOGNEXUS_H +#define SETTINGSDIALOGNEXUS_H + +#include "settings.h" +#include "settingsdialog.h" + +class NexusSettingsTab : public SettingsTab +{ +public: + NexusSettingsTab(Settings *m_parent, SettingsDialog &m_dialog); + void update(); + +private: + std::unique_ptr<NexusSSOLogin> m_nexusLogin; + std::unique_ptr<NexusKeyValidator> m_nexusValidator; + + void on_nexusConnect_clicked(); + void on_nexusManualKey_clicked(); + void on_nexusDisconnect_clicked(); + void on_clearCacheButton_clicked(); + void on_associateButton_clicked(); + + void validateKey(const QString& key); + bool setKey(const QString& key); + bool clearKey(); + + void updateNexusState(); + void updateNexusButtons(); + void updateNexusData(); + + void onSSOKeyChanged(const QString& key); + void onSSOStateChanged(NexusSSOLogin::States s, const QString& e); + + void onValidatorStateChanged(NexusKeyValidator::States s, const QString& e); + void onValidatorFinished(const APIUserAccount& user); + + void addNexusLog(const QString& s); +}; + +#endif // SETTINGSDIALOGNEXUS_H |
