1 #include "editaddressdialog.h"
2 #include "ui_editaddressdialog.h"
3 #include "addresstablemodel.h"
6 #include <QDataWidgetMapper>
9 EditAddressDialog::EditAddressDialog(Mode mode, QWidget *parent) :
11 ui(new Ui::EditAddressDialog), mapper(0), mode(mode), model(0)
15 GUIUtil::setupAddressWidget(ui->addressEdit, this);
19 case NewReceivingAddress:
20 setWindowTitle(tr("New receiving address"));
21 ui->addressEdit->setEnabled(false);
22 ui->setAsDefault->setChecked(true);
24 case NewSendingAddress:
25 setWindowTitle(tr("New sending address"));
26 ui->setAsDefault->setVisible(false);
28 case EditReceivingAddress:
29 setWindowTitle(tr("Edit receiving address"));
30 ui->addressEdit->setReadOnly(true);
32 case EditSendingAddress:
33 setWindowTitle(tr("Edit sending address"));
34 ui->setAsDefault->setVisible(false);
38 mapper = new QDataWidgetMapper(this);
39 mapper->setSubmitPolicy(QDataWidgetMapper::ManualSubmit);
42 EditAddressDialog::~EditAddressDialog()
47 void EditAddressDialog::setModel(AddressTableModel *model)
50 mapper->setModel(model);
51 mapper->addMapping(ui->labelEdit, AddressTableModel::Label);
52 mapper->addMapping(ui->addressEdit, AddressTableModel::Address);
53 mapper->addMapping(ui->setAsDefault, AddressTableModel::IsDefaultAddress);
56 void EditAddressDialog::loadRow(int row)
58 mapper->setCurrentIndex(row);
61 QString EditAddressDialog::saveCurrentRow()
66 case NewReceivingAddress:
67 case NewSendingAddress:
68 address = model->addRow(
69 mode == NewSendingAddress ? AddressTableModel::Send : AddressTableModel::Receive,
70 ui->labelEdit->text(),
71 ui->addressEdit->text(),
72 ui->setAsDefault->isChecked());
75 QMessageBox::warning(this, windowTitle(),
76 tr("The address %1 is already in the address book.").arg(ui->addressEdit->text()),
77 QMessageBox::Ok, QMessageBox::Ok);
80 case EditReceivingAddress:
81 case EditSendingAddress:
84 address = ui->addressEdit->text();