2018-07-27 00:36:45 +02:00
|
|
|
// Copyright (c) 2011-2018 The Bitcoin Core developers
|
2014-12-13 05:09:33 +01:00
|
|
|
// Distributed under the MIT software license, see the accompanying
|
2013-11-04 16:20:43 +01:00
|
|
|
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
|
|
|
2014-11-03 16:16:40 +01:00
|
|
|
#ifndef BITCOIN_QT_OVERVIEWPAGE_H
|
|
|
|
#define BITCOIN_QT_OVERVIEWPAGE_H
|
2011-07-05 22:09:39 +02:00
|
|
|
|
2018-04-07 09:42:02 +02:00
|
|
|
#include <interfaces/wallet.h>
|
2014-04-23 00:46:19 +02:00
|
|
|
|
2011-07-05 22:09:39 +02:00
|
|
|
#include <QWidget>
|
2016-11-18 15:47:20 +01:00
|
|
|
#include <memory>
|
2011-07-05 22:09:39 +02:00
|
|
|
|
2013-04-13 07:13:08 +02:00
|
|
|
class ClientModel;
|
|
|
|
class TransactionFilterProxy;
|
|
|
|
class TxViewDelegate;
|
2015-07-28 15:20:14 +02:00
|
|
|
class PlatformStyle;
|
2013-04-13 07:13:08 +02:00
|
|
|
class WalletModel;
|
|
|
|
|
2011-07-05 22:09:39 +02:00
|
|
|
namespace Ui {
|
|
|
|
class OverviewPage;
|
|
|
|
}
|
|
|
|
|
2013-01-23 21:51:02 +01:00
|
|
|
QT_BEGIN_NAMESPACE
|
|
|
|
class QModelIndex;
|
|
|
|
QT_END_NAMESPACE
|
|
|
|
|
2011-11-13 13:19:52 +01:00
|
|
|
/** Overview ("home") page widget */
|
2011-07-05 22:09:39 +02:00
|
|
|
class OverviewPage : public QWidget
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
public:
|
2018-07-30 12:37:09 +02:00
|
|
|
explicit OverviewPage(const PlatformStyle *platformStyle, QWidget *parent = nullptr);
|
2011-07-05 22:09:39 +02:00
|
|
|
~OverviewPage();
|
|
|
|
|
2012-10-24 21:47:07 +02:00
|
|
|
void setClientModel(ClientModel *clientModel);
|
|
|
|
void setWalletModel(WalletModel *walletModel);
|
2012-05-15 16:57:59 +02:00
|
|
|
void showOutOfSyncWarning(bool fShow);
|
2011-07-11 20:42:10 +02:00
|
|
|
|
2015-07-14 13:59:05 +02:00
|
|
|
public Q_SLOTS:
|
2018-04-07 09:42:02 +02:00
|
|
|
void setBalance(const interfaces::WalletBalances& balances);
|
2011-07-05 22:09:39 +02:00
|
|
|
|
2015-07-14 13:59:05 +02:00
|
|
|
Q_SIGNALS:
|
2011-08-04 04:41:01 +02:00
|
|
|
void transactionClicked(const QModelIndex &index);
|
2016-07-19 15:27:14 +02:00
|
|
|
void outOfSyncWarningClicked();
|
2011-08-04 04:41:01 +02:00
|
|
|
|
2011-07-05 22:09:39 +02:00
|
|
|
private:
|
|
|
|
Ui::OverviewPage *ui;
|
2012-10-24 21:47:07 +02:00
|
|
|
ClientModel *clientModel;
|
|
|
|
WalletModel *walletModel;
|
2018-04-07 09:42:02 +02:00
|
|
|
interfaces::WalletBalances m_balances;
|
2011-07-05 22:09:39 +02:00
|
|
|
|
2011-08-03 20:52:18 +02:00
|
|
|
TxViewDelegate *txdelegate;
|
2016-11-18 15:47:20 +01:00
|
|
|
std::unique_ptr<TransactionFilterProxy> filter;
|
2011-08-03 20:52:18 +02:00
|
|
|
|
2015-07-14 13:59:05 +02:00
|
|
|
private Q_SLOTS:
|
2012-06-09 15:41:21 +02:00
|
|
|
void updateDisplayUnit();
|
2012-05-12 13:19:44 +02:00
|
|
|
void handleTransactionClicked(const QModelIndex &index);
|
2012-10-24 21:47:07 +02:00
|
|
|
void updateAlerts(const QString &warnings);
|
2014-07-26 21:05:11 +02:00
|
|
|
void updateWatchOnlyLabels(bool showWatchOnly);
|
2016-07-19 15:27:14 +02:00
|
|
|
void handleOutOfSyncWarningClicks();
|
2011-07-05 22:09:39 +02:00
|
|
|
};
|
|
|
|
|
2014-11-03 16:16:40 +01:00
|
|
|
#endif // BITCOIN_QT_OVERVIEWPAGE_H
|