Refactor: split CKeyID/CScriptID/CTxDestination from CBitcoinAddress
This introduces internal types: * CKeyID: reference (hash160) of a key * CScriptID: reference (hash160) of a script * CTxDestination: a boost::variant of the former two CBitcoinAddress is retrofitted to be a Base58 encoding of a CTxDestination. This allows all internal code to only use the internal types, and only have RPC and GUI depend on the base58 code. Furthermore, the header dependencies are a lot saner now. base58.h is at the top (right below rpc and gui) instead of at the bottom. For the rest: wallet -> script -> keystore -> key. Only keystore still requires a forward declaration of CScript. Solving that would require splitting script into two layers.
This commit is contained in:
@@ -14,6 +14,7 @@
|
||||
#include "walletmodel.h"
|
||||
#include "addresstablemodel.h"
|
||||
#include "guiutil.h"
|
||||
#include "base58.h"
|
||||
|
||||
VerifyMessageDialog::VerifyMessageDialog(AddressTableModel *addressModel, QWidget *parent) :
|
||||
QDialog(parent),
|
||||
@@ -62,7 +63,7 @@ bool VerifyMessageDialog::checkAddress()
|
||||
return false;
|
||||
}
|
||||
|
||||
CBitcoinAddress address(key.GetPubKey());
|
||||
CBitcoinAddress address(key.GetPubKey().GetID());
|
||||
QString qStringAddress = QString::fromStdString(address.ToString());
|
||||
ui->lnAddress->setText(qStringAddress);
|
||||
ui->copyToClipboard->setEnabled(true);
|
||||
|
||||
Reference in New Issue
Block a user