From 63276a96ba73b01c8ea03e072eb5bce869edb3b0 Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Tue, 18 Feb 2014 21:39:55 +0000 Subject: [PATCH] More fluid updates. --- alethzero/MainWin.cpp | 18 +++++++++++++----- alethzero/MainWin.h | 2 ++ 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/alethzero/MainWin.cpp b/alethzero/MainWin.cpp index 6ad8cccf4..d3d3dd129 100644 --- a/alethzero/MainWin.cpp +++ b/alethzero/MainWin.cpp @@ -34,6 +34,9 @@ Main::Main(QWidget *parent) : m_refresh = new QTimer(this); connect(m_refresh, SIGNAL(timeout()), SLOT(refresh())); m_refresh->start(100); + m_refreshNetwork = new QTimer(this); + connect(m_refreshNetwork, SIGNAL(timeout()), SLOT(refreshNetwork())); + m_refreshNetwork->start(1000); #if ETH_DEBUG m_servers.append("192.168.0.10:30301"); @@ -123,17 +126,22 @@ void Main::readSettings() ui->port->setValue(s.value("port", ui->port->value()).toInt()); } +void Main::refreshNetwork() +{ + auto ps = m_client->peers(); + + ui->peerCount->setText(QString::fromStdString(toString(ps.size())) + " peer(s)"); + ui->peers->clear(); + for (PeerInfo const& i: ps) + ui->peers->addItem(QString("%3 ms - %1:%2 - %4").arg(i.host.c_str()).arg(i.port).arg(chrono::duration_cast(i.lastPing).count()).arg(i.clientVersion.c_str())); +} + void Main::refresh() { m_client->lock(); bool c = m_client->changed(); if (c) { - ui->peerCount->setText(QString::fromStdString(toString(m_client->peerCount())) + " peer(s)"); - ui->peers->clear(); - for (PeerInfo const& i: m_client->peers()) - ui->peers->addItem(QString("%3 ms - %1:%2 - %4").arg(i.host.c_str()).arg(i.port).arg(chrono::duration_cast(i.lastPing).count()).arg(i.clientVersion.c_str())); - auto d = m_client->blockChain().details(); auto diff = BlockInfo(m_client->blockChain().block()).difficulty; ui->blockCount->setText(QString("#%1 @%3 T%2").arg(d.number).arg(toLog2(d.totalDifficulty)).arg(toLog2(diff))); diff --git a/alethzero/MainWin.h b/alethzero/MainWin.h index 60e685ea3..02d3506c4 100644 --- a/alethzero/MainWin.h +++ b/alethzero/MainWin.h @@ -43,6 +43,7 @@ private slots: void on_quit_triggered() { close(); } void refresh(); + void refreshNetwork(); private: void updateFee(); @@ -60,6 +61,7 @@ private: QByteArray m_peers; QMutex m_guiLock; QTimer* m_refresh; + QTimer* m_refreshNetwork; QStringList m_servers; QVector m_myKeys; bool m_keysChanged = false;