diff options
Diffstat (limited to 'Swift/QtUI/QtAboutWidget.h')
-rw-r--r-- | Swift/QtUI/QtAboutWidget.h | 46 |
1 files changed, 36 insertions, 10 deletions
diff --git a/Swift/QtUI/QtAboutWidget.h b/Swift/QtUI/QtAboutWidget.h index 1800676..b07c6b0 100644 --- a/Swift/QtUI/QtAboutWidget.h +++ b/Swift/QtUI/QtAboutWidget.h @@ -1,21 +1,47 @@ /* - * Copyright (c) 2010 Kevin Smith - * Licensed under the GNU General Public License v3. - * See Documentation/Licenses/GPLv3.txt for more information. + * Copyright (c) 2010-2017 Isode Limited. + * All rights reserved. + * See the COPYING file for more information. */ #pragma once +#include <boost/signals2/connection.hpp> + #include <QDialog> +class QLabel; +class QProgressBar; + namespace Swift { - class QtAboutWidget : public QDialog { - Q_OBJECT + class AutoUpdater; + class SettingsProvider; + + class QtAboutWidget : public QDialog { + Q_OBJECT + + public: + QtAboutWidget(SettingsProvider* settings, AutoUpdater* autoUpdater); + + private slots: + void handleLicenseClicked(); + void handleChangelogClicked(); + void handleChangeUpdateChannelClicked(); + + private: + void openPlainTextWindow(const QString& path); + void updateUpdateInfo(); - public: - QtAboutWidget(); + protected: + void showEvent(QShowEvent*); - private slots: - void handleLicenseClicked(); - }; + private: + SettingsProvider* settingsProvider_; + AutoUpdater* autoUpdater_; + QLabel* updateChannelInfoLabel_ = nullptr; + QLabel* updateStateInfoLabel_ = nullptr; + QProgressBar* updateProgressBar_ = nullptr; + boost::signals2::scoped_connection settingsChangedConnection_; + boost::signals2::scoped_connection autoUpdaterChangeConnection_; + }; } |