From 3034a462a5d30144cf0ec801d07f0c8c36d560f3 Mon Sep 17 00:00:00 2001 From: Russell Yanofsky Date: Mon, 17 Apr 2017 16:02:44 -0400 Subject: Remove direct bitcoin calls from qt/bantablemodel.cpp --- src/qt/bantablemodel.cpp | 11 ++++++----- src/qt/bantablemodel.h | 7 ++++++- src/qt/clientmodel.cpp | 2 +- 3 files changed, 13 insertions(+), 7 deletions(-) (limited to 'src/qt') diff --git a/src/qt/bantablemodel.cpp b/src/qt/bantablemodel.cpp index c89c90e118..cbd67d70ab 100644 --- a/src/qt/bantablemodel.cpp +++ b/src/qt/bantablemodel.cpp @@ -8,6 +8,7 @@ #include #include +#include #include #include @@ -45,11 +46,10 @@ public: Qt::SortOrder sortOrder; /** Pull a full list of banned nodes from CNode into our cache */ - void refreshBanlist() + void refreshBanlist(interface::Node& node) { banmap_t banMap; - if(g_connman) - g_connman->GetBanned(banMap); + node.getBanned(banMap); cachedBanlist.clear(); #if QT_VERSION >= 0x040700 @@ -82,8 +82,9 @@ public: } }; -BanTableModel::BanTableModel(ClientModel *parent) : +BanTableModel::BanTableModel(interface::Node& node, ClientModel *parent) : QAbstractTableModel(parent), + m_node(node), clientModel(parent) { columns << tr("IP/Netmask") << tr("Banned Until"); @@ -168,7 +169,7 @@ QModelIndex BanTableModel::index(int row, int column, const QModelIndex &parent) void BanTableModel::refresh() { Q_EMIT layoutAboutToBeChanged(); - priv->refreshBanlist(); + priv->refreshBanlist(m_node); Q_EMIT layoutChanged(); } diff --git a/src/qt/bantablemodel.h b/src/qt/bantablemodel.h index a54f8793d0..fcb364d40b 100644 --- a/src/qt/bantablemodel.h +++ b/src/qt/bantablemodel.h @@ -13,6 +13,10 @@ class ClientModel; class BanTablePriv; +namespace interface { + class Node; +} + struct CCombinedBan { CSubNet subnet; CBanEntry banEntry; @@ -39,7 +43,7 @@ class BanTableModel : public QAbstractTableModel Q_OBJECT public: - explicit BanTableModel(ClientModel *parent = 0); + explicit BanTableModel(interface::Node& node, ClientModel *parent = 0); ~BanTableModel(); void startAutoRefresh(); void stopAutoRefresh(); @@ -65,6 +69,7 @@ public Q_SLOTS: void refresh(); private: + interface::Node& m_node; ClientModel *clientModel; QStringList columns; std::unique_ptr priv; diff --git a/src/qt/clientmodel.cpp b/src/qt/clientmodel.cpp index 84cfb79549..1dbfc815b6 100644 --- a/src/qt/clientmodel.cpp +++ b/src/qt/clientmodel.cpp @@ -43,7 +43,7 @@ ClientModel::ClientModel(interface::Node& node, OptionsModel *_optionsModel, QOb cachedBestHeaderHeight = -1; cachedBestHeaderTime = -1; peerTableModel = new PeerTableModel(m_node, this); - banTableModel = new BanTableModel(this); + banTableModel = new BanTableModel(m_node, this); pollTimer = new QTimer(this); connect(pollTimer, SIGNAL(timeout()), this, SLOT(updateTimer())); pollTimer->start(MODEL_UPDATE_DELAY); -- cgit v1.2.3