fix balance display, display number of transactions
authorWladimir J. van der Laan <laanwj@gmail.com>
Fri, 27 May 2011 19:24:17 +0000 (21:24 +0200)
committerWladimir J. van der Laan <laanwj@gmail.com>
Fri, 27 May 2011 19:24:17 +0000 (21:24 +0200)
gui/include/bitcoingui.h
gui/include/clientmodel.h
gui/include/transactiontablemodel.h
gui/src/bitcoingui.cpp
gui/src/clientmodel.cpp
gui/src/transactiontablemodel.cpp

index 3b722fc..80c24a3 100644 (file)
@@ -52,7 +52,7 @@ private:
     void createTrayIcon();
 
 public slots:
-    void setBalance(double balance);
+    void setBalance(qint64 balance);
     void setAddress(const QString &address);
     void setNumConnections(int count);
     void setNumBlocks(int count);
index fb1a5ed..a5613e3 100644 (file)
@@ -9,14 +9,14 @@ class ClientModel : public QObject
 public:
     explicit ClientModel(QObject *parent = 0);
 
-    double getBalance();
+    qint64 getBalance();
     QString getAddress();
     int getNumConnections();
     int getNumBlocks();
     int getNumTransactions();
 
 signals:
-    void balanceChanged(double balance);
+    void balanceChanged(qint64 balance);
     void addressChanged(const QString &address);
     void numConnectionsChanged(int count);
     void numBlocksChanged(int count);
index 2ff3b0c..1ea749d 100644 (file)
@@ -37,6 +37,8 @@ public:
     QVariant headerData(int section, Qt::Orientation orientation, int role) const;
     Qt::ItemFlags flags(const QModelIndex &index) const;
     QModelIndex index ( int row, int column, const QModelIndex & parent = QModelIndex() ) const;
+public slots:
+    void updateWallet();
 private:
     QStringList columns;
     TransactionTableImpl *impl;
index d7a71fc..831bef3 100644 (file)
@@ -11,6 +11,8 @@
 #include "aboutdialog.h"
 #include "clientmodel.h"
 
+#include "main.h"
+
 #include <QApplication>
 #include <QMainWindow>
 #include <QMenuBar>
@@ -268,9 +270,9 @@ void BitcoinGUI::copyClipboardClicked()
     QApplication::clipboard()->setText(address->text());
 }
 
-void BitcoinGUI::setBalance(double balance)
+void BitcoinGUI::setBalance(qint64 balance)
 {
-    labelBalance->setText(QLocale::system().toString(balance, 8));
+    labelBalance->setText(QString::fromStdString(FormatMoney(balance)));
 }
 
 void BitcoinGUI::setAddress(const QString &addr)
@@ -280,15 +282,15 @@ void BitcoinGUI::setAddress(const QString &addr)
 
 void BitcoinGUI::setNumConnections(int count)
 {
-    labelConnections->setText(QLocale::system().toString(count)+" "+tr("connections"));
+    labelConnections->setText(QLocale::system().toString(count)+" "+tr("connections(s)", "", count));
 }
 
 void BitcoinGUI::setNumBlocks(int count)
 {
-    labelBlocks->setText(QLocale::system().toString(count)+" "+tr("blocks"));
+    labelBlocks->setText(QLocale::system().toString(count)+" "+tr("block(s)", "", count));
 }
 
 void BitcoinGUI::setNumTransactions(int count)
 {
-    labelTransactions->setText(QLocale::system().toString(count)+" "+tr("transactions"));
+    labelTransactions->setText(QLocale::system().toString(count)+" "+tr("transaction(s)", "", count));
 }
index 0f19102..cc52df4 100644 (file)
@@ -17,7 +17,7 @@ ClientModel::ClientModel(QObject *parent) :
     timer->start(MODEL_UPDATE_DELAY);
 }
 
-double ClientModel::getBalance()
+qint64 ClientModel::getBalance()
 {
     return GetBalance();
 }
@@ -45,7 +45,12 @@ int ClientModel::getNumBlocks()
 
 int ClientModel::getNumTransactions()
 {
-    return 0;
+    int numTransactions = 0;
+    CRITICAL_BLOCK(cs_mapWallet)
+    {
+        numTransactions = mapWallet.size();
+    }
+    return numTransactions;
 }
 
 void ClientModel::update()
index ffc2472..900cb6d 100644 (file)
@@ -85,6 +85,12 @@ TransactionTableModel::~TransactionTableModel()
     delete impl;
 }
 
+void TransactionTableModel::updateWallet()
+{
+    beginResetModel();
+    impl->updateWallet();
+    endResetModel();
+}
 
 int TransactionTableModel::rowCount(const QModelIndex &parent) const
 {