From 604914c15e3629b946872a82f05f5686dc2eae22 Mon Sep 17 00:00:00 2001 From: crowning- Date: Sun, 12 Jul 2015 18:00:48 +0200 Subject: [PATCH 1/4] De-selecting all transactions resets computed sum to 0 now. --- src/qt/transactionview.cpp | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/qt/transactionview.cpp b/src/qt/transactionview.cpp index bbd37940f..11b70c4fa 100644 --- a/src/qt/transactionview.cpp +++ b/src/qt/transactionview.cpp @@ -472,14 +472,12 @@ void TransactionView::computeSum() return; QModelIndexList selection = transactionView->selectionModel()->selectedRows(); - if(!selection.isEmpty()){ - foreach (QModelIndex index, selection){ - amount += index.data(TransactionTableModel::AmountRole).toLongLong(); - } - QString strAmount(BitcoinUnits::formatWithUnit(nDisplayUnit, amount, true, BitcoinUnits::separatorAlways)); - if (amount < 0) strAmount = "" + strAmount + ""; - emit trxAmount(strAmount); + foreach (QModelIndex index, selection){ + amount += index.data(TransactionTableModel::AmountRole).toLongLong(); } + QString strAmount(BitcoinUnits::formatWithUnit(nDisplayUnit, amount, true, BitcoinUnits::separatorAlways)); + if (amount < 0) strAmount = "" + strAmount + ""; + emit trxAmount(strAmount); } void TransactionView::openThirdPartyTxUrl(QString url) From e7b00b8b7e76217beac07f640c77a670428a4890 Mon Sep 17 00:00:00 2001 From: UdjinM6 Date: Sun, 12 Jul 2015 19:18:03 +0300 Subject: [PATCH 2/4] calculate ds progress from 3 parts --- src/qt/overviewpage.cpp | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/src/qt/overviewpage.cpp b/src/qt/overviewpage.cpp index e1cbe9b5d..6fdc4be49 100644 --- a/src/qt/overviewpage.cpp +++ b/src/qt/overviewpage.cpp @@ -359,26 +359,31 @@ void OverviewPage::updateDarksendProgress() // progress of denominating float denomPart = 0; // mixing progress of denominated balance - float anonPart = 0; + float anonNormPart = 0; + // completeness of full amount anonimization + float anonFullPart = 0; int64_t denominatedBalance = pwalletMain->GetDenominatedBalance() + nDenominatedUnconfirmedBalance; denomPart = (float)denominatedBalance / nMaxToAnonymize; denomPart = denomPart > 1 ? 1 : denomPart; - anonPart = (float)pwalletMain->GetNormalizedAnonymizedBalance() / nMaxToAnonymize; - // if anonPart is > 1 then we are done, make denomPart equal 1 too - anonPart = anonPart > 1 ? (denomPart = 1, 1) : anonPart; + anonNormPart = (float)pwalletMain->GetNormalizedAnonymizedBalance() / nMaxToAnonymize; + anonNormPart = anonNormPart > 1 ? 1 : anonNormPart; + + anonFullPart = (float)pwalletMain->GetAnonymizedBalance() / nMaxToAnonymize; + anonFullPart = anonFullPart > 1 ? 1 : anonFullPart; // apply some weights to them (sum should be <=100) and calculate the whole progress denomPart = ceilf((denomPart * 20) * 100) / 100; - anonPart = ceilf((anonPart * 80) * 100) / 100; - float progress = denomPart + anonPart; + anonNormPart = ceilf((anonNormPart * 50) * 100) / 100; + anonFullPart = ceilf((anonFullPart * 30) * 100) / 100; + float progress = denomPart + anonNormPart + anonFullPart; if(progress >= 100) progress = 100; ui->darksendProgress->setValue(progress); - QString strToolPip = tr("Progress: %1% (%2% + %3%; denominated inputs have %4 of %n rounds on average)", "", nDarksendRounds) - .arg(progress).arg(denomPart).arg(anonPart).arg(pwalletMain->GetAverageAnonymizedRounds()); + QString strToolPip = tr("Progress: %1% (%2% + %3% + %4%; denominated inputs have %5 of %n rounds on average)", "", nDarksendRounds) + .arg(progress).arg(denomPart).arg(anonNormPart).arg(anonFullPart).arg(pwalletMain->GetAverageAnonymizedRounds()); ui->darksendProgress->setToolTip(strToolPip); } From 3f19365d2a559b30b607436ad2c5e6d7198ff343 Mon Sep 17 00:00:00 2001 From: crowning- Date: Sun, 12 Jul 2015 20:04:52 +0200 Subject: [PATCH 3/4] Minor Coincontrol-Dialog enhancements --- src/qt/coincontroldialog.cpp | 8 +++++--- src/qt/forms/coincontroldialog.ui | 6 +++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/qt/coincontroldialog.cpp b/src/qt/coincontroldialog.cpp index df357b22e..ad6b3c7fd 100644 --- a/src/qt/coincontroldialog.cpp +++ b/src/qt/coincontroldialog.cpp @@ -129,7 +129,7 @@ CoinControlDialog::CoinControlDialog(QWidget *parent) : ui->treeWidget->setColumnWidth(COLUMN_AMOUNT, 100); ui->treeWidget->setColumnWidth(COLUMN_LABEL, 170); ui->treeWidget->setColumnWidth(COLUMN_ADDRESS, 190); - ui->treeWidget->setColumnWidth(COLUMN_DARKSEND_ROUNDS, 120); + ui->treeWidget->setColumnWidth(COLUMN_DARKSEND_ROUNDS, 88); ui->treeWidget->setColumnWidth(COLUMN_DATE, 80); ui->treeWidget->setColumnWidth(COLUMN_CONFIRMATIONS, 100); ui->treeWidget->setColumnWidth(COLUMN_PRIORITY, 100); @@ -778,6 +778,7 @@ void CoinControlDialog::updateView() // amount itemOutput->setText(COLUMN_AMOUNT, BitcoinUnits::format(nDisplayUnit, out.tx->vout[out.i].nValue)); + itemOutput->setToolTip(COLUMN_AMOUNT, BitcoinUnits::format(nDisplayUnit, out.tx->vout[out.i].nValue)); itemOutput->setText(COLUMN_AMOUNT_INT64, strPad(QString::number(out.tx->vout[out.i].nValue), 15, " ")); // padding so that sorting works correctly // date @@ -790,8 +791,8 @@ void CoinControlDialog::updateView() CTxIn vin = CTxIn(out.tx->GetHash(), out.i); int rounds = GetInputDarksendRounds(vin); - if(rounds >= 0) itemOutput->setText(COLUMN_DARKSEND_ROUNDS, strPad(QString::number(rounds), 15, " ")); - else itemOutput->setText(COLUMN_DARKSEND_ROUNDS, strPad(QString(tr("n/a")), 15, " ")); + if(rounds >= 0) itemOutput->setText(COLUMN_DARKSEND_ROUNDS, strPad(QString::number(rounds), 11, " ")); + else itemOutput->setText(COLUMN_DARKSEND_ROUNDS, strPad(QString(tr("n/a")), 11, " ")); // confirmations @@ -831,6 +832,7 @@ void CoinControlDialog::updateView() dPrioritySum = dPrioritySum / (nInputSum + 78); itemWalletAddress->setText(COLUMN_CHECKBOX, "(" + QString::number(nChildren) + ")"); itemWalletAddress->setText(COLUMN_AMOUNT, BitcoinUnits::format(nDisplayUnit, nSum)); + itemWalletAddress->setToolTip(COLUMN_AMOUNT, BitcoinUnits::format(nDisplayUnit, nSum)); itemWalletAddress->setText(COLUMN_AMOUNT_INT64, strPad(QString::number(nSum), 15, " ")); itemWalletAddress->setText(COLUMN_PRIORITY, CoinControlDialog::getPriorityLabel(dPrioritySum, mempoolEstimatePriority)); itemWalletAddress->setText(COLUMN_PRIORITY_INT64, strPad(QString::number((int64_t)dPrioritySum), 20, " ")); diff --git a/src/qt/forms/coincontroldialog.ui b/src/qt/forms/coincontroldialog.ui index 90a0cffe7..c78a2d20a 100644 --- a/src/qt/forms/coincontroldialog.ui +++ b/src/qt/forms/coincontroldialog.ui @@ -6,7 +6,7 @@ 0 0 - 1000 + 954 500 @@ -431,7 +431,7 @@ false - 12 + 13 true @@ -461,7 +461,7 @@ - Darksend Rounds + DS Rounds From 9b170483b721952b8e904ff5531dcd403f8970fb Mon Sep 17 00:00:00 2001 From: crowning- Date: Sun, 12 Jul 2015 20:23:38 +0200 Subject: [PATCH 4/4] Minor Options-Dialog enhancements --- src/qt/forms/optionsdialog.ui | 2 +- src/qt/forms/rpcconsole.ui | 0 2 files changed, 1 insertion(+), 1 deletion(-) mode change 100755 => 100644 src/qt/forms/optionsdialog.ui mode change 100755 => 100644 src/qt/forms/rpcconsole.ui diff --git a/src/qt/forms/optionsdialog.ui b/src/qt/forms/optionsdialog.ui old mode 100755 new mode 100644 index 02cdb1c02..fd0115762 --- a/src/qt/forms/optionsdialog.ui +++ b/src/qt/forms/optionsdialog.ui @@ -225,7 +225,7 @@ - If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + <html><head/><body><p>If you disable the spending of unconfirmed change, the change from a transaction</p><p>cannot be used until that transaction has at least one confirmation.</p><p>This also affects how your balance is computed.</p></body></html> &Spend unconfirmed change diff --git a/src/qt/forms/rpcconsole.ui b/src/qt/forms/rpcconsole.ui old mode 100755 new mode 100644