Browse Source

allow emit message() in sendcoinsdialog and walletview

- this allows us to use emit message() over MessageBox:: or gui->message()
  calls in sendcoinsdialog and walletview
- move main handlePaymentRequest() functionality back to BitcoinGUI
- move a showNormalIfMinimized() before gotoSendCoinsPage()
0.10
Philip Kaufmann 11 years ago
parent
commit
2384a2864b
  1. 12
      src/qt/bitcoingui.cpp
  2. 2
      src/qt/bitcoingui.h
  3. 4
      src/qt/sendcoinsdialog.h
  4. 26
      src/qt/walletview.cpp
  5. 3
      src/qt/walletview.h

12
src/qt/bitcoingui.cpp

@ -752,9 +752,17 @@ bool BitcoinGUI::eventFilter(QObject *object, QEvent *event)
return QMainWindow::eventFilter(object, event); return QMainWindow::eventFilter(object, event);
} }
void BitcoinGUI::handlePaymentRequest(const SendCoinsRecipient& recipient) bool BitcoinGUI::handlePaymentRequest(const SendCoinsRecipient& recipient)
{ {
walletFrame->handlePaymentRequest(recipient); // URI has to be valid
if (walletFrame->handlePaymentRequest(recipient))
{
showNormalIfMinimized();
gotoSendCoinsPage();
return true;
}
else
return false;
} }
void BitcoinGUI::setEncryptionStatus(int status) void BitcoinGUI::setEncryptionStatus(int status)

2
src/qt/bitcoingui.h

@ -146,7 +146,7 @@ public slots:
*/ */
void askFee(qint64 nFeeRequired, bool *payFee); void askFee(qint64 nFeeRequired, bool *payFee);
void handlePaymentRequest(const SendCoinsRecipient& recipient); bool handlePaymentRequest(const SendCoinsRecipient& recipient);
/** Show incoming transaction notification for new transactions. */ /** Show incoming transaction notification for new transactions. */
void incomingTransaction(const QString& date, int unit, qint64 amount, const QString& type, const QString& address); void incomingTransaction(const QString& date, int unit, qint64 amount, const QString& type, const QString& address);

4
src/qt/sendcoinsdialog.h

@ -52,6 +52,10 @@ private slots:
void on_sendButton_clicked(); void on_sendButton_clicked();
void removeEntry(SendCoinsEntry* entry); void removeEntry(SendCoinsEntry* entry);
void updateDisplayUnit(); void updateDisplayUnit();
signals:
// Fired when a message should be reported to the user
void message(const QString &title, const QString &message, unsigned int style);
}; };
#endif // SENDCOINSDIALOG_H #endif // SENDCOINSDIALOG_H

26
src/qt/walletview.cpp

@ -81,9 +81,15 @@ WalletView::~WalletView()
void WalletView::setBitcoinGUI(BitcoinGUI *gui) void WalletView::setBitcoinGUI(BitcoinGUI *gui)
{ {
this->gui = gui; this->gui = gui;
if(gui)
if (gui)
{ {
// Clicking on a transaction on the overview page sends you to the transactions tab
connect(overviewPage, SIGNAL(transactionClicked(QModelIndex)), gui, SLOT(gotoHistoryPage())); connect(overviewPage, SIGNAL(transactionClicked(QModelIndex)), gui, SLOT(gotoHistoryPage()));
// Receive and report messages
connect(this, SIGNAL(message(QString,QString,unsigned int)), gui, SLOT(message(QString,QString,unsigned int)));
connect(sendCoinsPage, SIGNAL(message(QString,QString,unsigned int)), gui, SLOT(message(QString,QString,unsigned int)));
} }
} }
@ -187,15 +193,7 @@ void WalletView::gotoVerifyMessageTab(QString addr)
bool WalletView::handlePaymentRequest(const SendCoinsRecipient& recipient) bool WalletView::handlePaymentRequest(const SendCoinsRecipient& recipient)
{ {
// URI has to be valid return sendCoinsPage->handlePaymentRequest(recipient);
if (sendCoinsPage->handlePaymentRequest(recipient))
{
gotoSendCoinsPage();
emit showNormalIfMinimized();
return true;
}
else
return false;
} }
void WalletView::showOutOfSyncWarning(bool fShow) void WalletView::showOutOfSyncWarning(bool fShow)
@ -229,12 +227,12 @@ void WalletView::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)) {
gui->message(tr("Backup Failed"), tr("There was an error trying to save the wallet data to the new location."), emit message(tr("Backup Failed"), tr("There was an error trying to save the wallet data to the new location."),
CClientUIInterface::MSG_ERROR); CClientUIInterface::MSG_ERROR);
} }
else else
gui->message(tr("Backup Successful"), tr("The wallet data was successfully saved to the new location."), emit message(tr("Backup Successful"), tr("The wallet data was successfully saved to the new location."),
CClientUIInterface::MSG_INFORMATION); CClientUIInterface::MSG_INFORMATION);
} }
} }

3
src/qt/walletview.h

@ -105,6 +105,9 @@ public slots:
signals: signals:
/** Signal that we want to show the main window */ /** Signal that we want to show the main window */
void showNormalIfMinimized(); void showNormalIfMinimized();
/** Fired when a message should be reported to the user */
void message(const QString &title, const QString &message, unsigned int style);
}; };
#endif // WALLETVIEW_H #endif // WALLETVIEW_H

Loading…
Cancel
Save