Browse Source

use new message() function in BitcoinGUI

- use it for displaying URI parsing warnings
- use it for displaying error and information in backup wallet function
  (the information display is new and the error was a warning before)

- cleanup BitcoinGUI::incomingTransaction()
-- use message() + the information icon from message
-- comment out an unused parameter in the function definition and
   declaration
-- move all pre-checks at the beginning of the function
0.8
Philip Kaufmann 12 years ago
parent
commit
50ecd7b689
  1. 60
      src/qt/bitcoingui.cpp
  2. 2
      src/qt/bitcoingui.h

60
src/qt/bitcoingui.cpp

@ -697,39 +697,33 @@ void BitcoinGUI::askFee(qint64 nFeeRequired, bool *payFee)
*payFee = (retval == QMessageBox::Yes); *payFee = (retval == QMessageBox::Yes);
} }
void BitcoinGUI::incomingTransaction(const QModelIndex & parent, int start, int end) void BitcoinGUI::incomingTransaction(const QModelIndex& parent, int start, int /*end*/)
{ {
if(!walletModel || !clientModel) // Prevent balloon-spam when initial block download is in progress
if(!walletModel || !clientModel || clientModel->inInitialBlockDownload())
return; return;
TransactionTableModel *ttm = walletModel->getTransactionTableModel(); TransactionTableModel *ttm = walletModel->getTransactionTableModel();
QString date = ttm->index(start, TransactionTableModel::Date, parent)
.data().toString();
qint64 amount = ttm->index(start, TransactionTableModel::Amount, parent) qint64 amount = ttm->index(start, TransactionTableModel::Amount, parent)
.data(Qt::EditRole).toULongLong(); .data(Qt::EditRole).toULongLong();
if(!clientModel->inInitialBlockDownload()) QString type = ttm->index(start, TransactionTableModel::Type, parent)
{ .data().toString();
// On new transaction, make an info balloon QString address = ttm->index(start, TransactionTableModel::ToAddress, parent)
// Unless the initial block download is in progress, to prevent balloon-spam
QString date = ttm->index(start, TransactionTableModel::Date, parent)
.data().toString();
QString type = ttm->index(start, TransactionTableModel::Type, parent)
.data().toString(); .data().toString();
QString address = ttm->index(start, TransactionTableModel::ToAddress, parent)
.data().toString();
QIcon icon = qvariant_cast<QIcon>(ttm->index(start,
TransactionTableModel::ToAddress, parent)
.data(Qt::DecorationRole));
notificator->notify(Notificator::Information, // On new transaction, make an info balloon
(amount)<0 ? tr("Sent transaction") : message((amount)<0 ? tr("Sent transaction") : tr("Incoming transaction"),
tr("Incoming transaction"), tr("Date: %1\n"
tr("Date: %1\n" "Amount: %2\n"
"Amount: %2\n" "Type: %3\n"
"Type: %3\n" "Address: %4\n")
"Address: %4\n") .arg(date)
.arg(date) .arg(BitcoinUnits::formatWithUnit(walletModel->getOptionsModel()->getDisplayUnit(), amount, true))
.arg(BitcoinUnits::formatWithUnit(walletModel->getOptionsModel()->getDisplayUnit(), amount, true)) .arg(type)
.arg(type) .arg(address), CClientUIInterface::MSG_INFORMATION);
.arg(address), icon);
}
} }
void BitcoinGUI::gotoOverviewPage() void BitcoinGUI::gotoOverviewPage()
@ -821,7 +815,8 @@ void BitcoinGUI::dropEvent(QDropEvent *event)
if (nValidUrisFound) if (nValidUrisFound)
gotoSendCoinsPage(); gotoSendCoinsPage();
else else
notificator->notify(Notificator::Warning, tr("URI handling"), tr("URI can not be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters.")); message(tr("URI handling"), tr("URI can not be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters."),
CClientUIInterface::ICON_WARNING);
} }
event->acceptProposedAction(); event->acceptProposedAction();
@ -848,7 +843,8 @@ void BitcoinGUI::handleURI(QString strURI)
gotoSendCoinsPage(); gotoSendCoinsPage();
} }
else else
notificator->notify(Notificator::Warning, tr("URI handling"), tr("URI can not be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters.")); message(tr("URI handling"), tr("URI can not be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters."),
CClientUIInterface::ICON_WARNING);
} }
void BitcoinGUI::setEncryptionStatus(int status) void BitcoinGUI::setEncryptionStatus(int status)
@ -898,8 +894,12 @@ void BitcoinGUI::backupWallet()
QString filename = QFileDialog::getSaveFileName(this, tr("Backup Wallet"), saveDir, tr("Wallet Data (*.dat)")); QString filename = QFileDialog::getSaveFileName(this, tr("Backup Wallet"), saveDir, tr("Wallet Data (*.dat)"));
if(!filename.isEmpty()) { if(!filename.isEmpty()) {
if(!walletModel->backupWallet(filename)) { if(!walletModel->backupWallet(filename)) {
QMessageBox::warning(this, tr("Backup Failed"), tr("There was an error trying to save the wallet data to the new location.")); message(tr("Backup Failed"), tr("There was an error trying to save the wallet data to the new location."),
CClientUIInterface::MSG_ERROR);
} }
else
message(tr("Backup Successful"), tr("The wallet data was successfully saved to the new location."),
CClientUIInterface::MSG_INFORMATION);
} }
} }

2
src/qt/bitcoingui.h

@ -168,7 +168,7 @@ private slots:
The new items are those between start and end inclusive, under the given parent item. The new items are those between start and end inclusive, under the given parent item.
*/ */
void incomingTransaction(const QModelIndex & parent, int start, int end); void incomingTransaction(const QModelIndex& parent, int start, int /*end*/);
/** Encrypt the wallet */ /** Encrypt the wallet */
void encryptWallet(bool status); void encryptWallet(bool status);
/** Backup the wallet */ /** Backup the wallet */

Loading…
Cancel
Save