diff options
author | Eike Ziller <[email protected]> | 2018-06-19 10:03:28 +0200 |
---|---|---|
committer | Eike Ziller <[email protected]> | 2018-06-19 10:03:28 +0200 |
commit | 3bbe535b95f3cf53b8fb9c690d765f864cb36cbb (patch) | |
tree | b0cf231e1bdafad6d2755af81e8ba03cad534d74 /src/plugins/debugger/watchhandler.cpp | |
parent | 23e27ead9e1c09160204e1143e00c46b92351f40 (diff) | |
parent | 8623a93998a3f1b37c4fcaa10c282cb71eb4f0a3 (diff) |
Merge remote-tracking branch 'origin/4.7'
Change-Id: I3c5d7e9e8c589ad4425cd89d61e1f572f5cb7997
Diffstat (limited to 'src/plugins/debugger/watchhandler.cpp')
-rw-r--r-- | src/plugins/debugger/watchhandler.cpp | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/src/plugins/debugger/watchhandler.cpp b/src/plugins/debugger/watchhandler.cpp index 6031ba57d11..69d26cb87f0 100644 --- a/src/plugins/debugger/watchhandler.cpp +++ b/src/plugins/debugger/watchhandler.cpp @@ -416,9 +416,9 @@ public: QString removeNamespaces(QString str) const; bool contextMenuEvent(const ItemViewEvent &ev); - QMenu *createFormatMenu(WatchItem *item); - QMenu *createMemoryMenu(WatchItem *item); - QMenu *createBreakpointMenu(WatchItem *item); + QMenu *createFormatMenu(WatchItem *item, QWidget *parent); + QMenu *createMemoryMenu(WatchItem *item, QWidget *parent); + QMenu *createBreakpointMenu(WatchItem *item, QWidget *parent); void addStackLayoutMemoryView(bool separateView, const QPoint &p); @@ -1657,9 +1657,9 @@ bool WatchModel::contextMenuEvent(const ItemViewEvent &ev) [this] { grabWidget(); }); menu->addSeparator(); - menu->addMenu(createFormatMenu(item)); - menu->addMenu(createMemoryMenu(item)); - menu->addMenu(createBreakpointMenu(item)); + menu->addMenu(createFormatMenu(item, menu)); + menu->addMenu(createMemoryMenu(item, menu)); + menu->addMenu(createBreakpointMenu(item, menu)); menu->addSeparator(); addAction(menu, tr("Expand All Children"), @@ -1712,13 +1712,14 @@ bool WatchModel::contextMenuEvent(const ItemViewEvent &ev) menu->addSeparator(); menu->addAction(action(SettingsDialog)); + connect(menu, &QMenu::aboutToHide, menu, &QObject::deleteLater); menu->popup(ev.globalPos()); return true; } -QMenu *WatchModel::createBreakpointMenu(WatchItem *item) +QMenu *WatchModel::createBreakpointMenu(WatchItem *item, QWidget *parent) { - auto menu = new QMenu(tr("Add Data Breakpoint")); + auto menu = new QMenu(tr("Add Data Breakpoint"), parent); if (!item) { menu->setEnabled(false); return menu; @@ -1760,9 +1761,9 @@ QMenu *WatchModel::createBreakpointMenu(WatchItem *item) return menu; } -QMenu *WatchModel::createMemoryMenu(WatchItem *item) +QMenu *WatchModel::createMemoryMenu(WatchItem *item, QWidget *parent) { - auto menu = new QMenu(tr("Open Memory Editor")); + auto menu = new QMenu(tr("Open Memory Editor"), parent); if (!item || !m_engine->hasCapability(ShowMemoryCapability)) { menu->setEnabled(false); return menu; @@ -1813,9 +1814,9 @@ QMenu *WatchModel::createMemoryMenu(WatchItem *item) return menu; } -QMenu *WatchModel::createFormatMenu(WatchItem *item) +QMenu *WatchModel::createFormatMenu(WatchItem *item, QWidget *parent) { - auto menu = new QMenu(tr("Change Value Display Format")); + auto menu = new QMenu(tr("Change Value Display Format"), parent); if (!item) { menu->setEnabled(false); return menu; |