Browse Source

show notification balloon on incoming transaction

pull/1/head
Wladimir J. van der Laan 11 years ago
parent
commit
725d460e4b
  1. 1
      gui/include/bitcoingui.h
  2. 25
      gui/src/bitcoingui.cpp

1
gui/include/bitcoingui.h

@ -82,6 +82,7 @@ private slots: @@ -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

25
gui/src/bitcoingui.cpp

@ -257,6 +257,9 @@ void BitcoinGUI::setTabsModel(QAbstractItemModel *transaction_model) @@ -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) @@ -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);
}
}

Loading…
Cancel
Save