CppEditor: Replace QSignalMapper with a lambda

Change-Id: I403a5f9bb29240181a98390dd4cd8e34110957ee
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
This commit is contained in:
Orgad Shaneh
2016-07-19 22:49:26 +03:00
committed by Orgad Shaneh
parent ac0a852f90
commit 3e65c9db09
2 changed files with 1 additions and 17 deletions

View File

@@ -84,7 +84,6 @@
#include <QFutureWatcher> #include <QFutureWatcher>
#include <QMenu> #include <QMenu>
#include <QPointer> #include <QPointer>
#include <QSignalMapper>
#include <QTextEdit> #include <QTextEdit>
#include <QTimer> #include <QTimer>
#include <QToolButton> #include <QToolButton>
@@ -120,7 +119,6 @@ public:
CppLocalRenaming m_localRenaming; CppLocalRenaming m_localRenaming;
SemanticInfo m_lastSemanticInfo; SemanticInfo m_lastSemanticInfo;
QuickFixOperations m_quickFixes;
CppUseSelectionsUpdater m_useSelectionsUpdater; CppUseSelectionsUpdater m_useSelectionsUpdater;
@@ -677,11 +675,6 @@ bool CppEditorWidget::event(QEvent *e)
return TextEditorWidget::event(e); return TextEditorWidget::event(e);
} }
void CppEditorWidget::performQuickFix(int index)
{
d->m_quickFixes.at(index)->perform();
}
void CppEditorWidget::processKeyNormally(QKeyEvent *e) void CppEditorWidget::processKeyNormally(QKeyEvent *e)
{ {
TextEditorWidget::keyPressEvent(e); TextEditorWidget::keyPressEvent(e);
@@ -700,9 +693,6 @@ void CppEditorWidget::contextMenuEvent(QContextMenuEvent *e)
QMenu *quickFixMenu = new QMenu(tr("&Refactor"), menu); QMenu *quickFixMenu = new QMenu(tr("&Refactor"), menu);
quickFixMenu->addAction(ActionManager::command(Constants::RENAME_SYMBOL_UNDER_CURSOR)->action()); quickFixMenu->addAction(ActionManager::command(Constants::RENAME_SYMBOL_UNDER_CURSOR)->action());
QSignalMapper mapper;
connect(&mapper, static_cast<void (QSignalMapper::*)(int)>(&QSignalMapper::mapped),
this, &CppEditorWidget::performQuickFix);
if (isSemanticInfoValidExceptLocalUses()) { if (isSemanticInfoValidExceptLocalUses()) {
d->m_useSelectionsUpdater.update(CppUseSelectionsUpdater::Synchronous); d->m_useSelectionsUpdater.update(CppUseSelectionsUpdater::Synchronous);
AssistInterface *interface = createAssistInterface(QuickFix, ExplicitlyInvoked); AssistInterface *interface = createAssistInterface(QuickFix, ExplicitlyInvoked);
@@ -715,11 +705,8 @@ void CppEditorWidget::contextMenuEvent(QContextMenuEvent *e)
for (int index = 0; index < model->size(); ++index) { for (int index = 0; index < model->size(); ++index) {
auto item = static_cast<AssistProposalItem *>(model->proposalItem(index)); auto item = static_cast<AssistProposalItem *>(model->proposalItem(index));
QuickFixOperation::Ptr op = item->data().value<QuickFixOperation::Ptr>(); QuickFixOperation::Ptr op = item->data().value<QuickFixOperation::Ptr>();
d->m_quickFixes.append(op);
QAction *action = quickFixMenu->addAction(op->description()); QAction *action = quickFixMenu->addAction(op->description());
mapper.setMapping(action, index); connect(action, &QAction::triggered, this, [op] { op->perform(); });
connect(action, &QAction::triggered,
&mapper, static_cast<void (QSignalMapper::*)()>(&QSignalMapper::map));
} }
delete model; delete model;
} }
@@ -737,7 +724,6 @@ void CppEditorWidget::contextMenuEvent(QContextMenuEvent *e)
menu->exec(e->globalPos()); menu->exec(e->globalPos());
if (!menu) if (!menu)
return; return;
d->m_quickFixes.clear();
delete menu; delete menu;
} }

View File

@@ -126,8 +126,6 @@ private:
bool updateUseSelectionSynchronously = false); bool updateUseSelectionSynchronously = false);
void updatePreprocessorButtonTooltip(); void updatePreprocessorButtonTooltip();
void performQuickFix(int index);
void processKeyNormally(QKeyEvent *e); void processKeyNormally(QKeyEvent *e);
void finalizeInitialization() override; void finalizeInitialization() override;