mirror of
https://github.com/dashpay/dash.git
synced 2024-12-27 13:03:17 +01:00
Merge pull request #3784
dc01ba7
Fix coin control sorts date as text (Cozz Lovan)
This commit is contained in:
commit
c975e99ca9
@ -125,6 +125,7 @@ CoinControlDialog::CoinControlDialog(QWidget *parent) :
|
|||||||
ui->treeWidget->setColumnHidden(COLUMN_VOUT_INDEX, true); // store vout index in this column, but dont show it
|
ui->treeWidget->setColumnHidden(COLUMN_VOUT_INDEX, true); // store vout index in this column, but dont show it
|
||||||
ui->treeWidget->setColumnHidden(COLUMN_AMOUNT_INT64, true); // store amount int64 in this column, but dont show it
|
ui->treeWidget->setColumnHidden(COLUMN_AMOUNT_INT64, true); // store amount int64 in this column, but dont show it
|
||||||
ui->treeWidget->setColumnHidden(COLUMN_PRIORITY_INT64, true); // store priority int64 in this column, but dont show it
|
ui->treeWidget->setColumnHidden(COLUMN_PRIORITY_INT64, true); // store priority int64 in this column, but dont show it
|
||||||
|
ui->treeWidget->setColumnHidden(COLUMN_DATE_INT64, true); // store date int64 in this column, but dont show it
|
||||||
|
|
||||||
// default view is sorted by amount desc
|
// default view is sorted by amount desc
|
||||||
sortView(COLUMN_AMOUNT_INT64, Qt::DescendingOrder);
|
sortView(COLUMN_AMOUNT_INT64, Qt::DescendingOrder);
|
||||||
@ -327,7 +328,7 @@ void CoinControlDialog::sortView(int column, Qt::SortOrder order)
|
|||||||
sortColumn = column;
|
sortColumn = column;
|
||||||
sortOrder = order;
|
sortOrder = order;
|
||||||
ui->treeWidget->sortItems(column, order);
|
ui->treeWidget->sortItems(column, order);
|
||||||
ui->treeWidget->header()->setSortIndicator((sortColumn == COLUMN_AMOUNT_INT64 ? COLUMN_AMOUNT : (sortColumn == COLUMN_PRIORITY_INT64 ? COLUMN_PRIORITY : sortColumn)), sortOrder);
|
ui->treeWidget->header()->setSortIndicator(getMappedColumn(sortColumn), sortOrder);
|
||||||
}
|
}
|
||||||
|
|
||||||
// treeview: clicked on header
|
// treeview: clicked on header
|
||||||
@ -335,22 +336,18 @@ void CoinControlDialog::headerSectionClicked(int logicalIndex)
|
|||||||
{
|
{
|
||||||
if (logicalIndex == COLUMN_CHECKBOX) // click on most left column -> do nothing
|
if (logicalIndex == COLUMN_CHECKBOX) // click on most left column -> do nothing
|
||||||
{
|
{
|
||||||
ui->treeWidget->header()->setSortIndicator((sortColumn == COLUMN_AMOUNT_INT64 ? COLUMN_AMOUNT : (sortColumn == COLUMN_PRIORITY_INT64 ? COLUMN_PRIORITY : sortColumn)), sortOrder);
|
ui->treeWidget->header()->setSortIndicator(getMappedColumn(sortColumn), sortOrder);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (logicalIndex == COLUMN_AMOUNT) // sort by amount
|
logicalIndex = getMappedColumn(logicalIndex, false);
|
||||||
logicalIndex = COLUMN_AMOUNT_INT64;
|
|
||||||
|
|
||||||
if (logicalIndex == COLUMN_PRIORITY) // sort by priority
|
|
||||||
logicalIndex = COLUMN_PRIORITY_INT64;
|
|
||||||
|
|
||||||
if (sortColumn == logicalIndex)
|
if (sortColumn == logicalIndex)
|
||||||
sortOrder = ((sortOrder == Qt::AscendingOrder) ? Qt::DescendingOrder : Qt::AscendingOrder);
|
sortOrder = ((sortOrder == Qt::AscendingOrder) ? Qt::DescendingOrder : Qt::AscendingOrder);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
sortColumn = logicalIndex;
|
sortColumn = logicalIndex;
|
||||||
sortOrder = ((sortColumn == COLUMN_AMOUNT_INT64 || sortColumn == COLUMN_PRIORITY_INT64 || sortColumn == COLUMN_DATE || sortColumn == COLUMN_CONFIRMATIONS) ? Qt::DescendingOrder : Qt::AscendingOrder); // if amount,date,conf,priority then default => desc, else default => asc
|
sortOrder = ((sortColumn == COLUMN_LABEL || sortColumn == COLUMN_ADDRESS) ? Qt::AscendingOrder : Qt::DescendingOrder); // if label or address then default => asc, else default => desc
|
||||||
}
|
}
|
||||||
|
|
||||||
sortView(sortColumn, sortOrder);
|
sortView(sortColumn, sortOrder);
|
||||||
@ -731,6 +728,7 @@ void CoinControlDialog::updateView()
|
|||||||
|
|
||||||
// date
|
// date
|
||||||
itemOutput->setText(COLUMN_DATE, GUIUtil::dateTimeStr(out.tx->GetTxTime()));
|
itemOutput->setText(COLUMN_DATE, GUIUtil::dateTimeStr(out.tx->GetTxTime()));
|
||||||
|
itemOutput->setText(COLUMN_DATE_INT64, strPad(QString::number(out.tx->GetTxTime()), 20, " "));
|
||||||
|
|
||||||
// confirmations
|
// confirmations
|
||||||
itemOutput->setText(COLUMN_CONFIRMATIONS, strPad(QString::number(out.nDepth), 8, " "));
|
itemOutput->setText(COLUMN_CONFIRMATIONS, strPad(QString::number(out.nDepth), 8, " "));
|
||||||
|
@ -65,9 +65,35 @@ private:
|
|||||||
COLUMN_TXHASH,
|
COLUMN_TXHASH,
|
||||||
COLUMN_VOUT_INDEX,
|
COLUMN_VOUT_INDEX,
|
||||||
COLUMN_AMOUNT_INT64,
|
COLUMN_AMOUNT_INT64,
|
||||||
COLUMN_PRIORITY_INT64
|
COLUMN_PRIORITY_INT64,
|
||||||
|
COLUMN_DATE_INT64
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// some columns have a hidden column containing the value used for sorting
|
||||||
|
int getMappedColumn(int column, bool fVisibleColumn = true)
|
||||||
|
{
|
||||||
|
if (fVisibleColumn)
|
||||||
|
{
|
||||||
|
if (column == COLUMN_AMOUNT_INT64)
|
||||||
|
return COLUMN_AMOUNT;
|
||||||
|
else if (column == COLUMN_PRIORITY_INT64)
|
||||||
|
return COLUMN_PRIORITY;
|
||||||
|
else if (column == COLUMN_DATE_INT64)
|
||||||
|
return COLUMN_DATE;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (column == COLUMN_AMOUNT)
|
||||||
|
return COLUMN_AMOUNT_INT64;
|
||||||
|
else if (column == COLUMN_PRIORITY)
|
||||||
|
return COLUMN_PRIORITY_INT64;
|
||||||
|
else if (column == COLUMN_DATE)
|
||||||
|
return COLUMN_DATE_INT64;
|
||||||
|
}
|
||||||
|
|
||||||
|
return column;
|
||||||
|
}
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void showMenu(const QPoint &);
|
void showMenu(const QPoint &);
|
||||||
void copyAmount();
|
void copyAmount();
|
||||||
|
@ -428,7 +428,7 @@
|
|||||||
<bool>false</bool>
|
<bool>false</bool>
|
||||||
</property>
|
</property>
|
||||||
<property name="columnCount">
|
<property name="columnCount">
|
||||||
<number>11</number>
|
<number>12</number>
|
||||||
</property>
|
</property>
|
||||||
<attribute name="headerShowSortIndicator" stdset="0">
|
<attribute name="headerShowSortIndicator" stdset="0">
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
@ -494,6 +494,11 @@
|
|||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</column>
|
</column>
|
||||||
|
<column>
|
||||||
|
<property name="text">
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
</column>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
|
Loading…
Reference in New Issue
Block a user