final units, path and images
This commit is contained in:
@@ -532,7 +532,7 @@ void CoinControlDialog::updateLabels(WalletModel *model, QDialog* dialog)
|
||||
}
|
||||
|
||||
// actually update labels
|
||||
int nDisplayUnit = BitcoinUnits::BTC;
|
||||
int nDisplayUnit = BitcoinUnits::NYC3;
|
||||
if (model && model->getOptionsModel())
|
||||
nDisplayUnit = model->getOptionsModel()->getDisplayUnit();
|
||||
|
||||
|
||||
+2
-2
@@ -149,7 +149,7 @@ bool parseBitcoinURI(const QUrl &uri, SendCoinsRecipient *out)
|
||||
{
|
||||
if(!i->second.isEmpty())
|
||||
{
|
||||
if(!BitcoinUnits::parse(BitcoinUnits::BTC, i->second, &rv.amount))
|
||||
if(!BitcoinUnits::parse(BitcoinUnits::NYC3, i->second, &rv.amount))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@@ -180,7 +180,7 @@ QString formatBitcoinURI(const SendCoinsRecipient &info)
|
||||
|
||||
if (info.amount)
|
||||
{
|
||||
ret += QString("?amount=%1").arg(BitcoinUnits::format(BitcoinUnits::BTC, info.amount, false, BitcoinUnits::separatorNever));
|
||||
ret += QString("?amount=%1").arg(BitcoinUnits::format(BitcoinUnits::NYC3, info.amount, false, BitcoinUnits::separatorNever));
|
||||
paramCount++;
|
||||
}
|
||||
|
||||
|
||||
+14
-2
@@ -7,6 +7,8 @@
|
||||
#include <qt/guiconstants.h>
|
||||
|
||||
#include <QApplication>
|
||||
#include <QTime>
|
||||
#include <QString>
|
||||
|
||||
static const struct {
|
||||
const char *networkId;
|
||||
@@ -26,8 +28,18 @@ NetworkStyle::NetworkStyle(const QString &_appName, const int iconColorHueShift,
|
||||
appName(_appName),
|
||||
titleAddText(qApp->translate("SplashScreen", _titleAddText))
|
||||
{
|
||||
// load pixmap
|
||||
QPixmap pixmap(":/icons/bitcoin");
|
||||
|
||||
int randomsplash = qrand() % (5 - 1) + 1;
|
||||
QString selectedimg;
|
||||
if (randomsplash == 1)
|
||||
selectedimg = (":/icons/spl1");
|
||||
if (randomsplash == 2)
|
||||
selectedimg = (":/icons/spl2");
|
||||
if (randomsplash == 3)
|
||||
selectedimg = (":/icons/spl3");
|
||||
if (randomsplash == 4)
|
||||
selectedimg = (":/icons/spl4");
|
||||
QPixmap pixmap(selectedimg);
|
||||
|
||||
if(iconColorHueShift != 0 && iconColorSaturationReduction != 0)
|
||||
{
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
<!DOCTYPE RCC><RCC version="1.0">
|
||||
<qresource prefix="/icons">
|
||||
<file alias="spl1">res/icons/1.png</file>
|
||||
<file alias="spl2">res/icons/2.png</file>
|
||||
<file alias="spl3">res/icons/3.png</file>
|
||||
<file alias="spl4">res/icons/4.png</file>
|
||||
<file alias="bitcoin">res/icons/nyc3.png</file>
|
||||
<file alias="address-book">res/icons/address-book.png</file>
|
||||
<file alias="quit">res/icons/quit.png</file>
|
||||
|
||||
@@ -121,7 +121,7 @@ public:
|
||||
|
||||
const QFontMetrics fm(fontMetrics());
|
||||
int h = lineEdit()->minimumSizeHint().height();
|
||||
int w = fm.width(BitcoinUnits::format(BitcoinUnits::BTC, BitcoinUnits::maxMoney(), false, BitcoinUnits::separatorAlways));
|
||||
int w = fm.width(BitcoinUnits::format(BitcoinUnits::NYC3, BitcoinUnits::maxMoney(), false, BitcoinUnits::separatorAlways));
|
||||
w += 2; // cursor blinking space
|
||||
|
||||
QStyleOptionSpinBox opt;
|
||||
@@ -147,7 +147,7 @@ public:
|
||||
}
|
||||
|
||||
private:
|
||||
int currentUnit{BitcoinUnits::BTC};
|
||||
int currentUnit{BitcoinUnits::NYC3};
|
||||
CAmount singleStep{CAmount(100000)}; // satoshis
|
||||
mutable QSize cachedMinimumSizeHint;
|
||||
bool m_allow_empty{true};
|
||||
|
||||
+19
-19
@@ -17,9 +17,9 @@ BitcoinUnits::BitcoinUnits(QObject *parent):
|
||||
QList<BitcoinUnits::Unit> BitcoinUnits::availableUnits()
|
||||
{
|
||||
QList<BitcoinUnits::Unit> unitlist;
|
||||
unitlist.append(BTC);
|
||||
unitlist.append(mBTC);
|
||||
unitlist.append(uBTC);
|
||||
unitlist.append(NYC3);
|
||||
unitlist.append(mNYC3);
|
||||
unitlist.append(uNYC3);
|
||||
unitlist.append(SAT);
|
||||
return unitlist;
|
||||
}
|
||||
@@ -28,9 +28,9 @@ bool BitcoinUnits::valid(int unit)
|
||||
{
|
||||
switch(unit)
|
||||
{
|
||||
case BTC:
|
||||
case mBTC:
|
||||
case uBTC:
|
||||
case NYC3:
|
||||
case mNYC3:
|
||||
case uNYC3:
|
||||
case SAT:
|
||||
return true;
|
||||
default:
|
||||
@@ -42,9 +42,9 @@ QString BitcoinUnits::longName(int unit)
|
||||
{
|
||||
switch(unit)
|
||||
{
|
||||
case BTC: return QString("BTC");
|
||||
case mBTC: return QString("mBTC");
|
||||
case uBTC: return QString::fromUtf8("µBTC (bits)");
|
||||
case NYC3: return QString("NYC3");
|
||||
case mNYC3: return QString("mNYC3");
|
||||
case uNYC3: return QString::fromUtf8("µNYC3 (bits)");
|
||||
case SAT: return QString("Satoshi (sat)");
|
||||
default: return QString("???");
|
||||
}
|
||||
@@ -54,7 +54,7 @@ QString BitcoinUnits::shortName(int unit)
|
||||
{
|
||||
switch(unit)
|
||||
{
|
||||
case uBTC: return QString::fromUtf8("bits");
|
||||
case uNYC3: return QString::fromUtf8("bits");
|
||||
case SAT: return QString("sat");
|
||||
default: return longName(unit);
|
||||
}
|
||||
@@ -64,9 +64,9 @@ QString BitcoinUnits::description(int unit)
|
||||
{
|
||||
switch(unit)
|
||||
{
|
||||
case BTC: return QString("Bitcoins");
|
||||
case mBTC: return QString("Milli-Bitcoins (1 / 1" THIN_SP_UTF8 "000)");
|
||||
case uBTC: return QString("Micro-Bitcoins (bits) (1 / 1" THIN_SP_UTF8 "000" THIN_SP_UTF8 "000)");
|
||||
case NYC3: return QString("NYC3s");
|
||||
case mNYC3: return QString("Milli-NYC3s (1 / 1" THIN_SP_UTF8 "000)");
|
||||
case uNYC3: return QString("Micro-NYC3s (bits) (1 / 1" THIN_SP_UTF8 "000" THIN_SP_UTF8 "000)");
|
||||
case SAT: return QString("Satoshi (sat) (1 / 100" THIN_SP_UTF8 "000" THIN_SP_UTF8 "000)");
|
||||
default: return QString("???");
|
||||
}
|
||||
@@ -76,9 +76,9 @@ qint64 BitcoinUnits::factor(int unit)
|
||||
{
|
||||
switch(unit)
|
||||
{
|
||||
case BTC: return 100000000;
|
||||
case mBTC: return 100000;
|
||||
case uBTC: return 100;
|
||||
case NYC3: return 100000000;
|
||||
case mNYC3: return 100000;
|
||||
case uNYC3: return 100;
|
||||
case SAT: return 1;
|
||||
default: return 100000000;
|
||||
}
|
||||
@@ -88,9 +88,9 @@ int BitcoinUnits::decimals(int unit)
|
||||
{
|
||||
switch(unit)
|
||||
{
|
||||
case BTC: return 8;
|
||||
case mBTC: return 5;
|
||||
case uBTC: return 2;
|
||||
case NYC3: return 8;
|
||||
case mNYC3: return 5;
|
||||
case uNYC3: return 2;
|
||||
case SAT: return 0;
|
||||
default: return 0;
|
||||
}
|
||||
|
||||
+3
-3
@@ -56,9 +56,9 @@ public:
|
||||
*/
|
||||
enum Unit
|
||||
{
|
||||
BTC,
|
||||
mBTC,
|
||||
uBTC,
|
||||
NYC3,
|
||||
mNYC3,
|
||||
uNYC3,
|
||||
SAT
|
||||
};
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@ void OptionsModel::Init(bool resetSettings)
|
||||
|
||||
// Display
|
||||
if (!settings.contains("nDisplayUnit"))
|
||||
settings.setValue("nDisplayUnit", BitcoinUnits::BTC);
|
||||
settings.setValue("nDisplayUnit", BitcoinUnits::NYC3);
|
||||
nDisplayUnit = settings.value("nDisplayUnit").toInt();
|
||||
|
||||
if (!settings.contains("strThirdPartyTxUrls"))
|
||||
|
||||
@@ -28,7 +28,7 @@ class TxViewDelegate : public QAbstractItemDelegate
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit TxViewDelegate(const PlatformStyle *_platformStyle, QObject *parent=nullptr):
|
||||
QAbstractItemDelegate(parent), unit(BitcoinUnits::BTC),
|
||||
QAbstractItemDelegate(parent), unit(BitcoinUnits::NYC3),
|
||||
platformStyle(_platformStyle)
|
||||
{
|
||||
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 1.4 MiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.4 MiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.4 MiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.4 MiB |
+20
-66
@@ -28,97 +28,51 @@
|
||||
SplashScreen::SplashScreen(interfaces::Node& node, Qt::WindowFlags f, const NetworkStyle *networkStyle) :
|
||||
QWidget(nullptr, f), curAlignment(0), m_node(node)
|
||||
{
|
||||
// set reference point, paddings
|
||||
int paddingRight = 50;
|
||||
int paddingTop = 50;
|
||||
int titleVersionVSpace = 17;
|
||||
int titleCopyrightVSpace = 40;
|
||||
setWindowFlags(Qt::FramelessWindowHint| Qt::WindowSystemMenuHint);
|
||||
|
||||
float fontFactor = 1.0;
|
||||
float devicePixelRatio = 1.0;
|
||||
devicePixelRatio = static_cast<QGuiApplication*>(QCoreApplication::instance())->devicePixelRatio();
|
||||
// set reference point, paddings
|
||||
int paddingLeft = 14;
|
||||
int paddingTop = 410;
|
||||
int titleCopyrightVSpace = 32;
|
||||
float fontFactor = 1.0;
|
||||
float devicePixelRatio = 1.0;
|
||||
QString font = QApplication::font().toString();
|
||||
|
||||
// define text to place
|
||||
QString titleText = tr(PACKAGE_NAME);
|
||||
QString versionText = QString("Version %1").arg(QString::fromStdString(FormatFullVersion()));
|
||||
QString copyrightText = QString::fromUtf8(CopyrightHolders(strprintf("\xc2\xA9 %u-%u ", 2009, COPYRIGHT_YEAR)).c_str());
|
||||
QString titleAddText = networkStyle->getTitleAddText();
|
||||
|
||||
QString font = QApplication::font().toString();
|
||||
QString titleAddText = networkStyle->getTitleAddText();
|
||||
|
||||
// create a bitmap according to device pixelratio
|
||||
QSize splashSize(480*devicePixelRatio,320*devicePixelRatio);
|
||||
QSize splashSize(1000*devicePixelRatio,480*devicePixelRatio);
|
||||
pixmap = QPixmap(splashSize);
|
||||
|
||||
// change to HiDPI if it makes sense
|
||||
pixmap.setDevicePixelRatio(devicePixelRatio);
|
||||
|
||||
QPainter pixPaint(&pixmap);
|
||||
pixPaint.setPen(QColor(100,100,100));
|
||||
|
||||
// draw a slightly radial gradient
|
||||
QRect rectIcon(QPoint(00,0), QSize(1000,480));
|
||||
const QSize requiredSize(1000,480);
|
||||
QPixmap icon(networkStyle->getAppIcon().pixmap(requiredSize));
|
||||
QRadialGradient gradient(QPoint(0,0), splashSize.width()/devicePixelRatio);
|
||||
gradient.setColorAt(0, Qt::white);
|
||||
gradient.setColorAt(1, QColor(247,247,247));
|
||||
QRect rGradient(QPoint(0,0), splashSize);
|
||||
pixPaint.fillRect(rGradient, gradient);
|
||||
|
||||
// draw the bitcoin icon, expected size of PNG: 1024x1024
|
||||
QRect rectIcon(QPoint(-150,-122), QSize(430,430));
|
||||
|
||||
const QSize requiredSize(1024,1024);
|
||||
QPixmap icon(networkStyle->getAppIcon().pixmap(requiredSize));
|
||||
|
||||
pixPaint.drawPixmap(rectIcon, icon);
|
||||
|
||||
// check font size and drawing with
|
||||
pixPaint.setFont(QFont(font, 33*fontFactor));
|
||||
QFontMetrics fm = pixPaint.fontMetrics();
|
||||
int titleTextWidth = fm.width(titleText);
|
||||
if (titleTextWidth > 176) {
|
||||
fontFactor = fontFactor * 176 / titleTextWidth;
|
||||
}
|
||||
|
||||
pixPaint.setFont(QFont(font, 33*fontFactor));
|
||||
fm = pixPaint.fontMetrics();
|
||||
titleTextWidth = fm.width(titleText);
|
||||
pixPaint.drawText(pixmap.width()/devicePixelRatio-titleTextWidth-paddingRight,paddingTop,titleText);
|
||||
|
||||
pixPaint.setFont(QFont(font, 15*fontFactor));
|
||||
|
||||
// if the version string is too long, reduce size
|
||||
fm = pixPaint.fontMetrics();
|
||||
int versionTextWidth = fm.width(versionText);
|
||||
if(versionTextWidth > titleTextWidth+paddingRight-10) {
|
||||
pixPaint.setFont(QFont(font, 10*fontFactor));
|
||||
titleVersionVSpace -= 5;
|
||||
}
|
||||
pixPaint.drawText(pixmap.width()/devicePixelRatio-titleTextWidth-paddingRight+2,paddingTop+titleVersionVSpace,versionText);
|
||||
|
||||
// draw copyright stuff
|
||||
{
|
||||
pixPaint.setFont(QFont(font, 10*fontFactor));
|
||||
const int x = pixmap.width()/devicePixelRatio-titleTextWidth-paddingRight;
|
||||
const int y = paddingTop+titleCopyrightVSpace;
|
||||
QRect copyrightRect(x, y, pixmap.width() - x - paddingRight, pixmap.height() - y);
|
||||
pixPaint.drawText(copyrightRect, Qt::AlignLeft | Qt::AlignTop | Qt::TextWordWrap, copyrightText);
|
||||
}
|
||||
// copyright information
|
||||
pixPaint.setFont(QFont(font, 8 * fontFactor));
|
||||
|
||||
// draw additional text if special network
|
||||
if(!titleAddText.isEmpty()) {
|
||||
QFont boldFont = QFont(font, 10*fontFactor);
|
||||
if (!titleAddText.isEmpty()) {
|
||||
QFont boldFont = QFont(font, 10 * fontFactor);
|
||||
boldFont.setWeight(QFont::Bold);
|
||||
pixPaint.setFont(boldFont);
|
||||
fm = pixPaint.fontMetrics();
|
||||
int titleAddTextWidth = fm.width(titleAddText);
|
||||
pixPaint.drawText(pixmap.width()/devicePixelRatio-titleAddTextWidth-10,15,titleAddText);
|
||||
QFontMetrics fm = pixPaint.fontMetrics();
|
||||
int titleAddTextWidth = fm.width(titleAddText);
|
||||
pixPaint.drawText(pixmap.width() - titleAddTextWidth - 10, pixmap.height() - 25, titleAddText);
|
||||
}
|
||||
|
||||
pixPaint.end();
|
||||
|
||||
// Set window title
|
||||
setWindowTitle(titleText + " " + titleAddText);
|
||||
|
||||
// Resize window and move to center of desktop, disallow resizing
|
||||
QRect r(QPoint(), QSize(pixmap.size().width()/devicePixelRatio,pixmap.size().height()/devicePixelRatio));
|
||||
resize(r.size());
|
||||
|
||||
Reference in New Issue
Block a user