1212#include " csvmodelwriter.h"
1313#include " guiutil.h"
1414
15- #ifdef USE_QRCODE
16- #include " qrcodedialog.h"
17- #endif
18-
1915#include < QSortFilterProxyModel>
2016#include < QClipboard>
2117#include < QMessageBox>
@@ -35,49 +31,47 @@ AddressBookPage::AddressBookPage(Mode mode, Tabs tab, QWidget *parent) :
3531 ui->newAddress ->setIcon (QIcon ());
3632 ui->copyAddress ->setIcon (QIcon ());
3733 ui->deleteAddress ->setIcon (QIcon ());
38- ui->verifyMessage ->setIcon (QIcon ());
39- ui->signMessage ->setIcon (QIcon ());
4034 ui->exportButton ->setIcon (QIcon ());
4135#endif
4236
43- #ifndef USE_QRCODE
44- ui->showQRCode ->setVisible (false );
45- #endif
46-
4737 switch (mode)
4838 {
49- case ForSending:
39+ case ForSelection:
40+ switch (tab)
41+ {
42+ case SendingTab: setWindowTitle (tr (" Choose the address to send coins to" )); break ;
43+ case ReceivingTab: setWindowTitle (tr (" Choose the address to receive coins with" )); break ;
44+ }
5045 connect (ui->tableView , SIGNAL (doubleClicked (QModelIndex)), this , SLOT (accept ()));
5146 ui->tableView ->setEditTriggers (QAbstractItemView::NoEditTriggers);
5247 ui->tableView ->setFocus ();
48+ ui->closeButton ->setText (tr (" C&hoose" ));
5349 ui->exportButton ->hide ();
5450 break ;
5551 case ForEditing:
56- ui->buttonBox ->setVisible (false );
52+ switch (tab)
53+ {
54+ case SendingTab: setWindowTitle (tr (" Sending addresses" )); break ;
55+ case ReceivingTab: setWindowTitle (tr (" Receiving addresses" )); break ;
56+ }
5757 break ;
5858 }
5959 switch (tab)
6060 {
6161 case SendingTab:
6262 ui->labelExplanation ->setText (tr (" These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins." ));
6363 ui->deleteAddress ->setVisible (true );
64- ui->signMessage ->setVisible (false );
6564 break ;
6665 case ReceivingTab:
67- ui->labelExplanation ->setText (tr (" These are your Bitcoin addresses for receiving payments. You may want to give a different one to each sender so you can keep track of who is paying you ." ));
66+ ui->labelExplanation ->setText (tr (" These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction ." ));
6867 ui->deleteAddress ->setVisible (false );
69- ui->signMessage ->setVisible (true );
7068 break ;
7169 }
7270
7371 // Context menu actions
7472 QAction *copyAddressAction = new QAction (ui->copyAddress ->text (), this );
7573 QAction *copyLabelAction = new QAction (tr (" Copy &Label" ), this );
7674 QAction *editAction = new QAction (tr (" &Edit" ), this );
77- QAction *sendCoinsAction = new QAction (tr (" Send &Coins" ), this );
78- QAction *showQRCodeAction = new QAction (ui->showQRCode ->text (), this );
79- QAction *signMessageAction = new QAction (ui->signMessage ->text (), this );
80- QAction *verifyMessageAction = new QAction (ui->verifyMessage ->text (), this );
8175 deleteAction = new QAction (ui->deleteAddress ->text (), this );
8276
8377 // Build context menu
@@ -88,30 +82,16 @@ AddressBookPage::AddressBookPage(Mode mode, Tabs tab, QWidget *parent) :
8882 if (tab == SendingTab)
8983 contextMenu->addAction (deleteAction);
9084 contextMenu->addSeparator ();
91- if (tab == SendingTab)
92- contextMenu->addAction (sendCoinsAction);
93- #ifdef USE_QRCODE
94- contextMenu->addAction (showQRCodeAction);
95- #endif
96- if (tab == ReceivingTab)
97- contextMenu->addAction (signMessageAction);
98- else if (tab == SendingTab)
99- contextMenu->addAction (verifyMessageAction);
10085
10186 // Connect signals for context menu actions
10287 connect (copyAddressAction, SIGNAL (triggered ()), this , SLOT (on_copyAddress_clicked ()));
10388 connect (copyLabelAction, SIGNAL (triggered ()), this , SLOT (onCopyLabelAction ()));
10489 connect (editAction, SIGNAL (triggered ()), this , SLOT (onEditAction ()));
10590 connect (deleteAction, SIGNAL (triggered ()), this , SLOT (on_deleteAddress_clicked ()));
106- connect (sendCoinsAction, SIGNAL (triggered ()), this , SLOT (onSendCoinsAction ()));
107- connect (showQRCodeAction, SIGNAL (triggered ()), this , SLOT (on_showQRCode_clicked ()));
108- connect (signMessageAction, SIGNAL (triggered ()), this , SLOT (on_signMessage_clicked ()));
109- connect (verifyMessageAction, SIGNAL (triggered ()), this , SLOT (on_verifyMessage_clicked ()));
11091
11192 connect (ui->tableView , SIGNAL (customContextMenuRequested (QPoint)), this , SLOT (contextualMenu (QPoint)));
11293
113- // Pass through accept action from button box
114- connect (ui->buttonBox , SIGNAL (accepted ()), this , SLOT (accept ()));
94+ connect (ui->closeButton , SIGNAL (clicked ()), this , SLOT (accept ()));
11595}
11696
11797AddressBookPage::~AddressBookPage ()
@@ -197,42 +177,6 @@ void AddressBookPage::onEditAction()
197177 dlg.exec ();
198178}
199179
200- void AddressBookPage::on_signMessage_clicked ()
201- {
202- QTableView *table = ui->tableView ;
203- QModelIndexList indexes = table->selectionModel ()->selectedRows (AddressTableModel::Address);
204-
205- foreach (QModelIndex index, indexes)
206- {
207- QString address = index.data ().toString ();
208- emit signMessage (address);
209- }
210- }
211-
212- void AddressBookPage::on_verifyMessage_clicked ()
213- {
214- QTableView *table = ui->tableView ;
215- QModelIndexList indexes = table->selectionModel ()->selectedRows (AddressTableModel::Address);
216-
217- foreach (QModelIndex index, indexes)
218- {
219- QString address = index.data ().toString ();
220- emit verifyMessage (address);
221- }
222- }
223-
224- void AddressBookPage::onSendCoinsAction ()
225- {
226- QTableView *table = ui->tableView ;
227- QModelIndexList indexes = table->selectionModel ()->selectedRows (AddressTableModel::Address);
228-
229- foreach (QModelIndex index, indexes)
230- {
231- QString address = index.data ().toString ();
232- emit sendCoins (address);
233- }
234- }
235-
236180void AddressBookPage::on_newAddress_clicked ()
237181{
238182 if (!model)
@@ -278,32 +222,20 @@ void AddressBookPage::selectionChanged()
278222 ui->deleteAddress ->setEnabled (true );
279223 ui->deleteAddress ->setVisible (true );
280224 deleteAction->setEnabled (true );
281- ui->signMessage ->setEnabled (false );
282- ui->signMessage ->setVisible (false );
283- ui->verifyMessage ->setEnabled (true );
284- ui->verifyMessage ->setVisible (true );
285225 break ;
286226 case ReceivingTab:
287227 // Deleting receiving addresses, however, is not allowed
288228 ui->deleteAddress ->setEnabled (false );
289229 ui->deleteAddress ->setVisible (false );
290230 deleteAction->setEnabled (false );
291- ui->signMessage ->setEnabled (true );
292- ui->signMessage ->setVisible (true );
293- ui->verifyMessage ->setEnabled (false );
294- ui->verifyMessage ->setVisible (false );
295231 break ;
296232 }
297233 ui->copyAddress ->setEnabled (true );
298- ui->showQRCode ->setEnabled (true );
299234 }
300235 else
301236 {
302237 ui->deleteAddress ->setEnabled (false );
303- ui->showQRCode ->setEnabled (false );
304238 ui->copyAddress ->setEnabled (false );
305- ui->signMessage ->setEnabled (false );
306- ui->verifyMessage ->setEnabled (false );
307239 }
308240}
309241
@@ -312,9 +244,6 @@ void AddressBookPage::done(int retval)
312244 QTableView *table = ui->tableView ;
313245 if (!table->selectionModel () || !table->model ())
314246 return ;
315- // When this is a tab/widget and not a model dialog, ignore "done"
316- if (mode == ForEditing)
317- return ;
318247
319248 // Figure out which address was selected, and return it
320249 QModelIndexList indexes = table->selectionModel ()->selectedRows (AddressTableModel::Address);
@@ -339,7 +268,7 @@ void AddressBookPage::on_exportButton_clicked()
339268 // CSV is currently the only supported format
340269 QString filename = GUIUtil::getSaveFileName (
341270 this ,
342- tr (" Export Address Book Data " ), QString (),
271+ tr (" Export Address List " ), QString (),
343272 tr (" Comma separated file (*.csv)" ));
344273
345274 if (filename.isNull ()) return ;
@@ -358,25 +287,6 @@ void AddressBookPage::on_exportButton_clicked()
358287 }
359288}
360289
361- void AddressBookPage::on_showQRCode_clicked ()
362- {
363- #ifdef USE_QRCODE
364- QTableView *table = ui->tableView ;
365- QModelIndexList indexes = table->selectionModel ()->selectedRows (AddressTableModel::Address);
366-
367- foreach (QModelIndex index, indexes)
368- {
369- QString address = index.data ().toString ();
370- QString label = index.sibling (index.row (), 0 ).data (Qt::EditRole).toString ();
371-
372- QRCodeDialog *dialog = new QRCodeDialog (address, label, tab == ReceivingTab, this );
373- dialog->setModel (optionsModel);
374- dialog->setAttribute (Qt::WA_DeleteOnClose);
375- dialog->show ();
376- }
377- #endif
378- }
379-
380290void AddressBookPage::contextualMenu (const QPoint &point)
381291{
382292 QModelIndex index = ui->tableView ->indexAt (point);
0 commit comments