Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 16 additions & 1 deletion src/qt/editaddressdialog.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@
// file COPYING or http://www.opensource.org/licenses/mit-license.php.

#include <qt/editaddressdialog.h>
#include <qt/forms/ui_editaddressdialog.h>

#include <key_io.h>
#include <qt/addresstablemodel.h>
#include <qt/forms/ui_editaddressdialog.h>
#include <qt/guiutil.h>

#include <QDataWidgetMapper>
Expand Down Expand Up @@ -44,6 +45,8 @@ EditAddressDialog::EditAddressDialog(Mode _mode, QWidget *parent) :
connect(delegate, &GUIUtil::ItemDelegate::keyEscapePressed, this, &EditAddressDialog::reject);
mapper->setItemDelegate(delegate);

connect(ui->addressEdit, &QValidatedLineEdit::textEdited, this, &EditAddressDialog::addressEdited);

GUIUtil::handleCloseWindowShortcut(this);
}

Expand Down Expand Up @@ -164,3 +167,15 @@ void EditAddressDialog::setAddress(const QString &_address)
this->address = _address;
ui->addressEdit->setText(_address);
}

// Address changed
void EditAddressDialog::addressEdited(const QString& address)
{
ui->addressErrorLabel->setStyleSheet("QLabel{color:red;}");

if (!address.isEmpty() && !IsValidDestination(DecodeDestination(address.toStdString()))) {
ui->addressErrorLabel->setText(tr("Warning: Invalid Bitcoin address"));
} else {
ui->addressErrorLabel->setText("");
}
}
3 changes: 3 additions & 0 deletions src/qt/editaddressdialog.h
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,9 @@ class EditAddressDialog : public QDialog
public Q_SLOTS:
void accept() override;

private Q_SLOTS:
void addressEdited(const QString& address);

private:
bool saveCurrentRow();

Expand Down
82 changes: 41 additions & 41 deletions src/qt/forms/editaddressdialog.ui
Original file line number Diff line number Diff line change
Expand Up @@ -13,49 +13,49 @@
<property name="windowTitle">
<string>Edit Address</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<layout class="QFormLayout" name="formLayout">
<property name="fieldGrowthPolicy">
<enum>QFormLayout::AllNonFixedFieldsGrow</enum>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>&amp;Label</string>
</property>
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>&amp;Label</string>
</property>
<property name="buddy">
<cstring>labelEdit</cstring>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLineEdit" name="labelEdit">
<property name="toolTip">
<string>The label associated with this address list entry</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>&amp;Address</string>
</property>
<property name="buddy">
<cstring>addressEdit</cstring>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QValidatedLineEdit" name="addressEdit">
<property name="toolTip">
<string>The address associated with this address list entry. This can only be modified for sending addresses.</string>
</property>
</widget>
</item>
</layout>
<property name="buddy">
<cstring>labelEdit</cstring>
</property>
</widget>
</item>
<item row="0" column="1" colspan="2">
<widget class="QLineEdit" name="labelEdit">
<property name="toolTip">
<string>The label associated with this address list entry</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>&amp;Address</string>
</property>
<property name="buddy">
<cstring>addressEdit</cstring>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QValidatedLineEdit" name="addressEdit">
<property name="toolTip">
<string>The address associated with this address list entry. This can only be modified for sending addresses.</string>
</property>
</widget>
</item>
<item row="1" column="2">
<widget class="QLabel" name="addressErrorLabel">
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<item row="2" column="0" colspan="3">
<widget class="QDialogButtonBox" name="buttonBox">
<property name="orientation">
<enum>Qt::Horizontal</enum>
Expand Down
10 changes: 10 additions & 0 deletions src/qt/forms/sendcoinsentry.ui
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,16 @@
<widget class="QValidatedLineEdit" name="payTo">
<property name="toolTip">
<string>The Bitcoin address to send the payment to</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="PayToLabel">
<property name="text">
<string/>
</property>
<property name="margin">
<number>2</number>
</property>
</widget>
</item>
Expand Down
16 changes: 15 additions & 1 deletion src/qt/sendcoinsentry.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,11 @@
#endif

#include <qt/sendcoinsentry.h>
#include <qt/forms/ui_sendcoinsentry.h>

#include <key_io.h>
#include <qt/addressbookpage.h>
#include <qt/addresstablemodel.h>
#include <qt/forms/ui_sendcoinsentry.h>
#include <qt/guiutil.h>
#include <qt/optionsmodel.h>
#include <qt/platformstyle.h>
Expand Down Expand Up @@ -50,6 +51,7 @@ SendCoinsEntry::SendCoinsEntry(const PlatformStyle *_platformStyle, QWidget *par
connect(ui->deleteButton_is, &QPushButton::clicked, this, &SendCoinsEntry::deleteClicked);
connect(ui->deleteButton_s, &QPushButton::clicked, this, &SendCoinsEntry::deleteClicked);
connect(ui->useAvailableBalanceButton, &QPushButton::clicked, this, &SendCoinsEntry::useAvailableBalanceClicked);
connect(ui->payTo, &QValidatedLineEdit::textEdited, this, &SendCoinsEntry::addressEdited);
}

SendCoinsEntry::~SendCoinsEntry()
Expand Down Expand Up @@ -266,3 +268,15 @@ bool SendCoinsEntry::updateLabel(const QString &address)

return false;
}

// Address changed
void SendCoinsEntry::addressEdited(const QString& address)
{
ui->PayToLabel->setStyleSheet("QLabel{color:red;}");

if (!address.isEmpty() && !IsValidDestination(DecodeDestination(address.toStdString()))) {
ui->PayToLabel->setText(tr("Warning: Invalid Bitcoin address"));
} else {
ui->PayToLabel->setText("");
}
}
1 change: 1 addition & 0 deletions src/qt/sendcoinsentry.h
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ private Q_SLOTS:
void on_addressBookButton_clicked();
void on_pasteButton_clicked();
void updateDisplayUnit();
void addressEdited(const QString& address);

protected:
void changeEvent(QEvent* e) override;
Expand Down