// Copyright (c) 2011-2018 The Bitcoin Core developers // Distributed under the MIT software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. #ifndef BITCOIN_QT_OVERVIEWPAGE_H #define BITCOIN_QT_OVERVIEWPAGE_H #include #include #include class ClientModel; class TransactionFilterProxy; class TxViewDelegate; class PlatformStyle; class WalletModel; namespace Ui { class OverviewPage; } QT_BEGIN_NAMESPACE class QModelIndex; QT_END_NAMESPACE /** Overview ("home") page widget */ class OverviewPage : public QWidget { Q_OBJECT public: explicit OverviewPage(const PlatformStyle *platformStyle, QWidget *parent = 0); ~OverviewPage(); void setClientModel(ClientModel *clientModel); void setWalletModel(WalletModel *walletModel); void showOutOfSyncWarning(bool fShow); public Q_SLOTS: void setBalance(const interfaces::WalletBalances& balances); Q_SIGNALS: void transactionClicked(const QModelIndex &index); void outOfSyncWarningClicked(); private: Ui::OverviewPage *ui; ClientModel *clientModel; WalletModel *walletModel; interfaces::WalletBalances m_balances; TxViewDelegate *txdelegate; std::unique_ptr filter; private Q_SLOTS: void updateDisplayUnit(); void handleTransactionClicked(const QModelIndex &index); void updateAlerts(const QString &warnings); void updateWatchOnlyLabels(bool showWatchOnly); void handleOutOfSyncWarningClicks(); }; #endif // BITCOIN_QT_OVERVIEWPAGE_H