BSHA3  0.17.99
P2P Blockchain, based on Bitcoin
openuridialog.cpp
Go to the documentation of this file.
1 // Copyright (c) 2011-2018 The Bitcoin Core developers
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4 
5 #include <qt/openuridialog.h>
6 #include <qt/forms/ui_openuridialog.h>
7 
8 #include <qt/guiutil.h>
9 #include <qt/walletmodel.h>
10 
11 #include <QUrl>
12 
13 OpenURIDialog::OpenURIDialog(QWidget *parent) :
14  QDialog(parent),
15  ui(new Ui::OpenURIDialog)
16 {
17  ui->setupUi(this);
18  ui->uriEdit->setPlaceholderText("bitcoin:");
19 }
20 
22 {
23  delete ui;
24 }
25 
27 {
28  return ui->uriEdit->text();
29 }
30 
32 {
34  if(GUIUtil::parseBitcoinURI(getURI(), &rcp))
35  {
36  /* Only accept value URIs */
37  QDialog::accept();
38  } else {
39  ui->uriEdit->setValid(false);
40  }
41 }
42 
44 {
45  QString filename = GUIUtil::getOpenFileName(this, tr("Select payment request file to open"), "", "", nullptr);
46  if(filename.isEmpty())
47  return;
48  QUrl fileUri = QUrl::fromLocalFile(filename);
49  ui->uriEdit->setText("bitcoin:?r=" + QUrl::toPercentEncoding(fileUri.toString()));
50 }
QString getOpenFileName(QWidget *parent, const QString &caption, const QString &dir, const QString &filter, QString *selectedSuffixOut)
Get open filename, convenience wrapper for QFileDialog::getOpenFileName.
Definition: guiutil.cpp:297
Ui::OpenURIDialog * ui
Definition: openuridialog.h:31
OpenURIDialog(QWidget *parent)
bool parseBitcoinURI(const QUrl &uri, SendCoinsRecipient *out)
Definition: guiutil.cpp:117
void on_selectFileButton_clicked()
QString getURI()