diff options
author | Pieter Wuille <pieter.wuille@gmail.com> | 2012-09-13 14:33:52 +0200 |
---|---|---|
committer | Pieter Wuille <pieter.wuille@gmail.com> | 2012-10-20 01:54:10 +0200 |
commit | 66b02c93e69cfeaec6e7fa19a03bfb2649025a56 (patch) | |
tree | 414db7d5088d03e29963974fce490567e25e8649 /src/qt | |
parent | 485d667748b776a1932e3e14dc1b9dfe2ba841d0 (diff) |
Move external block import to separate thread
Diffstat (limited to 'src/qt')
-rw-r--r-- | src/qt/bitcoingui.cpp | 4 | ||||
-rw-r--r-- | src/qt/clientmodel.cpp | 5 | ||||
-rw-r--r-- | src/qt/clientmodel.h | 2 |
3 files changed, 9 insertions, 2 deletions
diff --git a/src/qt/bitcoingui.cpp b/src/qt/bitcoingui.cpp index 19a6a65a1b..0d269ea210 100644 --- a/src/qt/bitcoingui.cpp +++ b/src/qt/bitcoingui.cpp @@ -473,7 +473,7 @@ void BitcoinGUI::setNumConnections(int count) void BitcoinGUI::setNumBlocks(int count, int nTotalBlocks) { // don't show / hide progress bar and its label if we have no connection to the network - if (!clientModel || clientModel->getNumConnections() == 0) + if (!clientModel || (clientModel->getNumConnections() == 0 && !clientModel->isImporting())) { progressBarLabel->setVisible(false); progressBar->setVisible(false); @@ -491,7 +491,7 @@ void BitcoinGUI::setNumBlocks(int count, int nTotalBlocks) if (strStatusBarWarnings.isEmpty()) { - progressBarLabel->setText(tr("Synchronizing with network...")); + progressBarLabel->setText(tr(clientModel->isImporting() ? "Importing blocks..." : "Synchronizing with network...")); progressBarLabel->setVisible(true); progressBar->setFormat(tr("~%n block(s) remaining", "", nRemainingBlocks)); progressBar->setMaximum(nTotalBlocks); diff --git a/src/qt/clientmodel.cpp b/src/qt/clientmodel.cpp index b820d16abf..990b364a94 100644 --- a/src/qt/clientmodel.cpp +++ b/src/qt/clientmodel.cpp @@ -103,6 +103,11 @@ bool ClientModel::inInitialBlockDownload() const return IsInitialBlockDownload(); } +bool ClientModel::isImporting() const +{ + return fImporting; +} + int ClientModel::getNumBlocksOfPeers() const { return GetNumBlocksOfPeers(); diff --git a/src/qt/clientmodel.h b/src/qt/clientmodel.h index 70d816ba9d..926390a07a 100644 --- a/src/qt/clientmodel.h +++ b/src/qt/clientmodel.h @@ -33,6 +33,8 @@ public: bool isTestNet() const; //! Return true if core is doing initial block download bool inInitialBlockDownload() const; + //! Return true if core is importing blocks + bool isImporting() const; //! Return conservative estimate of total number of blocks, or 0 if unknown int getNumBlocksOfPeers() const; //! Return warnings to be displayed in status bar |