aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Westbrook <[email protected]>2014-02-02 15:57:59 -0800
committerAlan Westbrook <[email protected]>2014-02-02 15:57:59 -0800
commit18ccdab2813b89b73b52aaeada3c9e2012a228d9 (patch)
tree51cb71f7b641c1ae0d86101da5d54c7a550e0640
parentURL handling (diff)
downloaddiscoin-18ccdab2813b89b73b52aaeada3c9e2012a228d9.tar.xz
discoin-18ccdab2813b89b73b52aaeada3c9e2012a228d9.zip
Fix Transaction to string conversion and add shortcut for dogechain
There was literally no reason to add -000 to transaction string conversion. The idx itself is used for sorting internally Add a menu item to load up a transaction in Dogechain.info
-rw-r--r--src/qt/transactionrecord.cpp2
-rw-r--r--src/qt/transactionrecord.h3
-rw-r--r--src/qt/transactionview.cpp19
-rw-r--r--src/qt/transactionview.h1
4 files changed, 22 insertions, 3 deletions
diff --git a/src/qt/transactionrecord.cpp b/src/qt/transactionrecord.cpp
index 40a5f735c..a3cd970a8 100644
--- a/src/qt/transactionrecord.cpp
+++ b/src/qt/transactionrecord.cpp
@@ -226,6 +226,6 @@ bool TransactionRecord::statusUpdateNeeded()
std::string TransactionRecord::getTxID()
{
- return hash.ToString() + strprintf("-%03d", idx);
+ return hash.ToString(); // + strprintf("-%03d", idx);
}
diff --git a/src/qt/transactionrecord.h b/src/qt/transactionrecord.h
index e3ae213c1..94cb26106 100644
--- a/src/qt/transactionrecord.h
+++ b/src/qt/transactionrecord.h
@@ -90,8 +90,7 @@ public:
TransactionRecord(uint256 hash, int64 time,
Type type, const std::string &address,
int64 debit, int64 credit):
- hash(hash), time(time), type(type), address(address), debit(debit), credit(credit),
- idx(0)
+ hash(hash), time(time), type(type), address(address), debit(debit), credit(credit), idx(0)
{
}
diff --git a/src/qt/transactionview.cpp b/src/qt/transactionview.cpp
index a43e29c47..1fc5e3403 100644
--- a/src/qt/transactionview.cpp
+++ b/src/qt/transactionview.cpp
@@ -25,6 +25,8 @@
#include <QMenu>
#include <QLabel>
#include <QDateTimeEdit>
+#include <QDesktopServices>
+#include <QUrl>
TransactionView::TransactionView(QWidget *parent) :
QWidget(parent), model(0), transactionProxyModel(0),
@@ -126,14 +128,18 @@ TransactionView::TransactionView(QWidget *parent) :
QAction *copyTxIDAction = new QAction(tr("Copy transaction ID"), this);
QAction *editLabelAction = new QAction(tr("Edit label"), this);
QAction *showDetailsAction = new QAction(tr("Show transaction details"), this);
+ QAction *viewOnDogechain = new QAction(tr("Show transaction on Dogechain"), this);
contextMenu = new QMenu();
contextMenu->addAction(copyAddressAction);
contextMenu->addAction(copyLabelAction);
contextMenu->addAction(copyAmountAction);
contextMenu->addAction(copyTxIDAction);
+ contextMenu->addSeparator();
contextMenu->addAction(editLabelAction);
contextMenu->addAction(showDetailsAction);
+ contextMenu->addSeparator();
+ contextMenu->addAction(viewOnDogechain);
// Connect actions
connect(dateWidget, SIGNAL(activated(int)), this, SLOT(chooseDate(int)));
@@ -150,6 +156,7 @@ TransactionView::TransactionView(QWidget *parent) :
connect(copyTxIDAction, SIGNAL(triggered()), this, SLOT(copyTxID()));
connect(editLabelAction, SIGNAL(triggered()), this, SLOT(editLabel()));
connect(showDetailsAction, SIGNAL(triggered()), this, SLOT(showDetails()));
+ connect(viewOnDogechain, SIGNAL(triggered()), this, SLOT(viewOnDogechain()));
}
void TransactionView::setModel(WalletModel *model)
@@ -379,6 +386,18 @@ void TransactionView::showDetails()
}
}
+void TransactionView::viewOnDogechain()
+{
+ QModelIndexList selection = transactionView->selectionModel()->selectedRows();
+ if(!selection.isEmpty())
+ {
+ QString format("http://dogechain.info/tx/");
+ format += selection.at(0).data(TransactionTableModel::TxIDRole).toString();
+
+ QDesktopServices::openUrl(QUrl(format));
+ }
+}
+
QWidget *TransactionView::createDateRangeWidget()
{
dateRangeWidget = new QFrame();
diff --git a/src/qt/transactionview.h b/src/qt/transactionview.h
index bb41a83e3..d05a0073a 100644
--- a/src/qt/transactionview.h
+++ b/src/qt/transactionview.h
@@ -67,6 +67,7 @@ private slots:
void copyLabel();
void copyAmount();
void copyTxID();
+ void viewOnDogechain();
signals:
void doubleClicked(const QModelIndex&);