a20c0d0f67
All client version information is moved to version.cpp, which optionally (-DHAVE_BUILD_INFO) includes build.h. build.h is automatically generated on supporting platforms via contrib/genbuild.sh, using git describe. The git export-subst attribute is used to put the commit id statically in version.cpp inside generated archives, and this value is used if no build.h is present. The gitian descriptors are modified to use git archive instead of a copy, to create the src/ directory in the output. This way, src/src/version.cpp will contain the static commit id. To prevent gitian builds from getting the "-dirty" marker in their git-describe generated identifiers, no touching of files or running sed on the makefile is performed anymore. This does not seem to influence determinism.
64 lines
1.4 KiB
C++
64 lines
1.4 KiB
C++
#ifndef CLIENTMODEL_H
|
|
#define CLIENTMODEL_H
|
|
|
|
#include <QObject>
|
|
|
|
class OptionsModel;
|
|
class AddressTableModel;
|
|
class TransactionTableModel;
|
|
class CWallet;
|
|
|
|
QT_BEGIN_NAMESPACE
|
|
class QDateTime;
|
|
QT_END_NAMESPACE
|
|
|
|
/** Model for Bitcoin network client. */
|
|
class ClientModel : public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit ClientModel(OptionsModel *optionsModel, QObject *parent = 0);
|
|
|
|
OptionsModel *getOptionsModel();
|
|
|
|
int getNumConnections() const;
|
|
int getNumBlocks() const;
|
|
int getNumBlocksAtStartup();
|
|
|
|
QDateTime getLastBlockDate() const;
|
|
|
|
//! Return true if client connected to testnet
|
|
bool isTestNet() const;
|
|
//! Return true if core is doing initial block download
|
|
bool inInitialBlockDownload() const;
|
|
//! Return conservative estimate of total number of blocks, or 0 if unknown
|
|
int getNumBlocksOfPeers() const;
|
|
//! Return warnings to be displayed in status bar
|
|
QString getStatusBarWarnings() const;
|
|
|
|
QString formatFullVersion() const;
|
|
QString formatBuildDate() const;
|
|
|
|
private:
|
|
OptionsModel *optionsModel;
|
|
|
|
int cachedNumConnections;
|
|
int cachedNumBlocks;
|
|
QString cachedStatusBar;
|
|
|
|
int numBlocksAtStartup;
|
|
|
|
signals:
|
|
void numConnectionsChanged(int count);
|
|
void numBlocksChanged(int count);
|
|
|
|
//! Asynchronous error notification
|
|
void error(const QString &title, const QString &message, bool modal);
|
|
|
|
public slots:
|
|
|
|
private slots:
|
|
void update();
|
|
};
|
|
|
|
#endif // CLIENTMODEL_H
|