Debugger: Re-enable breakpoint enabling via gutter context menu

Task-number: QTCREATORBUG-20970
Change-Id: Ie8fc2af8e99e82018a9b4262fe6053cb714e7d60
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
hjk
2018-08-22 15:19:24 +02:00
parent 6652d937aa
commit fd25bbd99d
3 changed files with 17 additions and 16 deletions

View File

@@ -2322,9 +2322,10 @@ void GlobalBreakpointItem::setEnabled(bool enabled)
update();
for (QPointer<DebuggerEngine> engine : EngineManager::engines()) {
for (Breakpoint bp : engine->breakHandler()->breakpoints()) {
BreakHandler *handler = engine->breakHandler();
for (Breakpoint bp : handler->breakpoints()) {
if (bp->globalBreakpoint() == this)
bp->setEnabled(enabled);
handler->requestBreakpointEnabling(bp, enabled);
}
}
}

View File

@@ -312,6 +312,7 @@ public:
static void claimBreakpointsForEngine(DebuggerEngine *engine);
static void toggleBreakpoint(const ContextData &location, const QString &tracePointMessage = QString());
static void createBreakpointForEngine(const BreakpointParameters &data, DebuggerEngine *engine);
static void editBreakpoint(const GlobalBreakpoint &gbp, QWidget *parent);
static void executeAddBreakpointDialog();
static void executeDeleteAllBreakpointsDialog();
@@ -326,7 +327,6 @@ private:
bool contextMenuEvent(const Utils::ItemViewEvent &ev);
void gotoLocation(const GlobalBreakpoint &gbp) const;
void editBreakpoint(const GlobalBreakpoint &gbp, QWidget *parent);
void editBreakpoints(const GlobalBreakpoints &gbps, QWidget *parent);
};

View File

@@ -1913,20 +1913,20 @@ void DebuggerPluginPrivate::requestContextMenu(TextEditorWidget *widget,
auto act = menu->addAction(tr("Remove Breakpoint"));
connect(act, &QAction::triggered, [gbp] { gbp->deleteBreakpoint(); });
// // Enable/disable existing breakpoint.
// if (gbp->isEnabled()) {
// act = menu->addAction(tr("Disable Breakpoint %1").arg(id));
// connect(act, &QAction::triggered, [gbp] { gbp.setEnabled(false); });
// } else {
// act = menu->addAction(tr("Enable Breakpoint %1").arg(id));
// connect(act, &QAction::triggered, [gbp] { gbp.setEnabled(true); });
// }
// Enable/disable existing breakpoint.
if (gbp->isEnabled()) {
act = menu->addAction(tr("Disable Breakpoint"));
connect(act, &QAction::triggered, [gbp] { gbp->setEnabled(false); });
} else {
act = menu->addAction(tr("Enable Breakpoint"));
connect(act, &QAction::triggered, [gbp] { gbp->setEnabled(true); });
}
// // Edit existing breakpoint.
// act = menu->addAction(tr("Edit Breakpoint %1...").arg(id));
// connect(act, &QAction::triggered, [gbp] {
// globalBreakHandler()->editBreakpoint(gbp, ICore::dialogParent());
// });
// Edit existing breakpoint.
act = menu->addAction(tr("Edit Breakpoint ..."));
connect(act, &QAction::triggered, [gbp] {
BreakpointManager::editBreakpoint(gbp, ICore::dialogParent());
});
} else {
// Handle non-existing breakpoint.