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 int getNumTransactions() const;
36 /* Look up label for address in address book, if not found return empty string.
38 QString labelForAddress(const QString &address) const;
41 StatusCode sendCoins(const QString &payTo, qint64 payAmount, const QString &addToAddressBookAs=QString());
45 // Wallet has an options model for wallet-specific options
46 // (transaction fee, for example)
47 OptionsModel *optionsModel;
49 AddressTableModel *addressTableModel;
50 TransactionTableModel *transactionTableModel;
53 void balanceChanged(qint64 balance);
54 void numTransactionsChanged(int count);
56 // Asynchronous error notification
57 void error(const QString &title, const QString &message);
66 #endif // WALLETMODEL_H