aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2011-06-10 21:59:29 +0200
committerWladimir J. van der Laan <laanwj@gmail.com>2011-06-10 21:59:29 +0200
commit725d460e4b2a2d1d5e3786cb184ad87dcff72d2c (patch)
tree550fe73ad5fb64ae9bf9d9d84c852186fca3fe3f
parenta777f7b9b5225f4fe753ce149fe0dc3c9c52f999 (diff)
downloadbitcoin-725d460e4b2a2d1d5e3786cb184ad87dcff72d2c.tar.xz
show notification balloon on incoming transaction
-rw-r--r--gui/include/bitcoingui.h1
-rw-r--r--gui/src/bitcoingui.cpp25
2 files changed, 26 insertions, 0 deletions
diff --git a/gui/include/bitcoingui.h b/gui/include/bitcoingui.h
index e18e2ff21a..96452ef18b 100644
--- a/gui/include/bitcoingui.h
+++ b/gui/include/bitcoingui.h
@@ -82,6 +82,7 @@ private slots:
void copyClipboardClicked();
void trayIconActivated(QSystemTrayIcon::ActivationReason reason);
void transactionDetails(const QModelIndex& idx);
+ void incomingTransaction(const QModelIndex & parent, int start, int end);
};
#endif
diff --git a/gui/src/bitcoingui.cpp b/gui/src/bitcoingui.cpp
index 51dcf87dc8..96125ef078 100644
--- a/gui/src/bitcoingui.cpp
+++ b/gui/src/bitcoingui.cpp
@@ -257,6 +257,9 @@ void BitcoinGUI::setTabsModel(QAbstractItemModel *transaction_model)
transaction_table->horizontalHeader()->resizeSection(
TransactionTableModel::Credit, 79);
}
+
+ connect(transaction_model, SIGNAL(rowsInserted(const QModelIndex &, int, int)),
+ this, SLOT(incomingTransaction(const QModelIndex &, int, int)));
}
void BitcoinGUI::sendcoinsClicked()
@@ -407,3 +410,25 @@ void BitcoinGUI::transactionDetails(const QModelIndex& idx)
dlg.exec();
}
+void BitcoinGUI::incomingTransaction(const QModelIndex & parent, int start, int end)
+{
+ TransactionTableModel *ttm = model->getTransactionTableModel();
+ qint64 credit = ttm->index(start, TransactionTableModel::Credit, parent)
+ .data(Qt::EditRole).toULongLong();
+ qint64 debit = ttm->index(start, TransactionTableModel::Debit, parent)
+ .data(Qt::EditRole).toULongLong();
+ if((credit+debit)>0)
+ {
+ /* On incoming transaction, make an info balloon */
+ QString date = ttm->index(start, TransactionTableModel::Date, parent)
+ .data().toString();
+ QString description = ttm->index(start, TransactionTableModel::Description, parent)
+ .data().toString();
+
+ trayIcon->showMessage(tr("Incoming transaction"),
+ "Date: " + date + "\n" +
+ "Amount: " + QString::fromStdString(FormatMoney(credit+debit, true)) + "\n" +
+ description,
+ QSystemTrayIcon::Information);
+ }
+}