Browse Source

monospace font for bitcoin addresses

0.8
Wladimir J. van der Laan 14 years ago
parent
commit
ef1b844e7b
  1. 2
      gui/include/addresstablemodel.h
  2. 3
      gui/include/guiutil.h
  3. 13
      gui/src/addressbookdialog.cpp
  4. 19
      gui/src/addresstablemodel.cpp
  5. 2
      gui/src/bitcoingui.cpp
  6. 7
      gui/src/guiutil.cpp

2
gui/include/addresstablemodel.h

@ -30,6 +30,8 @@ public:
QVariant data(const QModelIndex &index, int role) const; QVariant data(const QModelIndex &index, int role) const;
QVariant headerData(int section, Qt::Orientation orientation, int role) const; QVariant headerData(int section, Qt::Orientation orientation, int role) const;
QModelIndex index(int row, int column, const QModelIndex & parent) const; QModelIndex index(int row, int column, const QModelIndex & parent) const;
void updateList();
private: private:
AddressTablePriv *priv; AddressTablePriv *priv;
QStringList columns; QStringList columns;

3
gui/include/guiutil.h

@ -2,7 +2,10 @@
#define GUIUTIL_H #define GUIUTIL_H
#include <QString> #include <QString>
#include <QFont>
QString DateTimeStr(qint64 nTime); QString DateTimeStr(qint64 nTime);
/* Render bitcoin addresses in monospace font */
QFont bitcoinAddressFont();
#endif // GUIUTIL_H #endif // GUIUTIL_H

13
gui/src/addressbookdialog.cpp

@ -5,6 +5,7 @@
#include "editaddressdialog.h" #include "editaddressdialog.h"
#include <QSortFilterProxyModel> #include <QSortFilterProxyModel>
#include <QClipboard>
#include <QDebug> #include <QDebug>
AddressBookDialog::AddressBookDialog(QWidget *parent) : AddressBookDialog::AddressBookDialog(QWidget *parent) :
@ -72,13 +73,21 @@ QTableView *AddressBookDialog::getCurrentTable()
void AddressBookDialog::on_copyToClipboard_clicked() void AddressBookDialog::on_copyToClipboard_clicked()
{ {
/* Copy currently selected address to clipboard */ /* Copy currently selected address to clipboard
(or nothing, if nothing selected)
*/
QTableView *table = getCurrentTable();
QModelIndexList indexes = table->selectionModel()->selectedRows(AddressTableModel::Address);
foreach (QModelIndex index, indexes) {
QVariant address = table->model()->data(index);
QApplication::clipboard()->setText(address.toString());
}
} }
void AddressBookDialog::on_editButton_clicked() void AddressBookDialog::on_editButton_clicked()
{ {
/* Double click should trigger edit button */ /* Double click triggers edit button */
EditAddressDialog dlg; EditAddressDialog dlg;
dlg.exec(); dlg.exec();
} }

19
gui/src/addresstablemodel.cpp

@ -1,4 +1,5 @@
#include "addresstablemodel.h" #include "addresstablemodel.h"
#include "guiutil.h"
#include "main.h" #include "main.h"
const QString AddressTableModel::Send = "S"; const QString AddressTableModel::Send = "S";
@ -28,10 +29,6 @@ struct AddressTablePriv
{ {
cachedAddressTable.clear(); cachedAddressTable.clear();
}
void updateAddressTable()
{
CRITICAL_BLOCK(cs_mapKeys) CRITICAL_BLOCK(cs_mapKeys)
CRITICAL_BLOCK(cs_mapAddressBook) CRITICAL_BLOCK(cs_mapAddressBook)
{ {
@ -48,7 +45,6 @@ struct AddressTablePriv
} }
} }
int size() int size()
{ {
return cachedAddressTable.size(); return cachedAddressTable.size();
@ -108,6 +104,12 @@ QVariant AddressTableModel::data(const QModelIndex &index, int role) const
case Address: case Address:
return rec->address; return rec->address;
} }
} else if (role == Qt::FontRole)
{
if(index.column() == Address)
{
return bitcoinAddressFont();
}
} else if (role == TypeRole) } else if (role == TypeRole)
{ {
switch(rec->type) switch(rec->type)
@ -146,3 +148,10 @@ QModelIndex AddressTableModel::index ( int row, int column, const QModelIndex &
} }
} }
void AddressTableModel::updateList()
{
/* Update internal model from Bitcoin core */
beginResetModel();
priv->refreshAddressTable();
endResetModel();
}

2
gui/src/bitcoingui.cpp

@ -83,7 +83,7 @@ BitcoinGUI::BitcoinGUI(QWidget *parent):
hbox_balance->addSpacing(5);/* Add some spacing between the label and the text */ hbox_balance->addSpacing(5);/* Add some spacing between the label and the text */
labelBalance = new QLabel(); labelBalance = new QLabel();
labelBalance->setFont(QFont("Teletype")); labelBalance->setFont(QFont("Monospace"));
hbox_balance->addWidget(labelBalance); hbox_balance->addWidget(labelBalance);
hbox_balance->addStretch(1); hbox_balance->addStretch(1);

7
gui/src/guiutil.cpp

@ -7,3 +7,10 @@ QString DateTimeStr(qint64 nTime)
QDateTime date = QDateTime::fromMSecsSinceEpoch(nTime*1000); QDateTime date = QDateTime::fromMSecsSinceEpoch(nTime*1000);
return date.date().toString(Qt::SystemLocaleShortDate) + QString(" ") + date.toString("hh:mm"); return date.date().toString(Qt::SystemLocaleShortDate) + QString(" ") + date.toString("hh:mm");
} }
QFont bitcoinAddressFont()
{
QFont font("Monospace");
font.setStyleHint(QFont::TypeWriter);
return font;
}

Loading…
Cancel
Save