Merge #8288: qt: Network-specific example address
4f44cb6
qt: Network-specific example address (Wladimir J. van der Laan)
This commit is contained in:
commit
91abb77970
1 changed files with 19 additions and 1 deletions
|
@ -107,6 +107,23 @@ QFont fixedPitchFont()
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Just some dummy data to generate an convincing random-looking (but consistent) address
|
||||||
|
static const uint8_t dummydata[] = {0xeb,0x15,0x23,0x1d,0xfc,0xeb,0x60,0x92,0x58,0x86,0xb6,0x7d,0x06,0x52,0x99,0x92,0x59,0x15,0xae,0xb1,0x72,0xc0,0x66,0x47};
|
||||||
|
|
||||||
|
// Generate a dummy address with invalid CRC, starting with the network prefix.
|
||||||
|
static std::string DummyAddress(const CChainParams ¶ms)
|
||||||
|
{
|
||||||
|
std::vector<unsigned char> sourcedata = params.Base58Prefix(CChainParams::PUBKEY_ADDRESS);
|
||||||
|
sourcedata.insert(sourcedata.end(), dummydata, dummydata + sizeof(dummydata));
|
||||||
|
for(int i=0; i<256; ++i) { // Try every trailing byte
|
||||||
|
std::string s = EncodeBase58(begin_ptr(sourcedata), end_ptr(sourcedata));
|
||||||
|
if (!CBitcoinAddress(s).IsValid())
|
||||||
|
return s;
|
||||||
|
sourcedata[sourcedata.size()-1] += 1;
|
||||||
|
}
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
void setupAddressWidget(QValidatedLineEdit *widget, QWidget *parent)
|
void setupAddressWidget(QValidatedLineEdit *widget, QWidget *parent)
|
||||||
{
|
{
|
||||||
parent->setFocusProxy(widget);
|
parent->setFocusProxy(widget);
|
||||||
|
@ -115,7 +132,8 @@ void setupAddressWidget(QValidatedLineEdit *widget, QWidget *parent)
|
||||||
#if QT_VERSION >= 0x040700
|
#if QT_VERSION >= 0x040700
|
||||||
// We don't want translators to use own addresses in translations
|
// We don't want translators to use own addresses in translations
|
||||||
// and this is the only place, where this address is supplied.
|
// and this is the only place, where this address is supplied.
|
||||||
widget->setPlaceholderText(QObject::tr("Enter a Bitcoin address (e.g. %1)").arg("1NS17iag9jJgTHD1VXjvLCEnZuQ3rJDE9L"));
|
widget->setPlaceholderText(QObject::tr("Enter a Bitcoin address (e.g. %1)").arg(
|
||||||
|
QString::fromStdString(DummyAddress(Params()))));
|
||||||
#endif
|
#endif
|
||||||
widget->setValidator(new BitcoinAddressEntryValidator(parent));
|
widget->setValidator(new BitcoinAddressEntryValidator(parent));
|
||||||
widget->setCheckValidator(new BitcoinAddressCheckValidator(parent));
|
widget->setCheckValidator(new BitcoinAddressCheckValidator(parent));
|
||||||
|
|
Loading…
Reference in a new issue