Bitcoin Core  0.20.99
P2P Digital Currency
Public Slots | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
SplashScreen Class Reference

Class for the splashscreen with information of the running client. More...

#include <splashscreen.h>

Inheritance diagram for SplashScreen:
[legend]
Collaboration diagram for SplashScreen:
[legend]

Public Slots

void finish ()
 Hide the splash screen window and schedule the splash screen object for deletion. More...
 
void showMessage (const QString &message, int alignment, const QColor &color)
 Show message and progress. More...
 
void handleLoadWallet ()
 Handle wallet load notifications. More...
 

Public Member Functions

 SplashScreen (Qt::WindowFlags f, const NetworkStyle *networkStyle)
 
 ~SplashScreen ()
 
void setNode (interfaces::Node &node)
 

Protected Member Functions

void paintEvent (QPaintEvent *event) override
 
void closeEvent (QCloseEvent *event) override
 
bool eventFilter (QObject *obj, QEvent *ev) override
 

Private Member Functions

void subscribeToCoreSignals ()
 Connect core signals to splash screen. More...
 
void unsubscribeFromCoreSignals ()
 Disconnect core signals to splash screen. More...
 
void shutdown ()
 Initiate shutdown. More...
 

Private Attributes

QPixmap pixmap
 
QString curMessage
 
QColor curColor
 
int curAlignment
 
interfaces::Nodem_node = nullptr
 
bool m_shutdown = false
 
std::unique_ptr< interfaces::Handlerm_handler_init_message
 
std::unique_ptr< interfaces::Handlerm_handler_show_progress
 
std::unique_ptr< interfaces::Handlerm_handler_load_wallet
 
std::list< std::unique_ptr< interfaces::Wallet > > m_connected_wallets
 
std::list< std::unique_ptr< interfaces::Handler > > m_connected_wallet_handlers
 

Detailed Description

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.

Definition at line 26 of file splashscreen.h.

Constructor & Destructor Documentation

◆ SplashScreen()

SplashScreen::SplashScreen ( Qt::WindowFlags  f,
const NetworkStyle networkStyle 
)
explicit

Definition at line 28 of file splashscreen.cpp.

Here is the call graph for this function:

◆ ~SplashScreen()

SplashScreen::~SplashScreen ( )

Definition at line 133 of file splashscreen.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ closeEvent()

void SplashScreen::closeEvent ( QCloseEvent *  event)
overrideprotected

Definition at line 237 of file splashscreen.cpp.

Here is the call graph for this function:

◆ eventFilter()

bool SplashScreen::eventFilter ( QObject *  obj,
QEvent *  ev 
)
overrideprotected

Definition at line 152 of file splashscreen.cpp.

Here is the call graph for this function:

◆ finish

void SplashScreen::finish ( )
slot

Hide the splash screen window and schedule the splash screen object for deletion.

Definition at line 162 of file splashscreen.cpp.

Here is the caller graph for this function:

◆ handleLoadWallet

void SplashScreen::handleLoadWallet ( )
slot

Handle wallet load notifications.

Definition at line 197 of file splashscreen.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ paintEvent()

void SplashScreen::paintEvent ( QPaintEvent *  event)
overrideprotected

Definition at line 228 of file splashscreen.cpp.

◆ setNode()

void SplashScreen::setNode ( interfaces::Node node)

Definition at line 138 of file splashscreen.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ showMessage

void SplashScreen::showMessage ( const QString &  message,
int  alignment,
const QColor &  color 
)
slot

Show message and progress.

Definition at line 220 of file splashscreen.cpp.

◆ shutdown()

void SplashScreen::shutdown ( )
private

Initiate shutdown.

Definition at line 146 of file splashscreen.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ subscribeToCoreSignals()

void SplashScreen::subscribeToCoreSignals ( )
private

Connect core signals to splash screen.

Definition at line 190 of file splashscreen.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ unsubscribeFromCoreSignals()

void SplashScreen::unsubscribeFromCoreSignals ( )
private

Disconnect core signals to splash screen.

Definition at line 208 of file splashscreen.cpp.

Here is the caller graph for this function:

Member Data Documentation

◆ curAlignment

int SplashScreen::curAlignment
private

Definition at line 63 of file splashscreen.h.

◆ curColor

QColor SplashScreen::curColor
private

Definition at line 62 of file splashscreen.h.

◆ curMessage

QString SplashScreen::curMessage
private

Definition at line 61 of file splashscreen.h.

◆ m_connected_wallet_handlers

std::list<std::unique_ptr<interfaces::Handler> > SplashScreen::m_connected_wallet_handlers
private

Definition at line 71 of file splashscreen.h.

◆ m_connected_wallets

std::list<std::unique_ptr<interfaces::Wallet> > SplashScreen::m_connected_wallets
private

Definition at line 70 of file splashscreen.h.

◆ m_handler_init_message

std::unique_ptr<interfaces::Handler> SplashScreen::m_handler_init_message
private

Definition at line 67 of file splashscreen.h.

◆ m_handler_load_wallet

std::unique_ptr<interfaces::Handler> SplashScreen::m_handler_load_wallet
private

Definition at line 69 of file splashscreen.h.

◆ m_handler_show_progress

std::unique_ptr<interfaces::Handler> SplashScreen::m_handler_show_progress
private

Definition at line 68 of file splashscreen.h.

◆ m_node

interfaces::Node* SplashScreen::m_node = nullptr
private

Definition at line 65 of file splashscreen.h.

◆ m_shutdown

bool SplashScreen::m_shutdown = false
private

Definition at line 66 of file splashscreen.h.

◆ pixmap

QPixmap SplashScreen::pixmap
private

Definition at line 60 of file splashscreen.h.


The documentation for this class was generated from the following files: