7 class AddressTableModel;
8 class TransactionTableModel;
11 // Interface to a Bitcoin wallet
12 class WalletModel : public QObject
16 explicit WalletModel(CWallet *wallet, QObject *parent = 0);
24 AmountWithFeeExceedsBalance,
29 OptionsModel *getOptionsModel();
30 AddressTableModel *getAddressTableModel();
31 TransactionTableModel *getTransactionTableModel();
33 qint64 getBalance() const;
34 qint64 getUnconfirmedBalance() const;
35 int getNumTransactions() const;
38 StatusCode sendCoins(const QString &payTo, qint64 payAmount, const QString &addToAddressBookAs=QString());
42 // Wallet has an options model for wallet-specific options
43 // (transaction fee, for example)
44 OptionsModel *optionsModel;
46 AddressTableModel *addressTableModel;
47 TransactionTableModel *transactionTableModel;
50 void balanceChanged(qint64 balance);
51 void numTransactionsChanged(int count);
53 // Asynchronous error notification
54 void error(const QString &title, const QString &message);
63 #endif // WALLETMODEL_H