// Copyright (c) 2011-2021 The Bitcoin Core developers // Distributed under the MIT software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. #include #include #include #include #include #include #include #include OpenURIDialog::OpenURIDialog(const PlatformStyle* platformStyle, QWidget* parent) : QDialog(parent, GUIUtil::dialog_flags), ui(new Ui::OpenURIDialog), m_platform_style(platformStyle) { ui->setupUi(this); ui->pasteButton->setIcon(m_platform_style->SingleColorIcon(":/icons/editpaste")); QObject::connect(ui->pasteButton, &QAbstractButton::clicked, ui->uriEdit, &QLineEdit::paste); GUIUtil::handleCloseWindowShortcut(this); } OpenURIDialog::~OpenURIDialog() { delete ui; } QString OpenURIDialog::getURI() { return ui->uriEdit->text(); } void OpenURIDialog::accept() { SendCoinsRecipient rcp; if (GUIUtil::parseBitcoinURI(getURI(), &rcp)) { /* Only accept value URIs */ QDialog::accept(); } else { ui->uriEdit->setValid(false); } } void OpenURIDialog::changeEvent(QEvent* e) { if (e->type() == QEvent::PaletteChange) { ui->pasteButton->setIcon(m_platform_style->SingleColorIcon(":/icons/editpaste")); } QDialog::changeEvent(e); }