summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swift/QtUI/QtAboutWidget.h')
-rw-r--r--Swift/QtUI/QtAboutWidget.h46
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_;
+ };
}