mirror of
https://github.com/dashpay/dash.git
synced 2024-12-24 19:42:46 +01:00
merge bitcoin-core/gui#166: Use enum type as switch argument in *TableModel
This commit is contained in:
parent
5a67b52725
commit
c33afea7fd
@ -195,42 +195,38 @@ QVariant AddressTableModel::data(const QModelIndex &index, int role) const
|
||||
|
||||
AddressTableEntry *rec = static_cast<AddressTableEntry*>(index.internalPointer());
|
||||
|
||||
if(role == Qt::DisplayRole || role == Qt::EditRole)
|
||||
{
|
||||
switch(index.column())
|
||||
{
|
||||
const auto column = static_cast<ColumnIndex>(index.column());
|
||||
if (role == Qt::DisplayRole || role == Qt::EditRole) {
|
||||
switch (column) {
|
||||
case Label:
|
||||
if(rec->label.isEmpty() && role == Qt::DisplayRole)
|
||||
{
|
||||
if (rec->label.isEmpty() && role == Qt::DisplayRole) {
|
||||
return tr("(no label)");
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
return rec->label;
|
||||
}
|
||||
case Address:
|
||||
return rec->address;
|
||||
}
|
||||
}
|
||||
else if (role == Qt::FontRole)
|
||||
{
|
||||
QFont font;
|
||||
if(index.column() == Address)
|
||||
{
|
||||
font = GUIUtil::getFontNormal();
|
||||
}
|
||||
return font;
|
||||
}
|
||||
else if (role == TypeRole)
|
||||
{
|
||||
} // no default case, so the compiler can warn about missing cases
|
||||
assert(false);
|
||||
} else if (role == Qt::FontRole) {
|
||||
switch (column) {
|
||||
case Label:
|
||||
return QFont();
|
||||
case Address:
|
||||
return GUIUtil::getFontNormal();
|
||||
} // no default case, so the compiler can warn about missing cases
|
||||
assert(false);
|
||||
} else if (role == TypeRole) {
|
||||
switch(rec->type)
|
||||
{
|
||||
case AddressTableEntry::Sending:
|
||||
return Send;
|
||||
case AddressTableEntry::Receiving:
|
||||
return Receive;
|
||||
default: break;
|
||||
}
|
||||
case AddressTableEntry::Hidden:
|
||||
return {};
|
||||
} // no default case, so the compiler can warn about missing cases
|
||||
assert(false);
|
||||
}
|
||||
return QVariant();
|
||||
}
|
||||
|
@ -23,15 +23,13 @@ bool BannedNodeLessThan::operator()(const CCombinedBan& left, const CCombinedBan
|
||||
if (order == Qt::DescendingOrder)
|
||||
std::swap(pLeft, pRight);
|
||||
|
||||
switch(column)
|
||||
{
|
||||
switch (static_cast<BanTableModel::ColumnIndex>(column)) {
|
||||
case BanTableModel::Address:
|
||||
return pLeft->subnet.ToString().compare(pRight->subnet.ToString()) < 0;
|
||||
case BanTableModel::Bantime:
|
||||
return pLeft->banEntry.nBanUntil < pRight->banEntry.nBanUntil;
|
||||
}
|
||||
|
||||
return false;
|
||||
} // no default case, so the compiler can warn about missing cases
|
||||
assert(false);
|
||||
}
|
||||
|
||||
// private implementation
|
||||
@ -119,16 +117,17 @@ QVariant BanTableModel::data(const QModelIndex &index, int role) const
|
||||
|
||||
CCombinedBan *rec = static_cast<CCombinedBan*>(index.internalPointer());
|
||||
|
||||
const auto column = static_cast<ColumnIndex>(index.column());
|
||||
if (role == Qt::DisplayRole) {
|
||||
switch(index.column())
|
||||
{
|
||||
switch (column) {
|
||||
case Address:
|
||||
return QString::fromStdString(rec->subnet.ToString());
|
||||
case Bantime:
|
||||
QDateTime date = QDateTime::fromMSecsSinceEpoch(0);
|
||||
date = date.addSecs(rec->banEntry.nBanUntil);
|
||||
return QLocale::system().toString(date, QLocale::LongFormat);
|
||||
}
|
||||
} // no default case, so the compiler can warn about missing cases
|
||||
assert(false);
|
||||
}
|
||||
|
||||
return QVariant();
|
||||
|
@ -23,8 +23,7 @@ bool NodeLessThan::operator()(const CNodeCombinedStats &left, const CNodeCombine
|
||||
if (order == Qt::DescendingOrder)
|
||||
std::swap(pLeft, pRight);
|
||||
|
||||
switch(column)
|
||||
{
|
||||
switch (static_cast<PeerTableModel::ColumnIndex>(column)) {
|
||||
case PeerTableModel::NetNodeId:
|
||||
return pLeft->nodeid < pRight->nodeid;
|
||||
case PeerTableModel::Address:
|
||||
@ -41,9 +40,8 @@ bool NodeLessThan::operator()(const CNodeCombinedStats &left, const CNodeCombine
|
||||
return pLeft->nRecvBytes < pRight->nRecvBytes;
|
||||
case PeerTableModel::Subversion:
|
||||
return pLeft->cleanSubVer.compare(pRight->cleanSubVer) < 0;
|
||||
}
|
||||
|
||||
return false;
|
||||
} // no default case, so the compiler can warn about missing cases
|
||||
assert(false);
|
||||
}
|
||||
|
||||
// private implementation
|
||||
@ -158,9 +156,9 @@ QVariant PeerTableModel::data(const QModelIndex &index, int role) const
|
||||
|
||||
CNodeCombinedStats *rec = static_cast<CNodeCombinedStats*>(index.internalPointer());
|
||||
|
||||
const auto column = static_cast<ColumnIndex>(index.column());
|
||||
if (role == Qt::DisplayRole) {
|
||||
switch(index.column())
|
||||
{
|
||||
switch (column) {
|
||||
case NetNodeId:
|
||||
return (qint64)rec->nodeStats.nodeid;
|
||||
case Address:
|
||||
@ -178,19 +176,24 @@ QVariant PeerTableModel::data(const QModelIndex &index, int role) const
|
||||
return GUIUtil::formatBytes(rec->nodeStats.nRecvBytes);
|
||||
case Subversion:
|
||||
return QString::fromStdString(rec->nodeStats.cleanSubVer);
|
||||
}
|
||||
} // no default case, so the compiler can warn about missing cases
|
||||
assert(false);
|
||||
} else if (role == Qt::TextAlignmentRole) {
|
||||
switch (index.column()) {
|
||||
case ConnectionType:
|
||||
case Network:
|
||||
return QVariant(Qt::AlignCenter);
|
||||
case Ping:
|
||||
case Sent:
|
||||
case Received:
|
||||
return QVariant(Qt::AlignRight | Qt::AlignVCenter);
|
||||
default:
|
||||
return QVariant();
|
||||
}
|
||||
switch (column) {
|
||||
case NetNodeId:
|
||||
case Address:
|
||||
return {};
|
||||
case ConnectionType:
|
||||
case Network:
|
||||
return QVariant(Qt::AlignCenter);
|
||||
case Ping:
|
||||
case Sent:
|
||||
case Received:
|
||||
return QVariant(Qt::AlignRight | Qt::AlignVCenter);
|
||||
case Subversion:
|
||||
return {};
|
||||
} // no default case, so the compiler can warn about missing cases
|
||||
assert(false);
|
||||
} else if (role == StatsRole) {
|
||||
switch (index.column()) {
|
||||
case NetNodeId: return QVariant::fromValue(rec);
|
||||
|
@ -607,26 +607,29 @@ QVariant TransactionTableModel::data(const QModelIndex &index, int role) const
|
||||
return QVariant();
|
||||
TransactionRecord *rec = static_cast<TransactionRecord*>(index.internalPointer());
|
||||
|
||||
switch(role)
|
||||
{
|
||||
const auto column = static_cast<ColumnIndex>(index.column());
|
||||
switch (role) {
|
||||
case RawDecorationRole:
|
||||
switch(index.column())
|
||||
{
|
||||
switch (column) {
|
||||
case Status:
|
||||
return txStatusDecoration(rec);
|
||||
case Watchonly:
|
||||
return txWatchonlyDecoration(rec);
|
||||
case Date: return {};
|
||||
case Type: return {};
|
||||
case ToAddress:
|
||||
return txAddressDecoration(rec);
|
||||
}
|
||||
break;
|
||||
case Amount: return {};
|
||||
} // no default case, so the compiler can warn about missing cases
|
||||
assert(false);
|
||||
case Qt::DecorationRole:
|
||||
{
|
||||
return qvariant_cast<QIcon>(index.data(RawDecorationRole));
|
||||
}
|
||||
case Qt::DisplayRole:
|
||||
switch(index.column())
|
||||
{
|
||||
switch (column) {
|
||||
case Status: return {};
|
||||
case Watchonly: return {};
|
||||
case Date:
|
||||
return formatTxDate(rec);
|
||||
case Type:
|
||||
@ -635,12 +638,11 @@ QVariant TransactionTableModel::data(const QModelIndex &index, int role) const
|
||||
return formatTxToAddress(rec, false);
|
||||
case Amount:
|
||||
return formatTxAmount(rec, true, BitcoinUnits::SeparatorStyle::ALWAYS);
|
||||
}
|
||||
break;
|
||||
} // no default case, so the compiler can warn about missing cases
|
||||
assert(false);
|
||||
case Qt::EditRole:
|
||||
// Edit role is used for sorting, so return the unformatted values
|
||||
switch(index.column())
|
||||
{
|
||||
switch (column) {
|
||||
case Status:
|
||||
return QString::fromStdString(rec->status.sortKey);
|
||||
case Date:
|
||||
@ -653,8 +655,8 @@ QVariant TransactionTableModel::data(const QModelIndex &index, int role) const
|
||||
return formatTxToAddress(rec, true);
|
||||
case Amount:
|
||||
return qint64(rec->credit + rec->debit);
|
||||
}
|
||||
break;
|
||||
} // no default case, so the compiler can warn about missing cases
|
||||
assert(false);
|
||||
case Qt::ToolTipRole:
|
||||
return formatTooltip(rec);
|
||||
case Qt::TextAlignmentRole:
|
||||
|
Loading…
Reference in New Issue
Block a user