diff --git a/src/rpc.cpp b/src/rpc.cpp index c72afcb..5a79623 100644 --- a/src/rpc.cpp +++ b/src/rpc.cpp @@ -506,7 +506,7 @@ void RPC::refreshReceivedZTrans(QList zaddrs) { } auto amount = i["amount"].get(); - auto confirmations = (unsigned long)txidInfo["confirmations"].get(); + auto confirmations = static_cast(txidInfo["confirmations"].get()); TransactionItem tx{ QString("receive"), timestamp, zaddr, txid, amount, confirmations, "", memos.value(zaddr + txid, "") }; @@ -879,7 +879,7 @@ void RPC::refreshTransactions() { address, QString::fromStdString(it["txid"]), it["amount"].get() + fee, - (unsigned long)it["confirmations"].get(), + static_cast(it["confirmations"].get()), "", "" }; txdata.push_back(tx); @@ -936,7 +936,7 @@ void RPC::refreshSentZTrans() { continue; auto error = j["confirmations"].is_null(); if (!error) - sentTx.confirmations = j["confirmations"].get(); + sentTx.confirmations = j["confirmations"].get(); } transactionsTableModel->addZSentData(newSentZTxs); diff --git a/src/rpc.h b/src/rpc.h index bd8bd11..654d224 100644 --- a/src/rpc.h +++ b/src/rpc.h @@ -19,7 +19,7 @@ struct TransactionItem { QString address; QString txid; double amount; - unsigned long confirmations; + long confirmations; QString fromAddr; QString memo; }; diff --git a/src/txtablemodel.cpp b/src/txtablemodel.cpp index 7078023..50aa464 100644 --- a/src/txtablemodel.cpp +++ b/src/txtablemodel.cpp @@ -4,7 +4,7 @@ TxTableModel::TxTableModel(QObject *parent) : QAbstractTableModel(parent) { - headers << QObject::tr("Type") << QObject::tr("Address") << QObject::tr("Date/Time") << QObject::tr("Amount"); + headers << QObject::tr("Type") << QObject::tr("Address") << QObject::tr("Date/Time") << QObject::tr("Confirmations") << QObject::tr("Amount"); } TxTableModel::~TxTableModel() { @@ -104,11 +104,12 @@ void TxTableModel::updateAllData() { QVariant TxTableModel::data(const QModelIndex &index, int role) const { - // Align column 4 (amount) right - if (role == Qt::TextAlignmentRole && index.column() == 3) return QVariant(Qt::AlignRight | Qt::AlignVCenter); - + // Align column 5 (amount) right + if (role == Qt::TextAlignmentRole && index.column() >= 3) return QVariant(Qt::AlignRight | Qt::AlignVCenter); + + auto dat = modeldata->at(index.row()); if (role == Qt::ForegroundRole) { - if (modeldata->at(index.row()).confirmations == 0) { + if (dat.confirmations <= 0) { QBrush b; b.setColor(Qt::red); return b; @@ -120,19 +121,19 @@ void TxTableModel::updateAllData() { return b; } - auto dat = modeldata->at(index.row()); if (role == Qt::DisplayRole) { switch (index.column()) { case 0: return dat.type; case 1: { - auto addr = modeldata->at(index.row()).address; + auto addr = dat.address; if (addr.trimmed().isEmpty()) return "(Shielded)"; else return addr; } - case 2: return QDateTime::fromMSecsSinceEpoch(modeldata->at(index.row()).datetime * (qint64)1000).toLocalTime().toString(); - case 3: return Settings::getZECDisplayFormat(modeldata->at(index.row()).amount); + case 2: return QDateTime::fromMSecsSinceEpoch(dat.datetime * (qint64)1000).toLocalTime().toString(); + case 3: return QString::number(dat.confirmations); + case 4: return Settings::getZECDisplayFormat(dat.amount); } } @@ -154,7 +155,8 @@ void TxTableModel::updateAllData() { return addr; } case 2: return QDateTime::fromMSecsSinceEpoch(modeldata->at(index.row()).datetime * (qint64)1000).toLocalTime().toString(); - case 3: return Settings::getInstance()->getUSDFromZecAmount(modeldata->at(index.row()).amount); + case 3: return QString("%1 Network Confirmations").arg(QString::number(dat.confirmations)); + case 4: return Settings::getInstance()->getUSDFromZecAmount(modeldata->at(index.row()).amount); } } @@ -183,7 +185,7 @@ void TxTableModel::updateAllData() { QVariant TxTableModel::headerData(int section, Qt::Orientation orientation, int role) const { - if (role == Qt::TextAlignmentRole && section == 3) return QVariant(Qt::AlignRight | Qt::AlignVCenter); + if (role == Qt::TextAlignmentRole && section == 4) return QVariant(Qt::AlignRight | Qt::AlignVCenter); if (role == Qt::FontRole) { QFont f; @@ -224,4 +226,4 @@ QString TxTableModel::getType(int row) const { QString TxTableModel::getAmt(int row) const { return Settings::getDecimalString(modeldata->at(row).amount); -} \ No newline at end of file +}