annotate src/qt/clientmodel.h @ 1120:60b3897eb69f draft

General cleanups
author Wladimir J. van der Laan <laanwj@gmail.com>
date Fri, 01 Jul 2011 17:06:36 +0200 (2011-07-01)
parents f15d5d021d37
children 812889ab4a96
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1049
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
1 #ifndef CLIENTMODEL_H
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
2 #define CLIENTMODEL_H
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
3
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
4 #include <QObject>
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
5
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
6 class OptionsModel;
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
7 class AddressTableModel;
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
8 class TransactionTableModel;
1105
f14310dc690b update core to d0d80170a2ca73004e08fb85007fe055cbf4e411 (CWallet class)
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1099
diff changeset
9 class CWallet;
1049
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
10
1113
fed522d006eb Split off WalletModel from ClientModel, to be able to support multi-wallets in future
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1105
diff changeset
11 // Interface to Bitcoin network client
1049
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
12 class ClientModel : public QObject
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
13 {
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
14 Q_OBJECT
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
15 public:
1113
fed522d006eb Split off WalletModel from ClientModel, to be able to support multi-wallets in future
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1105
diff changeset
16 // The only reason that this constructor takes a wallet is because
fed522d006eb Split off WalletModel from ClientModel, to be able to support multi-wallets in future
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1105
diff changeset
17 // the global client settings are stored in the main wallet.
1105
f14310dc690b update core to d0d80170a2ca73004e08fb85007fe055cbf4e411 (CWallet class)
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1099
diff changeset
18 explicit ClientModel(CWallet *wallet, QObject *parent = 0);
1049
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
19
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
20 OptionsModel *getOptionsModel();
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
21
1077
a58b12afb2fb Prevent notification balloon-spam on initial block download, const-correctness in client model
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1049
diff changeset
22 int getNumConnections() const;
a58b12afb2fb Prevent notification balloon-spam on initial block download, const-correctness in client model
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1049
diff changeset
23 int getNumBlocks() const;
a58b12afb2fb Prevent notification balloon-spam on initial block download, const-correctness in client model
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1049
diff changeset
24
1114
f15d5d021d37 Make it very clear when on testnet (green icon, add [testnet] to title)
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1113
diff changeset
25 // Return true if client connected to testnet
f15d5d021d37 Make it very clear when on testnet (green icon, add [testnet] to title)
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1113
diff changeset
26 bool isTestNet() const;
1113
fed522d006eb Split off WalletModel from ClientModel, to be able to support multi-wallets in future
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1105
diff changeset
27 // Return true if core is doing initial block download
1077
a58b12afb2fb Prevent notification balloon-spam on initial block download, const-correctness in client model
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1049
diff changeset
28 bool inInitialBlockDownload() const;
1113
fed522d006eb Split off WalletModel from ClientModel, to be able to support multi-wallets in future
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1105
diff changeset
29 // Return conservative estimate of total number of blocks, or 0 if unknown
1081
04a99b02572c On initial block chain download, show a progress bar
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1077
diff changeset
30 int getTotalBlocksEstimate() const;
1049
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
31
1120
60b3897eb69f General cleanups
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1114
diff changeset
32 QString formatFullVersion() const;
60b3897eb69f General cleanups
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1114
diff changeset
33
1049
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
34 private:
1105
f14310dc690b update core to d0d80170a2ca73004e08fb85007fe055cbf4e411 (CWallet class)
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1099
diff changeset
35 CWallet *wallet;
f14310dc690b update core to d0d80170a2ca73004e08fb85007fe055cbf4e411 (CWallet class)
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1099
diff changeset
36
1049
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
37 OptionsModel *optionsModel;
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
38
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
39 signals:
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
40 void numConnectionsChanged(int count);
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
41 void numBlocksChanged(int count);
1113
fed522d006eb Split off WalletModel from ClientModel, to be able to support multi-wallets in future
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1105
diff changeset
42
fed522d006eb Split off WalletModel from ClientModel, to be able to support multi-wallets in future
Wladimir J. van der Laan <laanwj@gmail.com>
parents: 1105
diff changeset
43 // Asynchronous error notification
1049
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
44 void error(const QString &title, const QString &message);
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
45
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
46 public slots:
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
47
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
48 private slots:
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
49 void update();
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
50 };
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
51
e5518d9b9f05 move back to original directory structure
Wladimir J. van der Laan <laanwj@gmail.com>
parents:
diff changeset
52 #endif // CLIENTMODEL_H