From: fsb4000 Date: Sun, 4 Jan 2015 14:07:17 +0000 (+0600) Subject: показывать 3-й ноль для комиссии в выборе входов X-Git-Tag: nvc-v0.5.1~30^2 X-Git-Url: https://git.novaco.in/?p=novacoin.git;a=commitdiff_plain;h=b589f0d7ab3093b5c25ad208197040931576f0d2 показывать 3-й ноль для комиссии в выборе входов http://i58.tinypic.com/301zqf6.jpg http://i58.tinypic.com/igww8k.jpg --- diff --git a/src/qt/bitcoinunits.cpp b/src/qt/bitcoinunits.cpp index 496c9f7..216078a 100644 --- a/src/qt/bitcoinunits.cpp +++ b/src/qt/bitcoinunits.cpp @@ -85,7 +85,7 @@ int BitcoinUnits::decimals(int unit) } } -QString BitcoinUnits::format(int unit, qint64 n, bool fPlus) +QString BitcoinUnits::format(int unit, qint64 n, bool fPlus, uint8_t nNumberOfZeros) { // Note: not using straight sprintf here because we do NOT want // localized number formatting. @@ -101,7 +101,7 @@ QString BitcoinUnits::format(int unit, qint64 n, bool fPlus) // Right-trim excess zeros after the decimal point int nTrim = 0; - for (int i = remainder_str.size()-1; i>=2 && (remainder_str.at(i) == '0'); --i) + for (int i = remainder_str.size()-1; i>=nNumberOfZeros && (remainder_str.at(i) == '0'); --i) ++nTrim; remainder_str.chop(nTrim); @@ -112,9 +112,9 @@ QString BitcoinUnits::format(int unit, qint64 n, bool fPlus) return quotient_str + QString(".") + remainder_str; } -QString BitcoinUnits::formatWithUnit(int unit, qint64 amount, bool plussign) +QString BitcoinUnits::formatWithUnit(int unit, qint64 amount, bool plussign, uint8_t nNumberOfZeros) { - return format(unit, amount, plussign) + QString(" ") + name(unit); + return format(unit, amount, plussign, nNumberOfZeros) + QString(" ") + name(unit); } bool BitcoinUnits::parse(int unit, const QString &value, qint64 *val_out) diff --git a/src/qt/bitcoinunits.h b/src/qt/bitcoinunits.h index 5ac3d47..5ed0c64 100644 --- a/src/qt/bitcoinunits.h +++ b/src/qt/bitcoinunits.h @@ -4,6 +4,7 @@ #include #include +#include /** Bitcoin unit definitions. Encapsulates parsing and formatting and serves as list model for drop-down selection boxes. */ @@ -41,9 +42,9 @@ public: //! Number of decimals left static int decimals(int unit); //! Format as string - static QString format(int unit, qint64 amount, bool plussign=false); + static QString format(int unit, qint64 amount, bool plussign=false, uint8_t nNumberOfZeros=2); //! Format as string (with unit) - static QString formatWithUnit(int unit, qint64 amount, bool plussign=false); + static QString formatWithUnit(int unit, qint64 amount, bool plussign=false, uint8_t nNumberOfZeros=2); //! Parse string to coin amount static bool parse(int unit, const QString &value, qint64 *val_out); //! Gets title for amount column including current display unit if optionsModel reference available */ diff --git a/src/qt/coincontroldialog.cpp b/src/qt/coincontroldialog.cpp index 9df1b0d..fc50c95 100644 --- a/src/qt/coincontroldialog.cpp +++ b/src/qt/coincontroldialog.cpp @@ -561,14 +561,14 @@ void CoinControlDialog::updateLabels(WalletModel *model, QDialog* dialog) dialog->findChild("labelCoinControlChange") ->setEnabled(nPayAmount > 0); // stats - l1->setText(QString::number(nQuantity)); // Quantity - l2->setText(BitcoinUnits::formatWithUnit(nDisplayUnit, nAmount)); // Amount - l3->setText(BitcoinUnits::formatWithUnit(nDisplayUnit, nPayFee)); // Fee - l4->setText(BitcoinUnits::formatWithUnit(nDisplayUnit, nAfterFee)); // After Fee - l5->setText(((nBytes > 0) ? "~" : "") + QString::number(nBytes)); // Bytes - l6->setText(sPriorityLabel); // Priority - l7->setText((fLowOutput ? (fDust ? tr("DUST") : tr("yes")) : tr("no"))); // Low Output / Dust - l8->setText(BitcoinUnits::formatWithUnit(nDisplayUnit, nChange)); // Change + l1->setText(QString::number(nQuantity)); // Quantity + l2->setText(BitcoinUnits::formatWithUnit(nDisplayUnit, nAmount)); // Amount + l3->setText(BitcoinUnits::formatWithUnit(nDisplayUnit, nPayFee, false, 3)); // Fee + l4->setText(BitcoinUnits::formatWithUnit(nDisplayUnit, nAfterFee)); // After Fee + l5->setText(((nBytes > 0) ? "~" : "") + QString::number(nBytes)); // Bytes + l6->setText(sPriorityLabel); // Priority + l7->setText((fLowOutput ? (fDust ? tr("DUST") : tr("yes")) : tr("no"))); // Low Output / Dust + l8->setText(BitcoinUnits::formatWithUnit(nDisplayUnit, nChange)); // Change // turn labels "red" l5->setStyleSheet((nBytes >= 1000) ? "color:red;" : ""); // Bytes >= 1000