diff options
| author | Wladimir J. van der Laan <[email protected]> | 2011-08-07 16:04:48 +0200 |
|---|---|---|
| committer | Wladimir J. van der Laan <[email protected]> | 2011-08-07 16:04:48 +0200 |
| commit | db7f023417eeeb96eed35c9d06541544abcd7033 (patch) | |
| tree | 2f10b47a3090b5a7b1ae2c54342d0a7ed70b6d3e /src/qt/guiutil.cpp | |
| parent | Merge branch 'master' of https://github.com/bitcoin/bitcoin (diff) | |
| download | discoin-db7f023417eeeb96eed35c9d06541544abcd7033.tar.xz discoin-db7f023417eeeb96eed35c9d06541544abcd7033.zip | |
Accept "bitcoin:" URL drops from browsers
Diffstat (limited to 'src/qt/guiutil.cpp')
| -rw-r--r-- | src/qt/guiutil.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/qt/guiutil.cpp b/src/qt/guiutil.cpp index ece069072..3516d4f83 100644 --- a/src/qt/guiutil.cpp +++ b/src/qt/guiutil.cpp @@ -1,5 +1,7 @@ #include "guiutil.h" #include "bitcoinaddressvalidator.h" +#include "walletmodel.h" +#include "bitcoinunits.h" #include "headers.h" @@ -8,6 +10,7 @@ #include <QDoubleValidator> #include <QFont> #include <QLineEdit> +#include <QUrl> QString GUIUtil::DateTimeStr(qint64 nTime) { @@ -41,3 +44,22 @@ void GUIUtil::setupAmountWidget(QLineEdit *widget, QWidget *parent) widget->setValidator(amountValidator); widget->setAlignment(Qt::AlignRight|Qt::AlignVCenter); } + +bool GUIUtil::parseBitcoinURL(const QUrl *url, SendCoinsRecipient *out) +{ + if(url->scheme() != QString("bitcoin")) + return false; + + SendCoinsRecipient rv; + rv.address = url->path(); + rv.label = url->queryItemValue("label"); + if(!BitcoinUnits::parse(BitcoinUnits::BTC, url->queryItemValue("amount"), &rv.amount)) + { + return false; + } + if(out) + { + *out = rv; + } + return true; +} |