Changeset View
Changeset View
Standalone View
Standalone View
src/qt/coincontroldialog.cpp
Show All 32 Lines | |||||
QList<Amount> CoinControlDialog::payAmounts; | QList<Amount> CoinControlDialog::payAmounts; | ||||
bool CoinControlDialog::fSubtractFeeFromAmount = false; | bool CoinControlDialog::fSubtractFeeFromAmount = false; | ||||
bool CCoinControlWidgetItem::operator<(const QTreeWidgetItem &other) const { | bool CCoinControlWidgetItem::operator<(const QTreeWidgetItem &other) const { | ||||
int column = treeWidget()->sortColumn(); | int column = treeWidget()->sortColumn(); | ||||
if (column == CoinControlDialog::COLUMN_AMOUNT || | if (column == CoinControlDialog::COLUMN_AMOUNT || | ||||
column == CoinControlDialog::COLUMN_DATE || | column == CoinControlDialog::COLUMN_DATE || | ||||
column == CoinControlDialog::COLUMN_CONFIRMATIONS) | column == CoinControlDialog::COLUMN_CONFIRMATIONS) { | ||||
return data(column, Qt::UserRole).toLongLong() < | return data(column, Qt::UserRole).toLongLong() < | ||||
other.data(column, Qt::UserRole).toLongLong(); | other.data(column, Qt::UserRole).toLongLong(); | ||||
} | |||||
return QTreeWidgetItem::operator<(other); | return QTreeWidgetItem::operator<(other); | ||||
} | } | ||||
CoinControlDialog::CoinControlDialog(const PlatformStyle *_platformStyle, | CoinControlDialog::CoinControlDialog(const PlatformStyle *_platformStyle, | ||||
QWidget *parent) | QWidget *parent) | ||||
: QDialog(parent), ui(new Ui::CoinControlDialog), model(0), | : QDialog(parent), ui(new Ui::CoinControlDialog), model(0), | ||||
platformStyle(_platformStyle) { | platformStyle(_platformStyle) { | ||||
ui->setupUi(this); | ui->setupUi(this); | ||||
▲ Show 20 Lines • Show All 101 Lines • ▼ Show 20 Lines | CoinControlDialog::CoinControlDialog(const PlatformStyle *_platformStyle, | ||||
ui->treeWidget->setColumnHidden(COLUMN_VOUT_INDEX, true); | ui->treeWidget->setColumnHidden(COLUMN_VOUT_INDEX, true); | ||||
// default view is sorted by amount desc | // default view is sorted by amount desc | ||||
sortView(COLUMN_AMOUNT, Qt::DescendingOrder); | sortView(COLUMN_AMOUNT, Qt::DescendingOrder); | ||||
// restore list mode and sortorder as a convenience feature | // restore list mode and sortorder as a convenience feature | ||||
QSettings settings; | QSettings settings; | ||||
if (settings.contains("nCoinControlMode") && | if (settings.contains("nCoinControlMode") && | ||||
!settings.value("nCoinControlMode").toBool()) | !settings.value("nCoinControlMode").toBool()) { | ||||
ui->radioTreeMode->click(); | ui->radioTreeMode->click(); | ||||
} | |||||
if (settings.contains("nCoinControlSortColumn") && | if (settings.contains("nCoinControlSortColumn") && | ||||
settings.contains("nCoinControlSortOrder")) | settings.contains("nCoinControlSortOrder")) { | ||||
sortView(settings.value("nCoinControlSortColumn").toInt(), | sortView(settings.value("nCoinControlSortColumn").toInt(), | ||||
(static_cast<Qt::SortOrder>( | (static_cast<Qt::SortOrder>( | ||||
settings.value("nCoinControlSortOrder").toInt()))); | settings.value("nCoinControlSortOrder").toInt()))); | ||||
} | } | ||||
} | |||||
CoinControlDialog::~CoinControlDialog() { | CoinControlDialog::~CoinControlDialog() { | ||||
QSettings settings; | QSettings settings; | ||||
settings.setValue("nCoinControlMode", ui->radioListMode->isChecked()); | settings.setValue("nCoinControlMode", ui->radioListMode->isChecked()); | ||||
settings.setValue("nCoinControlSortColumn", sortColumn); | settings.setValue("nCoinControlSortColumn", sortColumn); | ||||
settings.setValue("nCoinControlSortOrder", (int)sortOrder); | settings.setValue("nCoinControlSortOrder", (int)sortOrder); | ||||
delete ui; | delete ui; | ||||
Show All 23 Lines | void CoinControlDialog::buttonSelectAllClicked() { | ||||
for (int i = 0; i < ui->treeWidget->topLevelItemCount(); i++) { | for (int i = 0; i < ui->treeWidget->topLevelItemCount(); i++) { | ||||
if (ui->treeWidget->topLevelItem(i)->checkState(COLUMN_CHECKBOX) != | if (ui->treeWidget->topLevelItem(i)->checkState(COLUMN_CHECKBOX) != | ||||
Qt::Unchecked) { | Qt::Unchecked) { | ||||
state = Qt::Unchecked; | state = Qt::Unchecked; | ||||
break; | break; | ||||
} | } | ||||
} | } | ||||
ui->treeWidget->setEnabled(false); | ui->treeWidget->setEnabled(false); | ||||
for (int i = 0; i < ui->treeWidget->topLevelItemCount(); i++) | for (int i = 0; i < ui->treeWidget->topLevelItemCount(); i++) { | ||||
if (ui->treeWidget->topLevelItem(i)->checkState(COLUMN_CHECKBOX) != | if (ui->treeWidget->topLevelItem(i)->checkState(COLUMN_CHECKBOX) != | ||||
state) { | state) { | ||||
ui->treeWidget->topLevelItem(i)->setCheckState(COLUMN_CHECKBOX, | ui->treeWidget->topLevelItem(i)->setCheckState(COLUMN_CHECKBOX, | ||||
state); | state); | ||||
} | } | ||||
} | |||||
ui->treeWidget->setEnabled(true); | ui->treeWidget->setEnabled(true); | ||||
if (state == Qt::Unchecked) { | if (state == Qt::Unchecked) { | ||||
// just to be sure | // just to be sure | ||||
coinControl()->UnSelectAll(); | coinControl()->UnSelectAll(); | ||||
} | } | ||||
CoinControlDialog::updateLabels(model, this); | CoinControlDialog::updateLabels(model, this); | ||||
} | } | ||||
▲ Show 20 Lines • Show All 592 Lines • ▼ Show 20 Lines | for (const auto &coins : model->wallet().listCoins()) { | ||||
QVariant(qlonglong(nSum / SATOSHI))); | QVariant(qlonglong(nSum / SATOSHI))); | ||||
} | } | ||||
} | } | ||||
// expand all partially selected | // expand all partially selected | ||||
if (treeMode) { | if (treeMode) { | ||||
for (int i = 0; i < ui->treeWidget->topLevelItemCount(); i++) { | for (int i = 0; i < ui->treeWidget->topLevelItemCount(); i++) { | ||||
if (ui->treeWidget->topLevelItem(i)->checkState(COLUMN_CHECKBOX) == | if (ui->treeWidget->topLevelItem(i)->checkState(COLUMN_CHECKBOX) == | ||||
Qt::PartiallyChecked) | Qt::PartiallyChecked) { | ||||
ui->treeWidget->topLevelItem(i)->setExpanded(true); | ui->treeWidget->topLevelItem(i)->setExpanded(true); | ||||
} | } | ||||
} | } | ||||
} | |||||
// sort view | // sort view | ||||
sortView(sortColumn, sortOrder); | sortView(sortColumn, sortOrder); | ||||
ui->treeWidget->setEnabled(true); | ui->treeWidget->setEnabled(true); | ||||
} | } |