X-Git-Url: https://git.novaco.in/?a=blobdiff_plain;f=src%2Fqt%2Fwalletmodel.h;h=f15500601bb045dc635bf26b62aa2d7d872824bf;hb=1c4fc9052a444c114d9c1501d2c6d1305de650d0;hp=b024edbc034b246d1249f593afeb99a3b0a428cf;hpb=c0afe6a6089fe277865a89eefff01c60ad156104;p=novacoin.git diff --git a/src/qt/walletmodel.h b/src/qt/walletmodel.h index b024edb..f155006 100644 --- a/src/qt/walletmodel.h +++ b/src/qt/walletmodel.h @@ -2,6 +2,8 @@ #define WALLETMODEL_H #include +#include +#include #include "allocators.h" /* for SecureString */ @@ -9,6 +11,12 @@ class OptionsModel; class AddressTableModel; class TransactionTableModel; class CWallet; +class CKeyID; +class CPubKey; +class COutput; +class COutPoint; +class uint256; +class CCoinControl; QT_BEGIN_NAMESPACE class QTimer; @@ -56,6 +64,7 @@ public: TransactionTableModel *getTransactionTableModel(); qint64 getBalance() const; + qint64 getBalanceWatchOnly() const; qint64 getStake() const; qint64 getUnconfirmedBalance() const; qint64 getImmatureBalance() const; @@ -68,7 +77,7 @@ public: // Return status record for SendCoins, contains error id + information struct SendCoinsReturn { - SendCoinsReturn(StatusCode status, + SendCoinsReturn(StatusCode status=Aborted, qint64 fee=0, QString hex=QString()): status(status), fee(fee), hex(hex) {} @@ -78,7 +87,7 @@ public: }; // Send coins to a list of recipients - SendCoinsReturn sendCoins(const QList &recipients); + SendCoinsReturn sendCoins(const QList &recipients, const CCoinControl *coinControl=NULL); // Wallet encryption bool setWalletEncrypted(bool encrypted, const SecureString &passphrase); @@ -88,6 +97,12 @@ public: // Wallet backup bool backupWallet(const QString &filename); + bool dumpWallet(const QString &filename); + bool importWallet(const QString &filename); + + void getStakeWeight(quint64& nMinWeight, quint64& nMaxWeight, quint64& nWeight); + void getStakeWeightFromValue(const qint64& nTime, const qint64& nValue, quint64& nWeight); + // RAI object for unlocking wallet, returned by requestUnlock() class UnlockContext { @@ -110,6 +125,14 @@ public: UnlockContext requestUnlock(); + bool getPubKey(const CKeyID &address, CPubKey& vchPubKeyOut) const; + void getOutputs(const std::vector& vOutpoints, std::vector& vOutputs); + void listCoins(std::map >& mapCoins) const; + bool isLockedCoin(uint256 hash, unsigned int n) const; + void lockCoin(COutPoint& output); + void unlockCoin(COutPoint& output); + void listLockedCoins(std::vector& vOutpts); + private: CWallet *wallet; @@ -148,7 +171,7 @@ public slots: signals: // Signal that balance in wallet changed - void balanceChanged(qint64 balance, qint64 stake, qint64 unconfirmedBalance, qint64 immatureBalance); + void balanceChanged(qint64 total, qint64 watchOnly, qint64 stake, qint64 unconfirmedBalance, qint64 immatureBalance); // Number of transactions in wallet changed void numTransactionsChanged(int count);