5 #ifndef BITCOIN_QT_WALLETMODEL_H
6 #define BITCOIN_QT_WALLETMODEL_H
67 template <
typename Stream,
typename Operation>
69 std::string sAddress =
address.toStdString();
70 std::string sLabel =
label.toStdString();
71 std::string sMessage =
message.toStdString();
72 std::string sPaymentRequest;
85 if (ser_action.ForRead())
87 address = QString::fromStdString(sAddress);
88 label = QString::fromStdString(sLabel);
89 message = QString::fromStdString(sMessage);
90 if (!sPaymentRequest.empty())
91 paymentRequest.
parse(QByteArray::fromRawData(sPaymentRequest.data(), sPaymentRequest.size()));
195 void getOutputs(
const std::vector<COutPoint>& vOutpoints, std::vector<COutput>& vOutputs);
197 void listCoins(std::map<QString, std::vector<COutput> >& mapCoins)
const;
205 bool saveReceiveRequest(
const std::string &sAddress,
const int64_t nId,
const std::string &sRequest);
248 const CAmount& watchOnlyBalance,
const CAmount& watchUnconfBalance,
const CAmount& watchImmatureBalance);
276 void updateAddressBook(
const QString &address,
const QString &label,
bool isMine,
const QString &purpose,
int status);
int64_t CAmount
Amount in satoshis (Can be negative)
Qt model of the address book in the core.
An encapsulated private key.
A reference to a CKey: the Hash160 of its serialized public key.
An outpoint - a combination of a transaction hash and an index n into its vout.
An encapsulated public key.
A CWallet is an extension of a keystore, which also maintains a set of transactions and balances,...
Interface from Qt to configuration data structure for Bitcoin client.
bool IsInitialized() const
bool parse(const QByteArray &data)
bool SerializeToString(std::string *output) const
Model for list of recently generated payment requests / bitcoin: URIs.
PaymentRequestPlus paymentRequest
static const int CURRENT_VERSION
bool fSubtractFeeFromAmount
SendCoinsRecipient(const QString &addr, const QString &_label, const CAmount &_amount, const QString &_message)
void SerializationOp(Stream &s, Operation ser_action)
QString authenticatedMerchant
UI model for the transaction table of a wallet.
UnlockContext(WalletModel *wallet, bool valid, bool relock)
void CopyFrom(const UnlockContext &rhs)
UnlockContext & operator=(const UnlockContext &rhs)
UnlockContext(const UnlockContext &obj)
Interface to Bitcoin wallet from Qt view code.
CAmount cachedWatchUnconfBalance
CAmount cachedImmatureBalance
OptionsModel * optionsModel
bool validateAddress(const QString &address)
AddressTableModel * addressTableModel
void unlockCoin(COutPoint &output)
void loadReceiveRequests(std::vector< std::string > &vReceiveRequests)
EncryptionStatus cachedEncryptionStatus
WalletModel(const PlatformStyle *platformStyle, CWallet *wallet, OptionsModel *optionsModel, QObject *parent=0)
void listLockedCoins(std::vector< COutPoint > &vOutpts)
bool transactionCanBeAbandoned(uint256 hash) const
bool getPrivKey(const CKeyID &address, CKey &vchPrivKeyOut) const
bool setWalletEncrypted(bool encrypted, const SecureString &passphrase)
CAmount getBalance(const CCoinControl *coinControl=NULL) const
void encryptionStatusChanged(int status)
CAmount getUnconfirmedBalance() const
void pollBalanceChanged()
void getOutputs(const std::vector< COutPoint > &vOutpoints, std::vector< COutput > &vOutputs)
SendCoinsReturn sendCoins(WalletModelTransaction &transaction)
void balanceChanged(const CAmount &balance, const CAmount &unconfirmedBalance, const CAmount &immatureBalance, const CAmount &watchOnlyBalance, const CAmount &watchUnconfBalance, const CAmount &watchImmatureBalance)
RecentRequestsTableModel * recentRequestsTableModel
TransactionTableModel * transactionTableModel
void notifyWatchonlyChanged(bool fHaveWatchonly)
bool changePassphrase(const SecureString &oldPass, const SecureString &newPass)
CAmount getWatchUnconfirmedBalance() const
bool havePrivKey(const CKeyID &address) const
CAmount cachedWatchImmatureBalance
void showProgress(const QString &title, int nProgress)
bool setWalletLocked(bool locked, const SecureString &passPhrase=SecureString())
CAmount getWatchBalance() const
void message(const QString &title, const QString &message, unsigned int style)
CAmount cachedWatchOnlyBalance
bool saveReceiveRequest(const std::string &sAddress, const int64_t nId, const std::string &sRequest)
AddressTableModel * getAddressTableModel()
SendCoinsReturn prepareTransaction(WalletModelTransaction &transaction, const CCoinControl *coinControl=NULL)
CAmount cachedUnconfirmedBalance
OptionsModel * getOptionsModel()
void lockCoin(COutPoint &output)
CAmount getWatchImmatureBalance() const
bool abandonTransaction(uint256 hash) const
bool backupWallet(const QString &filename)
EncryptionStatus getEncryptionStatus() const
RecentRequestsTableModel * getRecentRequestsTableModel()
bool fForceCheckBalanceChanged
bool haveWatchOnly() const
bool getPubKey(const CKeyID &address, CPubKey &vchPubKeyOut) const
bool isLockedCoin(uint256 hash, unsigned int n) const
CAmount getImmatureBalance() const
void unsubscribeFromCoreSignals()
bool isSpent(const COutPoint &outpoint) const
void coinsSent(CWallet *wallet, SendCoinsRecipient recipient, QByteArray transaction)
void updateAddressBook(const QString &address, const QString &label, bool isMine, const QString &purpose, int status)
void checkBalanceChanged()
void updateWatchOnlyFlag(bool fHaveWatchonly)
void listCoins(std::map< QString, std::vector< COutput > > &mapCoins) const
UnlockContext requestUnlock()
static bool isWalletEnabled()
@ AmountWithFeeExceedsBalance
@ TransactionCreationFailed
@ TransactionCommitFailed
int getDefaultConfirmTarget() const
void subscribeToCoreSignals()
TransactionTableModel * getTransactionTableModel()
Data model for a walletmodel transaction.
std::basic_string< char, std::char_traits< char >, secure_allocator< char > > SecureString
QString reasonCommitFailed
SendCoinsReturn(StatusCode _status=OK, QString _reasonCommitFailed="")