Skip to content

Commit

Permalink
qt: add message field to SendCoinsRecipient
Browse files Browse the repository at this point in the history
Also update URI parsing to fill in this field.
Note that the message is not currently used in any way with the client.
It should be stored with the transaction.
  • Loading branch information
laanwj committed Oct 23, 2013
1 parent 8209592 commit 03535ac
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 3 deletions.
5 changes: 5 additions & 0 deletions src/qt/guiutil.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,11 @@ bool parseBitcoinURI(const QUrl &uri, SendCoinsRecipient *out)
rv.label = i->second;
fShouldReturnFalse = false;
}
if (i->first == "message")
{
rv.message = i->second;
fShouldReturnFalse = false;
}
else if (i->first == "amount")
{
if(!i->second.isEmpty())
Expand Down
3 changes: 1 addition & 2 deletions src/qt/test/uritests.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -50,9 +50,8 @@ void URITests::uriTests()
QVERIFY(rv.address == QString("175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W"));
QVERIFY(rv.label == QString());

// We currently don't implement the message parameter (ok, yea, we break spec...)
uri.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?req-message=Wikipedia Example Address"));
QVERIFY(!GUIUtil::parseBitcoinURI(uri, &rv));
QVERIFY(GUIUtil::parseBitcoinURI(uri, &rv));

uri.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?amount=1,000&label=Wikipedia Example"));
QVERIFY(!GUIUtil::parseBitcoinURI(uri, &rv));
Expand Down
5 changes: 4 additions & 1 deletion src/qt/walletmodel.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,14 @@ QT_END_NAMESPACE
class SendCoinsRecipient
{
public:
SendCoinsRecipient() : amount(0) { }
explicit SendCoinsRecipient() : amount(0) { }
explicit SendCoinsRecipient(const QString &addr, const QString &label, quint64 amount, const QString &message):
address(addr), label(label), amount(amount), message(message) {}

QString address;
QString label;
qint64 amount;
QString message;

// If from a payment request, paymentRequest.IsInitialized() will be true
PaymentRequestPlus paymentRequest;
Expand Down

0 comments on commit 03535ac

Please sign in to comment.