Merge pull request #3159

9eb4ab6 transactionview: make exportClicked() use message() (Philip Kaufmann)
868d3ee transactionview: add message() signal (Philip Kaufmann)
This commit is contained in:
Wladimir J. van der Laan 2013-10-31 17:42:33 +01:00
commit ede3ee3348
No known key found for this signature in database
GPG Key ID: 74810B012346C9A6
3 changed files with 19 additions and 11 deletions

View File

@ -11,6 +11,7 @@
#include "editaddressdialog.h"
#include "optionsmodel.h"
#include "guiutil.h"
#include "ui_interface.h"
#include <QScrollBar>
#include <QComboBox>
@ -20,7 +21,6 @@
#include <QLineEdit>
#include <QTableView>
#include <QHeaderView>
#include <QMessageBox>
#include <QPoint>
#include <QMenu>
#include <QLabel>
@ -266,12 +266,12 @@ void TransactionView::changedAmount(const QString &amount)
void TransactionView::exportClicked()
{
// CSV is currently the only supported format
QString filename = GUIUtil::getSaveFileName(
this,
tr("Export Transaction Data"), QString(),
QString filename = GUIUtil::getSaveFileName(this,
tr("Export Transaction History"), QString(),
tr("Comma separated file (*.csv)"));
if (filename.isNull()) return;
if (filename.isNull())
return;
CSVModelWriter writer(filename);
@ -285,10 +285,13 @@ void TransactionView::exportClicked()
writer.addColumn(tr("Amount"), 0, TransactionTableModel::FormattedAmountRole);
writer.addColumn(tr("ID"), 0, TransactionTableModel::TxIDRole);
if(!writer.write())
{
QMessageBox::critical(this, tr("Error exporting"), tr("Could not write to file %1.").arg(filename),
QMessageBox::Abort, QMessageBox::Abort);
if(!writer.write()) {
emit message(tr("Exporting Failed"), tr("There was an error trying to save the transaction history to %1.").arg(filename),
CClientUIInterface::MSG_ERROR);
}
else {
emit message(tr("Exporting Successful"), tr("The transaction history was successfully saved to %1.").arg(filename),
CClientUIInterface::MSG_INFORMATION);
}
}

View File

@ -71,6 +71,9 @@ private slots:
signals:
void doubleClicked(const QModelIndex&);
/** Fired when a message should be reported to the user */
void message(const QString &title, const QString &message, unsigned int style);
public slots:
void chooseDate(int idx);
void chooseType(int idx);

View File

@ -67,6 +67,8 @@ WalletView::WalletView(QWidget *parent):
// Pass through messages from sendCoinsPage
connect(sendCoinsPage, SIGNAL(message(QString,QString,unsigned int)), this, SIGNAL(message(QString,QString,unsigned int)));
// Pass through messages from transactionView
connect(transactionView, SIGNAL(message(QString,QString,unsigned int)), this, SIGNAL(message(QString,QString,unsigned int)));
}
WalletView::~WalletView()
@ -110,7 +112,7 @@ void WalletView::setWalletModel(WalletModel *walletModel)
if (walletModel)
{
// Receive and report messages from wallet thread
// Receive and pass through messages from wallet model
connect(walletModel, SIGNAL(message(QString,QString,unsigned int)), this, SIGNAL(message(QString,QString,unsigned int)));
// Handle changes in encryption status