You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.4 KiB
49 lines
1.4 KiB
// Copyright (c) 2011-2014 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_SPLASHSCREEN_H |
|
#define BITCOIN_QT_SPLASHSCREEN_H |
|
|
|
#include <QSplashScreen> |
|
|
|
class NetworkStyle; |
|
|
|
/** Class for the splashscreen with information of the running client. |
|
* |
|
* @note this is intentionally not a QSplashScreen. Bitcoin Core initialization |
|
* can take a long time, and in that case a progress window that cannot be |
|
* moved around and minimized has turned out to be frustrating to the user. |
|
*/ |
|
class SplashScreen : public QWidget |
|
{ |
|
Q_OBJECT |
|
|
|
public: |
|
explicit SplashScreen(Qt::WindowFlags f, const NetworkStyle *networkStyle); |
|
~SplashScreen(); |
|
|
|
protected: |
|
void paintEvent(QPaintEvent *event); |
|
void closeEvent(QCloseEvent *event); |
|
|
|
public Q_SLOTS: |
|
/** Slot to call finish() method as it's not defined as slot */ |
|
void slotFinish(QWidget *mainWin); |
|
|
|
/** Show message and progress */ |
|
void showMessage(const QString &message, int alignment, const QColor &color); |
|
|
|
private: |
|
/** Connect core signals to splash screen */ |
|
void subscribeToCoreSignals(); |
|
/** Disconnect core signals to splash screen */ |
|
void unsubscribeFromCoreSignals(); |
|
|
|
QPixmap pixmap; |
|
QString curMessage; |
|
QColor curColor; |
|
int curAlignment; |
|
}; |
|
|
|
#endif // BITCOIN_QT_SPLASHSCREEN_H
|
|
|