From 356c3cad1a1be4cf84ca79379d9e19e0117cfd64 Mon Sep 17 00:00:00 2001 From: "Wladimir J. van der Laan" Date: Fri, 4 May 2012 17:56:29 +0200 Subject: [PATCH] Make user action more straightforward in address book - Add all actions that can be triggered with buttons to the context menu - Hide delete action from context menu for receiving tab --- src/qt/addressbookpage.cpp | 23 ++++++++++++++++------- src/qt/forms/addressbookpage.ui | 8 +++++++- 2 files changed, 23 insertions(+), 8 deletions(-) diff --git a/src/qt/addressbookpage.cpp b/src/qt/addressbookpage.cpp index 3e55c39e04..dfc85c66d6 100644 --- a/src/qt/addressbookpage.cpp +++ b/src/qt/addressbookpage.cpp @@ -58,25 +58,34 @@ AddressBookPage::AddressBookPage(Mode mode, Tabs tab, QWidget *parent) : ui->signMessage->setVisible(true); break; } - ui->tableView->setTabKeyNavigation(false); - ui->tableView->setContextMenuPolicy(Qt::CustomContextMenu); // Context menu actions - QAction *copyAddressAction = new QAction(tr("Copy address"), this); - QAction *copyLabelAction = new QAction(tr("Copy label"), this); - QAction *editAction = new QAction(tr("Edit"), this); - deleteAction = new QAction(tr("Delete"), this); + QAction *copyLabelAction = new QAction(tr("Copy &Label"), this); + QAction *copyAddressAction = new QAction(ui->copyToClipboard->text(), this); + QAction *editAction = new QAction(tr("&Edit"), this); + QAction *showQRCodeAction = new QAction(ui->showQRCode->text(), this); + QAction *signMessageAction = new QAction(ui->signMessage->text(), this); + deleteAction = new QAction(ui->deleteButton->text(), this); + // Build context menu contextMenu = new QMenu(); contextMenu->addAction(copyAddressAction); contextMenu->addAction(copyLabelAction); contextMenu->addAction(editAction); - contextMenu->addAction(deleteAction); + if(tab == SendingTab) + contextMenu->addAction(deleteAction); + contextMenu->addSeparator(); + contextMenu->addAction(showQRCodeAction); + if(tab == ReceivingTab) + contextMenu->addAction(signMessageAction); + // Connect signals for context menu actions connect(copyAddressAction, SIGNAL(triggered()), this, SLOT(on_copyToClipboard_clicked())); connect(copyLabelAction, SIGNAL(triggered()), this, SLOT(onCopyLabelAction())); connect(editAction, SIGNAL(triggered()), this, SLOT(onEditAction())); connect(deleteAction, SIGNAL(triggered()), this, SLOT(on_deleteButton_clicked())); + connect(showQRCodeAction, SIGNAL(triggered()), this, SLOT(on_showQRCode_clicked())); + connect(signMessageAction, SIGNAL(triggered()), this, SLOT(on_signMessage_clicked())); connect(ui->tableView, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextualMenu(QPoint))); diff --git a/src/qt/forms/addressbookpage.ui b/src/qt/forms/addressbookpage.ui index b31a9ce997..b732be3ba9 100644 --- a/src/qt/forms/addressbookpage.ui +++ b/src/qt/forms/addressbookpage.ui @@ -29,9 +29,15 @@ + + Qt::CustomContextMenu + Double-click to edit address or label + + false + true @@ -71,7 +77,7 @@ Copy the currently selected address to the system clipboard - &Copy to Clipboard + &Copy Address