diff options
| author | Cristian Adam <cristian.adam@qt.io> | 2023-09-21 19:11:01 +0200 |
|---|---|---|
| committer | Cristian Adam <cristian.adam@qt.io> | 2023-09-21 18:39:53 +0000 |
| commit | ed1568309b2c7b11de0be952ea6468cb5427fbac (patch) | |
| tree | 250c27f163d6c88f4d23028c98a78701e4892219 /src/plugins/ctfvisualizer/ctfvisualizertool.cpp | |
| parent | 1d5ecdb5c754107129b3b275b7fbbabbf7bcd513 (diff) | |
CMakePM: Add CMake Profiler action
Change-Id: I17f258834724c37f0933d18b6214851be1965913
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Diffstat (limited to 'src/plugins/ctfvisualizer/ctfvisualizertool.cpp')
| -rw-r--r-- | src/plugins/ctfvisualizer/ctfvisualizertool.cpp | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/plugins/ctfvisualizer/ctfvisualizertool.cpp b/src/plugins/ctfvisualizer/ctfvisualizertool.cpp index 5b13573bb3f..22b6bd50473 100644 --- a/src/plugins/ctfvisualizer/ctfvisualizertool.cpp +++ b/src/plugins/ctfvisualizer/ctfvisualizertool.cpp @@ -58,7 +58,15 @@ CtfVisualizerTool::CtfVisualizerTool() m_loadJson.reset(new QAction(Tr::tr("Load JSON File"), options)); Core::Command *command = Core::ActionManager::registerAction(m_loadJson.get(), Constants::CtfVisualizerTaskLoadJson, globalContext); - connect(m_loadJson.get(), &QAction::triggered, this, &CtfVisualizerTool::loadJson); + connect(m_loadJson.get(), &QAction::triggered, this, [this] { + QString filename = m_loadJson->data().toString(); + if (filename.isEmpty()) + filename = QFileDialog::getOpenFileName(ICore::dialogParent(), + Tr::tr("Load Chrome Trace Format File"), + "", + Tr::tr("JSON File (*.json)")); + loadJson(filename); + }); options->addAction(command); m_perspective.setAboutToActivateCallback([this]() { createViews(); }); @@ -142,21 +150,18 @@ Timeline::TimelineZoomControl *CtfVisualizerTool::zoomControl() const return m_zoomControl.get(); } -void CtfVisualizerTool::loadJson() +void CtfVisualizerTool::loadJson(const QString &filename) { if (m_isLoading) return; - m_isLoading = true; - - QString filename = QFileDialog::getOpenFileName( - ICore::dialogParent(), Tr::tr("Load Chrome Trace Format File"), - "", Tr::tr("JSON File (*.json)")); if (filename.isEmpty()) { m_isLoading = false; return; } + m_isLoading = true; + auto *futureInterface = new QFutureInterface<void>(); auto *task = new QFuture<void>(futureInterface); |
