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;
}
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
#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)
{
{
}
+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.
*/
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
// 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);
</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>
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