diff options
Diffstat (limited to 'src/qt')
| -rw-r--r-- | src/qt/bitcoin.cpp | 2 | ||||
| -rw-r--r-- | src/qt/forms/sendcoinsdialog.ui | 9 | ||||
| -rw-r--r-- | src/qt/guiutil.cpp | 16 | ||||
| -rw-r--r-- | src/qt/guiutil.h | 6 | ||||
| -rw-r--r-- | src/qt/overviewpage.cpp | 24 | ||||
| -rw-r--r-- | src/qt/overviewpage.h | 2 | ||||
| -rw-r--r-- | src/qt/sendcoinsdialog.cpp | 16 | ||||
| -rw-r--r-- | src/qt/sendcoinsdialog.h | 2 | ||||
| -rw-r--r-- | src/qt/sendcoinsentry.cpp | 18 | ||||
| -rw-r--r-- | src/qt/sendcoinsentry.h | 1 | ||||
| -rw-r--r-- | src/qt/transactiontablemodel.cpp | 7 | ||||
| -rw-r--r-- | src/qt/transactiontablemodel.h | 1 |
12 files changed, 79 insertions, 25 deletions
diff --git a/src/qt/bitcoin.cpp b/src/qt/bitcoin.cpp index 8c8c73f06..b4e751077 100644 --- a/src/qt/bitcoin.cpp +++ b/src/qt/bitcoin.cpp @@ -212,7 +212,7 @@ int main(int argc, char *argv[]) if (mapArgs.count("-?") || mapArgs.count("--help")) { GUIUtil::HelpMessageBox help; - help.exec(); + help.showOrPrint(); return 1; } diff --git a/src/qt/forms/sendcoinsdialog.ui b/src/qt/forms/sendcoinsdialog.ui index 023a72ac2..10a1586d4 100644 --- a/src/qt/forms/sendcoinsdialog.ui +++ b/src/qt/forms/sendcoinsdialog.ui @@ -70,6 +70,9 @@ <iconset resource="../bitcoin.qrc"> <normaloff>:/icons/add</normaloff>:/icons/add</iconset> </property> + <property name="autoDefault"> + <bool>false</bool> + </property> </widget> </item> <item> @@ -93,6 +96,9 @@ <property name="autoRepeatDelay"> <number>300</number> </property> + <property name="autoDefault"> + <bool>false</bool> + </property> </widget> </item> <item> @@ -109,6 +115,9 @@ </item> <item> <widget class="QLabel" name="labelBalance"> + <property name="cursor"> + <cursorShape>IBeamCursor</cursorShape> + </property> <property name="text"> <string>123.456 BTC</string> </property> diff --git a/src/qt/guiutil.cpp b/src/qt/guiutil.cpp index a8c232885..50ed2eed0 100644 --- a/src/qt/guiutil.cpp +++ b/src/qt/guiutil.cpp @@ -441,15 +441,21 @@ HelpMessageBox::HelpMessageBox(QWidget *parent) : setDetailedText(coreOptions + "\n" + uiOptions); } -void HelpMessageBox::exec() +void HelpMessageBox::printToConsole() { -#if defined(WIN32) - // On windows, show a message box, as there is no stderr in windowed applications - QMessageBox::exec(); -#else // On other operating systems, the expected action is to print the message to the console. QString strUsage = header + "\n" + coreOptions + "\n" + uiOptions; fprintf(stderr, "%s", strUsage.toStdString().c_str()); +} + +void HelpMessageBox::showOrPrint() +{ +#if defined(WIN32) + // On windows, show a message box, as there is no stderr/stdout in windowed applications + exec(); +#else + // On other operating systems, print help text to console + printToConsole(); #endif } diff --git a/src/qt/guiutil.h b/src/qt/guiutil.h index ca0634851..024069550 100644 --- a/src/qt/guiutil.h +++ b/src/qt/guiutil.h @@ -103,7 +103,11 @@ namespace GUIUtil public: HelpMessageBox(QWidget *parent = 0); - void exec(); + /** Show message box or print help message to standard output, based on operating system. */ + void showOrPrint(); + + /** Print help message to console */ + void printToConsole(); private: QString header; diff --git a/src/qt/overviewpage.cpp b/src/qt/overviewpage.cpp index 35d48581e..07be9c520 100644 --- a/src/qt/overviewpage.cpp +++ b/src/qt/overviewpage.cpp @@ -152,7 +152,7 @@ void OverviewPage::setNumTransactions(int count) void OverviewPage::setModel(WalletModel *model) { this->model = model; - if(model) + if(model && model->getOptionsModel()) { // Set up transaction list filter = new TransactionFilterProxy(); @@ -172,19 +172,25 @@ void OverviewPage::setModel(WalletModel *model) setNumTransactions(model->getNumTransactions()); connect(model, SIGNAL(numTransactionsChanged(int)), this, SLOT(setNumTransactions(int))); - connect(model->getOptionsModel(), SIGNAL(displayUnitChanged(int)), this, SLOT(displayUnitChanged())); + connect(model->getOptionsModel(), SIGNAL(displayUnitChanged(int)), this, SLOT(updateDisplayUnit())); } + + // update the display unit, to not use the default ("BTC") + updateDisplayUnit(); } -void OverviewPage::displayUnitChanged() +void OverviewPage::updateDisplayUnit() { - if(!model || !model->getOptionsModel()) - return; - if(currentBalance != -1) - setBalance(currentBalance, currentUnconfirmedBalance, currentImmatureBalance); + if(model && model->getOptionsModel()) + { + if(currentBalance != -1) + setBalance(currentBalance, currentUnconfirmedBalance, currentImmatureBalance); - txdelegate->unit = model->getOptionsModel()->getDisplayUnit(); - ui->listTransactions->update(); + // Update txdelegate->unit with the current unit + txdelegate->unit = model->getOptionsModel()->getDisplayUnit(); + + ui->listTransactions->update(); + } } void OverviewPage::showOutOfSyncWarning(bool fShow) diff --git a/src/qt/overviewpage.h b/src/qt/overviewpage.h index c7d3a4242..00048cc8f 100644 --- a/src/qt/overviewpage.h +++ b/src/qt/overviewpage.h @@ -44,7 +44,7 @@ private: TransactionFilterProxy *filter; private slots: - void displayUnitChanged(); + void updateDisplayUnit(); void handleTransactionClicked(const QModelIndex &index); }; diff --git a/src/qt/sendcoinsdialog.cpp b/src/qt/sendcoinsdialog.cpp index 76952e44e..86c2b01fe 100644 --- a/src/qt/sendcoinsdialog.cpp +++ b/src/qt/sendcoinsdialog.cpp @@ -46,10 +46,11 @@ void SendCoinsDialog::setModel(WalletModel *model) entry->setModel(model); } } - if(model) + if(model && model->getOptionsModel()) { setBalance(model->getBalance(), model->getUnconfirmedBalance(), model->getImmatureBalance()); connect(model, SIGNAL(balanceChanged(qint64, qint64, qint64)), this, SLOT(setBalance(qint64, qint64, qint64))); + connect(model->getOptionsModel(), SIGNAL(displayUnitChanged(int)), this, SLOT(updateDisplayUnit())); } } @@ -202,7 +203,7 @@ SendCoinsEntry *SendCoinsDialog::addEntry() ui->scrollAreaWidgetContents->resize(ui->scrollAreaWidgetContents->sizeHint()); QCoreApplication::instance()->processEvents(); QScrollBar* bar = ui->scrollArea->verticalScrollBar(); - if (bar) + if(bar) bar->setSliderPosition(bar->maximum()); return entry; } @@ -245,7 +246,7 @@ QWidget *SendCoinsDialog::setupTabChain(QWidget *prev) void SendCoinsDialog::pasteEntry(const SendCoinsRecipient &rv) { - if (!fNewRecipientAllowed) + if(!fNewRecipientAllowed) return; SendCoinsEntry *entry = 0; @@ -289,3 +290,12 @@ void SendCoinsDialog::setBalance(qint64 balance, qint64 unconfirmedBalance, qint int unit = model->getOptionsModel()->getDisplayUnit(); ui->labelBalance->setText(BitcoinUnits::formatWithUnit(unit, balance)); } + +void SendCoinsDialog::updateDisplayUnit() +{ + if(model && model->getOptionsModel()) + { + // Update labelBalance with the current balance and the current unit + ui->labelBalance->setText(BitcoinUnits::formatWithUnit(model->getOptionsModel()->getDisplayUnit(), model->getBalance())); + } +} diff --git a/src/qt/sendcoinsdialog.h b/src/qt/sendcoinsdialog.h index 915b7ad46..def2f83c3 100644 --- a/src/qt/sendcoinsdialog.h +++ b/src/qt/sendcoinsdialog.h @@ -47,8 +47,8 @@ private: private slots: void on_sendButton_clicked(); - void removeEntry(SendCoinsEntry* entry); + void updateDisplayUnit(); }; #endif // SENDCOINSDIALOG_H diff --git a/src/qt/sendcoinsentry.cpp b/src/qt/sendcoinsentry.cpp index 5960597c7..71891e79c 100644 --- a/src/qt/sendcoinsentry.cpp +++ b/src/qt/sendcoinsentry.cpp @@ -68,6 +68,10 @@ void SendCoinsEntry::on_payTo_textChanged(const QString &address) void SendCoinsEntry::setModel(WalletModel *model) { this->model = model; + + if(model && model->getOptionsModel()) + connect(model->getOptionsModel(), SIGNAL(displayUnitChanged(int)), this, SLOT(updateDisplayUnit())); + clear(); } @@ -82,10 +86,8 @@ void SendCoinsEntry::clear() ui->addAsLabel->clear(); ui->payAmount->clear(); ui->payTo->setFocus(); - if(model && model->getOptionsModel()) - { - ui->payAmount->setDisplayUnit(model->getOptionsModel()->getDisplayUnit()); - } + // update the display unit, to not use the default ("BTC") + updateDisplayUnit(); } void SendCoinsEntry::on_deleteButton_clicked() @@ -160,3 +162,11 @@ void SendCoinsEntry::setFocus() ui->payTo->setFocus(); } +void SendCoinsEntry::updateDisplayUnit() +{ + if(model && model->getOptionsModel()) + { + // Update payAmount with the current unit + ui->payAmount->setDisplayUnit(model->getOptionsModel()->getDisplayUnit()); + } +} diff --git a/src/qt/sendcoinsentry.h b/src/qt/sendcoinsentry.h index cdbf89326..db6cba0d8 100644 --- a/src/qt/sendcoinsentry.h +++ b/src/qt/sendcoinsentry.h @@ -45,6 +45,7 @@ private slots: void on_payTo_textChanged(const QString &address); void on_addressBookButton_clicked(); void on_pasteButton_clicked(); + void updateDisplayUnit(); private: Ui::SendCoinsEntry *ui; diff --git a/src/qt/transactiontablemodel.cpp b/src/qt/transactiontablemodel.cpp index a86b1f7c5..b3e001ea1 100644 --- a/src/qt/transactiontablemodel.cpp +++ b/src/qt/transactiontablemodel.cpp @@ -230,6 +230,8 @@ TransactionTableModel::TransactionTableModel(CWallet* wallet, WalletModel *paren QTimer *timer = new QTimer(this); connect(timer, SIGNAL(timeout()), this, SLOT(updateConfirmations())); timer->start(MODEL_UPDATE_DELAY); + + connect(walletModel->getOptionsModel(), SIGNAL(displayUnitChanged(int)), this, SLOT(updateDisplayUnit())); } TransactionTableModel::~TransactionTableModel() @@ -624,3 +626,8 @@ QModelIndex TransactionTableModel::index(int row, int column, const QModelIndex } } +void TransactionTableModel::updateDisplayUnit() +{ + // emit dataChanged to update Amount column with the current unit + emit dataChanged(index(0, Amount), index(priv->size()-1, Amount)); +} diff --git a/src/qt/transactiontablemodel.h b/src/qt/transactiontablemodel.h index 0aafa7091..fd321ce28 100644 --- a/src/qt/transactiontablemodel.h +++ b/src/qt/transactiontablemodel.h @@ -76,6 +76,7 @@ private: public slots: void updateTransaction(const QString &hash, int status); void updateConfirmations(); + void updateDisplayUnit(); friend class TransactionTablePriv; }; |