Valgrind: Add clear button to callgrind tool

Callgrind runs can spread TextMarks across files. Only way to
get rid of them would be to start a new analyze and stop it
before it can add new TextMarks.
Be user-friendly and allow clearing the data including the
TextMarks explicitly.

Change-Id: If8d5c5f789414709a110249377ce907466c0fdf1
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Christian Stenger
2018-05-15 08:58:01 +02:00
parent 607a3dd678
commit e3fb057397

View File

@@ -217,6 +217,7 @@ public:
QAction *m_dumpAction = nullptr;
QAction *m_resetAction = nullptr;
QAction *m_pauseAction = nullptr;
QAction *m_discardAction = nullptr;
QString m_toggleCollectFunction;
bool m_toolBusy = false;
@@ -392,6 +393,15 @@ CallgrindTool::CallgrindTool()
action->setToolTip(tr("Pause event logging. No events are counted which will speed up program execution during profiling."));
connect(action, &QAction::toggled, this, &CallgrindTool::pauseToggled);
// discard data action
m_discardAction = action = new QAction(this);
action->setIcon(Utils::Icons::CLEAN_TOOLBAR.icon());
action->setToolTip(tr("Discard Data"));
connect(action, &QAction::triggered, this, [this](bool) {
clearTextMarks();
doClear(true);
});
// navigation
// go back
m_goBack = action = new QAction(this);
@@ -421,6 +431,7 @@ CallgrindTool::CallgrindTool()
toolbar.addAction(m_dumpAction);
toolbar.addAction(m_resetAction);
toolbar.addAction(m_pauseAction);
toolbar.addAction(m_discardAction);
toolbar.addAction(m_goBack);
toolbar.addAction(m_goNext);
toolbar.addWidget(new Utils::StyledSeparator);