allow adding address to address book in send dialog
[novacoin.git] / src / qt / sendcoinsdialog.cpp
index 721ab14..67c270e 100644 (file)
@@ -23,9 +23,8 @@ SendCoinsDialog::SendCoinsDialog(QWidget *parent, const QString &address) :
     ui->setupUi(this);
 
     GUIUtil::setupAddressWidget(ui->payTo, this);
-    GUIUtil::setupAmountWidget(ui->payAmount, this);
 
-    /* Set initial address if provided */
+    // Set initial send-to address if provided
     if(!address.isEmpty())
     {
         ui->payTo->setText(address);
@@ -47,6 +46,7 @@ void SendCoinsDialog::on_sendButton_clicked()
 {
     bool valid;
     QString payAmount = ui->payAmount->text();
+    QString label;
     qint64 payAmountParsed;
 
     valid = ParseMoney(payAmount.toStdString(), payAmountParsed);
@@ -59,7 +59,13 @@ void SendCoinsDialog::on_sendButton_clicked()
         return;
     }
 
-    switch(model->sendCoins(ui->payTo->text(), payAmountParsed))
+    if(ui->addToAddressBook->isChecked())
+    {
+        // Add address to address book under label, if specified
+        label = ui->addAsLabel->text();
+    }
+
+    switch(model->sendCoins(ui->payTo->text(), payAmountParsed, label))
     {
     case ClientModel::InvalidAddress:
         QMessageBox::warning(this, tr("Send Coins"),
@@ -94,13 +100,13 @@ void SendCoinsDialog::on_sendButton_clicked()
 
 void SendCoinsDialog::on_pasteButton_clicked()
 {
-    /* Paste text from clipboard into recipient field */
+    // Paste text from clipboard into recipient field
     ui->payTo->setText(QApplication::clipboard()->text());
 }
 
 void SendCoinsDialog::on_addressBookButton_clicked()
 {
-    AddressBookDialog dlg;
+    AddressBookDialog dlg(AddressBookDialog::ForSending);
     dlg.setModel(model->getAddressTableModel());
     dlg.setTab(AddressBookDialog::SendingTab);
     dlg.exec();
@@ -111,3 +117,8 @@ void SendCoinsDialog::on_buttonBox_rejected()
 {
     reject();
 }
+
+void SendCoinsDialog::on_addToAddressBook_toggled(bool checked)
+{
+    ui->addAsLabel->setEnabled(checked);
+}