1
mirror of https://github.com/monero-project/monero-gui synced 2025-01-04 20:26:23 +01:00

AddressBook: description edits, remove hack

Co-authored-by: dsc <dsc@xmr.pm>
This commit is contained in:
selsta 2020-09-21 00:41:02 +02:00
parent d313c2de37
commit 99ad8ef1ba
No known key found for this signature in database
GPG Key ID: 2EA0A99A8B07AE5E
3 changed files with 22 additions and 6 deletions

View File

@ -286,11 +286,12 @@ Rectangle {
MoneroComponents.Label {
fontSize: 32
wrapMode: Text.WordWrap
text: (root.editEntry ? qsTr("Edit an address") : qsTr("Add an address")) + translationManager.emptyString
text: (root.editEntry ? qsTr("Edit entry") : qsTr("Add an address")) + translationManager.emptyString
}
MoneroComponents.LineEditMulti {
id: addressLine
visible: !root.editEntry
Layout.topMargin: 20
labelText: "<style type='text/css'>a {text-decoration: none; color: #858585; font-size: 14px;}</style> %1"
.arg(qsTr("Address")) + translationManager.emptyString
@ -380,7 +381,7 @@ Rectangle {
enabled: root.checkInformation(addressLine.text, appWindow.persistentSettings.nettype)
onClicked: {
console.log("Add")
if (!currentWallet.addressBook.addRow(addressLine.text.trim(),"", descriptionLine.text)) {
if (!root.editEntry && !currentWallet.addressBook.addRow(addressLine.text.trim(),"", descriptionLine.text)) {
informationPopup.title = qsTr("Error") + translationManager.emptyString;
// TODO: check currentWallet.addressBook.errorString() instead.
if(currentWallet.addressBook.errorCode() === AddressBook.Invalid_Address)
@ -393,11 +394,9 @@ Rectangle {
informationPopup.onCloseCallback = null
informationPopup.open();
} else {
if (root.editEntry) {
currentWallet.addressBook.deleteRow(addressBookListView.currentIndex);
}
root.showAddressBook();
currentWallet.addressBook.setDescription(addressBookListView.currentIndex, descriptionLine.text);
}
root.showAddressBook()
}
}

View File

@ -139,3 +139,19 @@ QString AddressBook::getDescription(const QString &address) const
}
return QString::fromStdString(m_rows.value(*it)->getDescription());
}
void AddressBook::setDescription(int index, const QString &description)
{
bool result;
{
QWriteLocker locker(&m_lock);
result = m_addressBookImpl->setDescription(index, description.toStdString());
}
if (result)
{
getAll();
}
}

View File

@ -53,6 +53,7 @@ public:
Q_INVOKABLE int errorCode() const;
Q_INVOKABLE int lookupPaymentID(const QString &payment_id) const;
Q_INVOKABLE QString getDescription(const QString &address) const;
Q_INVOKABLE void setDescription(int index, const QString &label);
enum ErrorCode {
Status_Ok,