| 47 | } |
| 48 | |
| 49 | void ReceiveRequestDialog::setInfo(const SendCoinsRecipient &_info) |
| 50 | { |
| 51 | this->info = _info; |
| 52 | setWindowTitle(tr("Request payment to %1").arg(info.label.isEmpty() ? info.address : info.label)); |
| 53 | QString uri = GUIUtil::formatBitcoinURI(info); |
| 54 | |
| 55 | #ifdef USE_QRCODE |
| 56 | if (ui->qr_code->setQR(uri, info.address)) { |
| 57 | connect(ui->btnSaveAs, &QPushButton::clicked, ui->qr_code, &QRImageWidget::saveImage); |
| 58 | } else { |
| 59 | ui->btnSaveAs->setEnabled(false); |
| 60 | } |
| 61 | #else |
| 62 | ui->btnSaveAs->hide(); |
| 63 | ui->qr_code->hide(); |
| 64 | #endif |
| 65 | |
| 66 | //ui->uri_content->setText("<a href=\"" + uri + "\">" + GUIUtil::HtmlEscape(uri) + "</a>"); |
| 67 | ui->address_content->setText(info.address); |
| 68 | |
| 69 | if (!info.amount) { |
| 70 | ui->amount_tag->hide(); |
| 71 | ui->amount_content->hide(); |
| 72 | } // Amount is set in updateDisplayUnit() slot. |
| 73 | updateDisplayUnit(); |
| 74 | |
| 75 | if (!info.label.isEmpty()) { |
| 76 | ui->label_content->setText(info.label); |
| 77 | } else { |
| 78 | ui->label_tag->hide(); |
| 79 | ui->label_content->hide(); |
| 80 | } |
| 81 | |
| 82 | if (!info.message.isEmpty()) { |
| 83 | ui->message_content->setText(info.message); |
| 84 | } else { |
| 85 | ui->message_tag->hide(); |
| 86 | ui->message_content->hide(); |
| 87 | } |
| 88 | |
| 89 | if (!model->getWalletName().isEmpty()) { |
| 90 | ui->wallet_content->setText(model->getWalletName()); |
| 91 | } else { |
| 92 | ui->wallet_tag->hide(); |
| 93 | ui->wallet_content->hide(); |
| 94 | } |
| 95 | |
| 96 | ui->btnVerify->setVisible(model->wallet().hasExternalSigner()); |
| 97 | |
| 98 | connect(ui->btnVerify, &QPushButton::clicked, [this] { |
| 99 | model->displayAddress(info.address.toStdString()); |
| 100 | }); |
| 101 | } |
| 102 | |
| 103 | void ReceiveRequestDialog::updateDisplayUnit() |
| 104 | { |
no test coverage detected