diff options
| author | Jaquee <jaquee.monero@gmail.com> | 2017-08-06 16:27:55 +0200 |
|---|---|---|
| committer | Jaquee <jaquee.monero@gmail.com> | 2017-11-01 17:02:44 +0100 |
| commit | 77335b300a45645e8c01bb3c167877070f7a3f29 (patch) | |
| tree | b70fcab58d4288a3e075de08465e9e7cc88c9240 /src/QR-Code-scanner/QrCodeScanner.cpp | |
| parent | 6f95f8a7545bbdc25750412c54a92ddc5224b3ad (diff) | |
| download | monzero-gui-77335b300a45645e8c01bb3c167877070f7a3f29.tar.gz monzero-gui-77335b300a45645e8c01bb3c167877070f7a3f29.tar.xz monzero-gui-77335b300a45645e8c01bb3c167877070f7a3f29.zip | |
QrCodeScanner: parse extra parameters
Diffstat (limited to 'src/QR-Code-scanner/QrCodeScanner.cpp')
| -rw-r--r-- | src/QR-Code-scanner/QrCodeScanner.cpp | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/src/QR-Code-scanner/QrCodeScanner.cpp b/src/QR-Code-scanner/QrCodeScanner.cpp index 1129e986..62c639f9 100644 --- a/src/QR-Code-scanner/QrCodeScanner.cpp +++ b/src/QR-Code-scanner/QrCodeScanner.cpp @@ -61,15 +61,23 @@ void QrCodeScanner::processCode(int type, const QString &data) emit notifyError(error); return; } + QVariantMap parsed_unknown_parameters; if(unknown_parameters.size() > 0) { qDebug() << "unknown parameters " << unknown_parameters; + foreach(const QString &item, unknown_parameters ) + { + QStringList parsed_item = item.split("="); + if(parsed_item.size() == 2) { + parsed_unknown_parameters.insert(parsed_item[0], parsed_item[1]); + } + } emit notifyError(error, true); } qDebug() << "Parsed URI : " << address << " " << payment_id << " " << amount << " " << tx_description << " " << recipient_name << " " << error; QString s_amount = WalletManager::instance()->displayAmount(amount); qDebug() << "Amount passed " << s_amount ; - emit decoded(address, payment_id, s_amount, tx_description, recipient_name); + emit decoded(address, payment_id, s_amount, tx_description, recipient_name, parsed_unknown_parameters); } void QrCodeScanner::processFrame(QVideoFrame frame) { @@ -102,3 +110,15 @@ void QrCodeScanner::timerEvent(QTimerEvent *event) } } +QrCodeScanner::~QrCodeScanner() +{ + m_thread->stop(); + m_thread->quit(); + if(!m_thread->wait(5000)) + { + m_thread->terminate(); + m_thread->wait(); + } + +} + |
