Browse Source

Use enum for column numbers in txtablemodel for better clarity. (#172)

import_zecw
Tom Bradshaw (presstab) 5 years ago
committed by adityapk00
parent
commit
9b6995aa5e
  1. 26
      src/txtablemodel.cpp
  2. 9
      src/txtablemodel.h

26
src/txtablemodel.cpp

@ -104,9 +104,9 @@ void TxTableModel::updateAllData() {
QVariant TxTableModel::data(const QModelIndex &index, int role) const QVariant TxTableModel::data(const QModelIndex &index, int role) const
{ {
// Align column 4,5 (confirmations, amount) right // Align numeric columns (confirmations, amount) right
if (role == Qt::TextAlignmentRole && if (role == Qt::TextAlignmentRole &&
(index.column() == 3 || index.column() == 4)) (index.column() == Column::Confirmations || index.column() == Column::Amount))
return QVariant(Qt::AlignRight | Qt::AlignVCenter); return QVariant(Qt::AlignRight | Qt::AlignVCenter);
auto dat = modeldata->at(index.row()); auto dat = modeldata->at(index.row());
@ -125,23 +125,23 @@ void TxTableModel::updateAllData() {
if (role == Qt::DisplayRole) { if (role == Qt::DisplayRole) {
switch (index.column()) { switch (index.column()) {
case 0: return dat.type; case Column::Type: return dat.type;
case 1: { case Column::Address: {
auto addr = dat.address; auto addr = dat.address;
if (addr.trimmed().isEmpty()) if (addr.trimmed().isEmpty())
return "(Shielded)"; return "(Shielded)";
else else
return addr; return addr;
} }
case 2: return QDateTime::fromMSecsSinceEpoch(dat.datetime * (qint64)1000).toLocalTime().toString(); case Column::Time: return QDateTime::fromMSecsSinceEpoch(dat.datetime * (qint64)1000).toLocalTime().toString();
case 3: return QString::number(dat.confirmations); case Column::Confirmations: return QString::number(dat.confirmations);
case 4: return Settings::getZECDisplayFormat(dat.amount); case Column::Amount: return Settings::getZECDisplayFormat(dat.amount);
} }
} }
if (role == Qt::ToolTipRole) { if (role == Qt::ToolTipRole) {
switch (index.column()) { switch (index.column()) {
case 0: { case Column::Type: {
if (dat.memo.startsWith("zcash:")) { if (dat.memo.startsWith("zcash:")) {
return Settings::paymentURIPretty(Settings::parseURI(dat.memo)); return Settings::paymentURIPretty(Settings::parseURI(dat.memo));
} else { } else {
@ -149,16 +149,16 @@ void TxTableModel::updateAllData() {
(dat.memo.isEmpty() ? "" : " tx memo: \"" + dat.memo + "\""); (dat.memo.isEmpty() ? "" : " tx memo: \"" + dat.memo + "\"");
} }
} }
case 1: { case Column::Address: {
auto addr = modeldata->at(index.row()).address; auto addr = modeldata->at(index.row()).address;
if (addr.trimmed().isEmpty()) if (addr.trimmed().isEmpty())
return "(Shielded)"; return "(Shielded)";
else else
return addr; return addr;
} }
case 2: return QDateTime::fromMSecsSinceEpoch(modeldata->at(index.row()).datetime * (qint64)1000).toLocalTime().toString(); case Column::Time: return QDateTime::fromMSecsSinceEpoch(modeldata->at(index.row()).datetime * (qint64)1000).toLocalTime().toString();
case 3: return QString("%1 Network Confirmations").arg(QString::number(dat.confirmations)); case Column::Confirmations: return QString("%1 Network Confirmations").arg(QString::number(dat.confirmations));
case 4: return Settings::getInstance()->getUSDFromZecAmount(modeldata->at(index.row()).amount); case Column::Amount: return Settings::getInstance()->getUSDFromZecAmount(modeldata->at(index.row()).amount);
} }
} }
@ -187,7 +187,7 @@ void TxTableModel::updateAllData() {
QVariant TxTableModel::headerData(int section, Qt::Orientation orientation, int role) const QVariant TxTableModel::headerData(int section, Qt::Orientation orientation, int role) const
{ {
if (role == Qt::TextAlignmentRole && (section == 3 || section == 4)) if (role == Qt::TextAlignmentRole && (section == Column::Confirmations || section == Column::Amount))
return QVariant(Qt::AlignRight | Qt::AlignVCenter); return QVariant(Qt::AlignRight | Qt::AlignVCenter);
if (role == Qt::FontRole) { if (role == Qt::FontRole) {

9
src/txtablemodel.h

@ -11,6 +11,15 @@ public:
TxTableModel(QObject* parent); TxTableModel(QObject* parent);
~TxTableModel(); ~TxTableModel();
enum Column
{
Type = 0,
Address = 1,
Time = 2,
Confirmations = 3,
Amount = 4
};
void addTData (const QList<TransactionItem>& data); void addTData (const QList<TransactionItem>& data);
void addZSentData(const QList<TransactionItem>& data); void addZSentData(const QList<TransactionItem>& data);
void addZRecvData(const QList<TransactionItem>& data); void addZRecvData(const QList<TransactionItem>& data);

Loading…
Cancel
Save