Dash Core  0.12.2.1
P2P Digital Currency
walletview.h
Go to the documentation of this file.
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.
4 
5 #ifndef BITCOIN_QT_WALLETVIEW_H
6 #define BITCOIN_QT_WALLETVIEW_H
7 
8 #include "amount.h"
9 #include "masternodelist.h"
10 
11 #include <QStackedWidget>
12 
13 class BitcoinGUI;
14 class ClientModel;
15 class OverviewPage;
16 class PlatformStyle;
17 class ReceiveCoinsDialog;
18 class SendCoinsDialog;
19 class SendCoinsRecipient;
20 class TransactionView;
21 class WalletModel;
22 class AddressBookPage;
23 
24 QT_BEGIN_NAMESPACE
25 class QLabel;
26 class QModelIndex;
27 class QProgressDialog;
28 QT_END_NAMESPACE
29 
30 /*
31  WalletView class. This class represents the view to a single wallet.
32  It was added to support multiple wallet functionality. Each wallet gets its own WalletView instance.
33  It communicates with both the client and the wallet models to give the user an up-to-date view of the
34  current core state.
35 */
36 class WalletView : public QStackedWidget
37 {
38  Q_OBJECT
39 
40 public:
41  explicit WalletView(const PlatformStyle *platformStyle, QWidget *parent);
42  ~WalletView();
43 
44  void setBitcoinGUI(BitcoinGUI *gui);
54 
55  bool handlePaymentRequest(const SendCoinsRecipient& recipient);
56 
57  void showOutOfSyncWarning(bool fShow);
58 
59 private:
62 
64  QWidget *transactionsPage;
70 
72 
73  QProgressDialog *progressDialog;
74  QLabel *transactionSum;
76 
77 public Q_SLOTS:
79  void gotoOverviewPage();
81  void gotoHistoryPage();
83  void gotoMasternodePage();
85  void gotoReceiveCoinsPage();
87  void gotoSendCoinsPage(QString addr = "");
88 
90  void gotoSignMessageTab(QString addr = "");
92  void gotoVerifyMessageTab(QString addr = "");
93 
98  void processNewTransaction(const QModelIndex& parent, int start, int /*end*/);
100  void encryptWallet(bool status);
102  void backupWallet();
104  void changePassphrase();
106  void unlockWallet(bool fAnonymizeOnly=false);
108  void lockWallet();
109 
111  void usedSendingAddresses();
113  void usedReceivingAddresses();
114 
116  void updateEncryptionStatus();
117 
119  void showProgress(const QString &title, int nProgress);
120 
123 
124 
126  void trxAmount(QString amount);
127 Q_SIGNALS:
129  void showNormalIfMinimized();
131  void message(const QString &title, const QString &message, unsigned int style);
133  void encryptionStatusChanged(int status);
135  void hdEnabledStatusChanged(int hdEnabled);
137  void incomingTransaction(const QString& date, int unit, const CAmount& amount, const QString& type, const QString& address, const QString& label);
140 };
141 
142 #endif // BITCOIN_QT_WALLETVIEW_H
void encryptWallet(bool status)
Definition: walletview.cpp:277
void showNormalIfMinimized()
void incomingTransaction(const QString &date, int unit, const CAmount &amount, const QString &type, const QString &address, const QString &label)
void trxAmount(QString amount)
Definition: walletview.cpp:385
TransactionView * transactionView
Definition: walletview.h:71
void usedReceivingAddresses()
Definition: walletview.cpp:346
void setClientModel(ClientModel *clientModel)
Definition: walletview.cpp:135
void backupWallet()
Definition: walletview.cpp:288
QWidget * transactionsPage
Definition: walletview.h:64
void gotoSignMessageTab(QString addr="")
Definition: walletview.cpp:238
SendCoinsDialog * sendCoinsPage
Definition: walletview.h:66
void requestedSyncWarningInfo()
Definition: walletview.cpp:379
void setBitcoinGUI(BitcoinGUI *gui)
Definition: walletview.cpp:114
void updateEncryptionStatus()
Definition: walletview.cpp:272
QProgressDialog * progressDialog
Definition: walletview.h:73
MasternodeList * masternodeListPage
Definition: walletview.h:69
AddressBookPage * usedReceivingAddressesPage
Definition: walletview.h:68
void gotoOverviewPage()
Definition: walletview.cpp:207
void gotoReceiveCoinsPage()
Definition: walletview.cpp:225
void usedSendingAddresses()
Definition: walletview.cpp:336
int64_t CAmount
Definition: amount.h:14
void outOfSyncWarningClicked()
void message(const QString &title, const QString &message, unsigned int style)
void unlockWallet(bool fAnonymizeOnly=false)
Definition: walletview.cpp:314
AddressBookPage * usedSendingAddressesPage
Definition: walletview.h:67
void gotoVerifyMessageTab(QString addr="")
Definition: walletview.cpp:250
const PlatformStyle * platformStyle
Definition: walletview.h:75
void showOutOfSyncWarning(bool fShow)
Definition: walletview.cpp:267
void gotoHistoryPage()
Definition: walletview.cpp:212
ReceiveCoinsDialog * receiveCoinsPage
Definition: walletview.h:65
void changePassphrase()
Definition: walletview.cpp:307
WalletView(const PlatformStyle *platformStyle, QWidget *parent)
Definition: walletview.cpp:35
ClientModel * clientModel
Definition: walletview.h:60
void lockWallet()
Definition: walletview.cpp:328
bool handlePaymentRequest(const SendCoinsRecipient &recipient)
Definition: walletview.cpp:262
OverviewPage * overviewPage
Definition: walletview.h:63
void processNewTransaction(const QModelIndex &parent, int start, int)
Definition: walletview.cpp:187
WalletModel * walletModel
Definition: walletview.h:61
void setWalletModel(WalletModel *walletModel)
Definition: walletview.cpp:147
void gotoSendCoinsPage(QString addr="")
Definition: walletview.cpp:230
void encryptionStatusChanged(int status)
void hdEnabledStatusChanged(int hdEnabled)
void gotoMasternodePage()
Definition: walletview.cpp:217
QLabel * transactionSum
Definition: walletview.h:74
void showProgress(const QString &title, int nProgress)
Definition: walletview.cpp:356