Browse Source

highlight default address

0.8
Wladimir J. van der Laan 14 years ago
parent
commit
f5927f5b32
  1. 34
      src/qt/addresstablemodel.cpp

34
src/qt/addresstablemodel.cpp

@ -3,6 +3,7 @@
#include "main.h" #include "main.h"
#include <QFont> #include <QFont>
#include <QColor>
const QString AddressTableModel::Send = "S"; const QString AddressTableModel::Send = "S";
const QString AddressTableModel::Receive = "R"; const QString AddressTableModel::Receive = "R";
@ -21,6 +22,16 @@ struct AddressTableEntry
AddressTableEntry() {} AddressTableEntry() {}
AddressTableEntry(Type type, const QString &label, const QString &address): AddressTableEntry(Type type, const QString &label, const QString &address):
type(type), label(label), address(address) {} type(type), label(label), address(address) {}
bool isDefaultAddress() const
{
std::vector<unsigned char> vchPubKey;
if (CWalletDB("r").ReadDefaultKey(vchPubKey))
{
return address == QString::fromStdString(PubKeyToAddress(vchPubKey));
}
return false;
}
}; };
// Private implementation // Private implementation
@ -110,9 +121,30 @@ QVariant AddressTableModel::data(const QModelIndex &index, int role) const
} }
else if (role == Qt::FontRole) else if (role == Qt::FontRole)
{ {
QFont font;
if(index.column() == Address) if(index.column() == Address)
{ {
return GUIUtil::bitcoinAddressFont(); font = GUIUtil::bitcoinAddressFont();
}
if(rec->isDefaultAddress())
{
font.setBold(true);
}
return font;
}
else if (role == Qt::ForegroundRole)
{
// Show default address in alternative color
if(rec->isDefaultAddress())
{
return QColor(0,0,255);
}
}
else if (role == Qt::ToolTipRole)
{
if(rec->isDefaultAddress())
{
return tr("Default receiving address");
} }
} }
else if (role == TypeRole) else if (role == TypeRole)

Loading…
Cancel
Save