Browse Source

add splash screen

0.8
Wladimir J. van der Laan 13 years ago
parent
commit
10d680cff4
  1. 5
      src/init.cpp
  2. 20
      src/qt/bitcoin.cpp
  3. 1
      src/qt/bitcoin.qrc
  4. BIN
      src/qt/res/images/splash2.jpg
  5. 1
      src/qtui.h

5
src/init.cpp

@ -370,18 +370,21 @@ bool AppInit2(int argc, char* argv[]) @@ -370,18 +370,21 @@ bool AppInit2(int argc, char* argv[])
strErrors = "";
int64 nStart;
InitMessage("Loading addresses...");
printf("Loading addresses...\n");
nStart = GetTimeMillis();
if (!LoadAddresses())
strErrors += _("Error loading addr.dat \n");
printf(" addresses %15"PRI64d"ms\n", GetTimeMillis() - nStart);
InitMessage("Loading block index...");
printf("Loading block index...\n");
nStart = GetTimeMillis();
if (!LoadBlockIndex())
strErrors += _("Error loading blkindex.dat \n");
printf(" block index %15"PRI64d"ms\n", GetTimeMillis() - nStart);
InitMessage("Loading wallet...");
printf("Loading wallet...\n");
nStart = GetTimeMillis();
bool fFirstRun;
@ -412,12 +415,14 @@ bool AppInit2(int argc, char* argv[]) @@ -412,12 +415,14 @@ bool AppInit2(int argc, char* argv[])
}
if (pindexBest != pindexRescan)
{
InitMessage("Rescanning...");
printf("Rescanning last %i blocks (from block %i)...\n", pindexBest->nHeight - pindexRescan->nHeight, pindexRescan->nHeight);
nStart = GetTimeMillis();
pwalletMain->ScanForWalletTransactions(pindexRescan, true);
printf(" rescan %15"PRI64d"ms\n", GetTimeMillis() - nStart);
}
InitMessage("Done loading");
printf("Done loading\n");
//// debug print

20
src/qt/bitcoin.cpp

@ -15,9 +15,12 @@ @@ -15,9 +15,12 @@
#include <QThread>
#include <QLocale>
#include <QTranslator>
#include <QSplashScreen>
#include <QDebug>
// Need a global reference for the notifications to find the GUI
BitcoinGUI *guiref;
QSplashScreen *splashref;
int MyMessageBox(const std::string& message, const std::string& caption, int style, wxWindow* parent, int x, int y)
{
@ -90,6 +93,15 @@ void MainFrameRepaint() @@ -90,6 +93,15 @@ void MainFrameRepaint()
{
}
void InitMessage(const std::string &message)
{
if(splashref)
{
splashref->showMessage(QString::fromStdString(message), Qt::AlignBottom, QColor(255,255,255));
QApplication::instance()->processEvents();
}
}
/*
Translate string to current locale using Qt.
*/
@ -109,6 +121,13 @@ int main(int argc, char *argv[]) @@ -109,6 +121,13 @@ int main(int argc, char *argv[])
translator.load("bitcoin_"+locale);
app.installTranslator(&translator);
QSplashScreen splash(QPixmap(":/images/splash"), Qt::WindowStaysOnTopHint);
splash.show();
splash.setAutoFillBackground(true);
splashref = &splash;
app.processEvents();
app.setQuitOnLastWindowClosed(false);
try
@ -119,6 +138,7 @@ int main(int argc, char *argv[]) @@ -119,6 +138,7 @@ int main(int argc, char *argv[])
// Put this in a block, so that BitcoinGUI is cleaned up properly before
// calling shutdown.
BitcoinGUI window;
splash.finish(&window);
OptionsModel optionsModel(pwalletMain);
ClientModel clientModel(&optionsModel);
WalletModel walletModel(pwalletMain, &optionsModel);

1
src/qt/bitcoin.qrc

@ -37,6 +37,7 @@ @@ -37,6 +37,7 @@
</qresource>
<qresource prefix="/images">
<file alias="about">res/images/about.png</file>
<file alias="splash">res/images/splash2.jpg</file>
</qresource>
<qresource prefix="/movies">
<file alias="update_spinner">res/movies/update_spinner.mng</file>

BIN
src/qt/res/images/splash2.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

1
src/qtui.h

@ -43,6 +43,7 @@ extern bool ThreadSafeAskFee(int64 nFeeRequired, const std::string& strCaption, @@ -43,6 +43,7 @@ extern bool ThreadSafeAskFee(int64 nFeeRequired, const std::string& strCaption,
extern void CalledSetStatusBar(const std::string& strText, int nField);
extern void UIThreadCall(boost::function0<void> fn);
extern void MainFrameRepaint();
extern void InitMessage(const std::string &message);
extern std::string _(const char* psz);
#endif

Loading…
Cancel
Save