EditAddressDialog::NewSendingAddress :
EditAddressDialog::NewReceivingAddress);
dlg.setModel(model);
- dlg.exec();
+ if(dlg.exec())
+ {
+ // Select row for newly created address
+ QString address = dlg.getAddress();
+ QModelIndexList lst = proxyModel->match(proxyModel->index(0,
+ AddressTableModel::Address, QModelIndex()),
+ Qt::EditRole, address, 1, Qt::MatchExactly);
+ if(!lst.isEmpty())
+ {
+ ui->tableView->setFocus();
+ ui->tableView->selectRow(lst.at(0).row());
+ }
+ }
}
void AddressBookPage::on_deleteButton_clicked()
mapper->setCurrentIndex(row);
}
-QString EditAddressDialog::saveCurrentRow()
+bool EditAddressDialog::saveCurrentRow()
{
- QString address;
switch(mode)
{
case NewReceivingAddress:
}
break;
}
- return address;
+ return !address.isEmpty();
}
void EditAddressDialog::accept()
{
- if(saveCurrentRow().isEmpty())
+ if(!saveCurrentRow())
{
switch(model->getEditStatus())
{
QDialog::accept();
}
+QString EditAddressDialog::getAddress() const
+{
+ return address;
+}
void accept();
+ QString getAddress() const;
private:
- QString saveCurrentRow();
+ bool saveCurrentRow();
Ui::EditAddressDialog *ui;
QDataWidgetMapper *mapper;
Mode mode;
AddressTableModel *model;
+
+ QString address;
};
#endif // EDITADDRESSDIALOG_H