diff options
author | Jonas Schnelli <dev@jonasschnelli.ch> | 2016-07-19 15:51:24 +0200 |
---|---|---|
committer | Jonas Schnelli <dev@jonasschnelli.ch> | 2016-08-26 11:34:30 +0200 |
commit | e3245b43d5c6fc984e8c60495f6db54f85d64368 (patch) | |
tree | 3deac5cbe80a37cf8e1d3b60eb6d86a86b8cb249 /src/qt/modaloverlay.h | |
parent | e47052f6b5ea901ecdc1cb8245dd98a98b06618a (diff) |
[Qt] add out-of-sync modal info layer
Diffstat (limited to 'src/qt/modaloverlay.h')
-rw-r--r-- | src/qt/modaloverlay.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/qt/modaloverlay.h b/src/qt/modaloverlay.h new file mode 100644 index 0000000000..5bf913a3f3 --- /dev/null +++ b/src/qt/modaloverlay.h @@ -0,0 +1,44 @@ +// Copyright (c) 2017 The Bitcoin Core developers +// Distributed under the MIT software license, see the accompanying +// file COPYING or http://www.opensource.org/licenses/mit-license.php. + +#ifndef BITCOIN_QT_MODALOVERLAY_H +#define BITCOIN_QT_MODALOVERLAY_H + +#include <QDateTime> +#include <QWidget> + +namespace Ui { + class ModalOverlay; +} + +/** Modal overlay to display information about the chain-sync state */ +class ModalOverlay : public QWidget +{ + Q_OBJECT + +public: + explicit ModalOverlay(QWidget *parent); + ~ModalOverlay(); + +public Q_SLOTS: + void tipUpdate(int count, const QDateTime& blockDate, double nVerificationProgress); + void setKnownBestHeight(int count); + + // will show or hide the modal layer + void showHide(bool hide = false, bool userRequested = false); + void closeClicked(); + +protected: + bool eventFilter(QObject * obj, QEvent * ev); + bool event(QEvent* ev); + +private: + Ui::ModalOverlay *ui; + int bestBlockHeight; //best known height (based on the headers) + QVector<QPair<qint64, double> > blockProcessTime; + bool layerIsVisible; + bool userClosed; +}; + +#endif // BITCOIN_QT_MODALOVERLAY_H |