14 #include <QMessageBox>
15 #include <QApplication>
17 #include <boost/lexical_cast.hpp>
23 setAutoFillBackground(
true);
26 int paddingRight = 50;
28 int titleVersionVSpace = 17;
29 int titleCopyrightVSpace = 40;
30 int titleCopyrightMSCVSpace = 17;
32 float fontFactor = 1.0;
36 QString titleText = tr(
"Master Core");
37 QString versionText = QString::fromStdString(coreVersionStr);
38 QString copyrightText = QChar(0xA9)+QString(
" 2009-%1 ").arg(
COPYRIGHT_YEAR) + QString(tr(
"The Bitcoin Core developers"));
39 QString copyrightMSC = QChar(0xA9)+QString(
" 2013-%1 ").arg(
COPYRIGHT_YEAR) + QString(tr(
"The Master Protocol developers"));
40 QString testnetAddText = QString(tr(
"[testnet]"));
42 QString font =
"Arial";
47 newPixmap = QPixmap(
":/images/splash_testnet");
50 newPixmap = QPixmap(
":/images/splash");
53 QPainter pixPaint(&newPixmap);
54 pixPaint.setPen(QColor(100,100,100));
57 pixPaint.setFont(QFont(font, 33*fontFactor));
58 QFontMetrics fm = pixPaint.fontMetrics();
59 int titleTextWidth = fm.width(titleText);
60 if(titleTextWidth > 160) {
65 pixPaint.setFont(QFont(font, 33*fontFactor));
66 fm = pixPaint.fontMetrics();
67 titleTextWidth = fm.width(titleText);
68 pixPaint.drawText(newPixmap.width()-titleTextWidth-paddingRight,paddingTop,titleText);
70 pixPaint.setFont(QFont(font, 15*fontFactor));
73 fm = pixPaint.fontMetrics();
74 int versionTextWidth = fm.width(versionText);
75 if(versionTextWidth > titleTextWidth+paddingRight-10) {
76 pixPaint.setFont(QFont(font, 10*fontFactor));
77 titleVersionVSpace -= 5;
79 pixPaint.drawText(newPixmap.width()-titleTextWidth-paddingRight+2,paddingTop+titleVersionVSpace,versionText);
82 pixPaint.setFont(QFont(font, 10*fontFactor));
83 pixPaint.drawText(newPixmap.width()-titleTextWidth-paddingRight+2,paddingTop+titleCopyrightVSpace,copyrightText);
84 pixPaint.drawText(newPixmap.width()-titleTextWidth-paddingRight+2,paddingTop+titleCopyrightVSpace+titleCopyrightMSCVSpace,copyrightMSC);
88 QFont boldFont = QFont(font, 10*fontFactor);
89 boldFont.setWeight(QFont::Bold);
90 pixPaint.setFont(boldFont);
91 fm = pixPaint.fontMetrics();
92 int testnetAddTextWidth = fm.width(testnetAddText);
93 pixPaint.drawText(newPixmap.width()-testnetAddTextWidth-10,15,testnetAddText);
98 this->setPixmap(newPixmap);
115 QMetaObject::invokeMethod(splash,
"showMessage",
116 Qt::QueuedConnection,
117 Q_ARG(QString, QString::fromStdString(message)),
118 Q_ARG(
int, Qt::AlignBottom|Qt::AlignHCenter),
119 Q_ARG(QColor, QColor(55,55,55)));
CClientUIInterface uiInterface
void unsubscribeFromCoreSignals()
Disconnect core signals to splash screen.
#define OMNICORE_VERSION_TYPE
#define OMNICORE_VERSION_BASE
class for the splashscreen with information of the running client
static void ShowProgress(SplashScreen *splash, const std::string &title, int nProgress)
void subscribeToCoreSignals()
Connect core signals to splash screen.
SplashScreen(const QPixmap &pixmap, Qt::WindowFlags f, bool isTestNet)
boost::signals2::signal< void(CWallet *wallet)> LoadWallet
A wallet has been loaded.
static void InitMessage(SplashScreen *splash, const std::string &message)
void slotFinish(QWidget *mainWin)
Slot to call finish() method as it's not defined as slot.
A CWallet is an extension of a keystore, which also maintains a set of transactions and balances...
boost::signals2::signal< void(const std::string &title, int nProgress)> ShowProgress
Show progress e.g.
boost::signals2::signal< void(const std::string &message)> InitMessage
Progress message during initialization.