diff options
Diffstat (limited to 'src/interfaces/wallet.h')
-rw-r--r-- | src/interfaces/wallet.h | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/interfaces/wallet.h b/src/interfaces/wallet.h index b37763e686..8c31112fc9 100644 --- a/src/interfaces/wallet.h +++ b/src/interfaces/wallet.h @@ -35,6 +35,7 @@ struct bilingual_str; namespace wallet { class CCoinControl; class CWallet; +enum class AddressPurpose; enum isminetype : unsigned int; struct CRecipient; struct WalletContext; @@ -103,7 +104,7 @@ public: virtual bool haveWatchOnly() = 0; //! Add or update address. - virtual bool setAddressBook(const CTxDestination& dest, const std::string& name, const std::string& purpose) = 0; + virtual bool setAddressBook(const CTxDestination& dest, const std::string& name, const std::optional<wallet::AddressPurpose>& purpose) = 0; // Remove address. virtual bool delAddressBook(const CTxDestination& dest) = 0; @@ -112,7 +113,7 @@ public: virtual bool getAddress(const CTxDestination& dest, std::string* name, wallet::isminetype* is_mine, - std::string* purpose) = 0; + wallet::AddressPurpose* purpose) = 0; //! Get wallet address list. virtual std::vector<WalletAddress> getAddresses() const = 0; @@ -293,7 +294,7 @@ public: using AddressBookChangedFn = std::function<void(const CTxDestination& address, const std::string& label, bool is_mine, - const std::string& purpose, + wallet::AddressPurpose purpose, ChangeType status)>; virtual std::unique_ptr<Handler> handleAddressBookChanged(AddressBookChangedFn fn) = 0; @@ -352,11 +353,11 @@ struct WalletAddress { CTxDestination dest; wallet::isminetype is_mine; + wallet::AddressPurpose purpose; std::string name; - std::string purpose; - WalletAddress(CTxDestination dest, wallet::isminetype is_mine, std::string name, std::string purpose) - : dest(std::move(dest)), is_mine(is_mine), name(std::move(name)), purpose(std::move(purpose)) + WalletAddress(CTxDestination dest, wallet::isminetype is_mine, wallet::AddressPurpose purpose, std::string name) + : dest(std::move(dest)), is_mine(is_mine), purpose(std::move(purpose)), name(std::move(name)) { } }; |