[depends] ZeroMQ 4.1.5
[bitcoinplatinum.git] / src / qt / overviewpage.h
blob911443c76af19c650d8b1128f4cd24dbfdb844e4
1 // Copyright (c) 2011-2015 The Bitcoin Core developers
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
5 #ifndef BITCOIN_QT_OVERVIEWPAGE_H
6 #define BITCOIN_QT_OVERVIEWPAGE_H
8 #include "amount.h"
10 #include <QWidget>
12 class ClientModel;
13 class TransactionFilterProxy;
14 class TxViewDelegate;
15 class PlatformStyle;
16 class WalletModel;
18 namespace Ui {
19 class OverviewPage;
22 QT_BEGIN_NAMESPACE
23 class QModelIndex;
24 QT_END_NAMESPACE
26 /** Overview ("home") page widget */
27 class OverviewPage : public QWidget
29 Q_OBJECT
31 public:
32 explicit OverviewPage(const PlatformStyle *platformStyle, QWidget *parent = 0);
33 ~OverviewPage();
35 void setClientModel(ClientModel *clientModel);
36 void setWalletModel(WalletModel *walletModel);
37 void showOutOfSyncWarning(bool fShow);
39 public Q_SLOTS:
40 void setBalance(const CAmount& balance, const CAmount& unconfirmedBalance, const CAmount& immatureBalance,
41 const CAmount& watchOnlyBalance, const CAmount& watchUnconfBalance, const CAmount& watchImmatureBalance);
43 Q_SIGNALS:
44 void transactionClicked(const QModelIndex &index);
46 private:
47 Ui::OverviewPage *ui;
48 ClientModel *clientModel;
49 WalletModel *walletModel;
50 CAmount currentBalance;
51 CAmount currentUnconfirmedBalance;
52 CAmount currentImmatureBalance;
53 CAmount currentWatchOnlyBalance;
54 CAmount currentWatchUnconfBalance;
55 CAmount currentWatchImmatureBalance;
57 TxViewDelegate *txdelegate;
58 TransactionFilterProxy *filter;
60 private Q_SLOTS:
61 void updateDisplayUnit();
62 void handleTransactionClicked(const QModelIndex &index);
63 void updateAlerts(const QString &warnings);
64 void updateWatchOnlyLabels(bool showWatchOnly);
67 #endif // BITCOIN_QT_OVERVIEWPAGE_H