aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/ctfvisualizer
Commit message (Collapse)AuthorAgeFilesLines
* TaskTree: Switch to qt-ified QtTaskTreeJarek Kobus2025-10-312-5/+5
| | | | | | | Remove the old Tasking lib. Change-Id: Iacb4939cc873e25d6039efae7dd23510a7baa5f9 Reviewed-by: hjk <hjk@qt.io>
* CtfVisualizer: Fix a crash in CMake ProfilerJarek Kobus2025-10-202-8/+3
| | | | | | | | | | | | Don't return reference to string from the m_reusableStrings set, as it may get invalidated on subsequent insert. Return copy instead - this is as cheap as ref. Simplify the implementation as drive in change. Fixes: QTCREATORBUG-33644 Change-Id: Ic7157b34e61b37bd37c93d5aa37e495e2b8190fe Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* CtfVisualizer: Disable empty modelsChristian Stenger2025-10-171-0/+1
| | | | | Change-Id: I7baf3c379f7dcf3521c685777180b09d241155db Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* CtfVisualizer: Deselect current event on filteringChristian Stenger2025-10-171-0/+10
| | | | | | | | | | | | Using the filter invalidates the order or may even remove the model used by the current selected event. Using next or previous afterwards can result in crashes when accessing the model or item by id as these now point to different models or items or even non-existing objects. Invalidate event selections to avoid these crashes. Change-Id: Ia80fa289f9ecbfd4bceabd60688a40149ac6324d Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* qbs build: Suppress some compiler warnings in third-party codeChristian Kandeler2025-10-101-1/+7
| | | | | Change-Id: I22443f215bc108b251e7415c3dbd87bbdb642df4 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* TaskTree: Rename TaskTreeRunner into SingleTaskTreeRunnerJarek Kobus2025-08-122-3/+3
| | | | | | | | Introduce AbstractTaskTreeRunner base class. Add a test for SingleTaskTreeRunner. Change-Id: I344aa8545f62f9e2e8fbbb741205d61ebbfe2d35 Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
* CMake: Use absolute dir attribution file pathsAlexandru Croitor2025-08-121-1/+1
| | | | | | | | Makes it less error prone than using relative paths. Task-number: QTCREATORBUG-31681 Change-Id: Ia7dbb79008139663a932369d4e2273680d8aa52b Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* CMake: Annotate attribution json files to targets that use themAlexandru Croitor2025-07-231-0/+7
| | | | | | | | | | | | | Otherwise the attribution file info is not included in the generated SBOM. For bundled 3rd party libraries, also specify the sbom entity type to clearly mark them as 3rd party libraries. Task-number: QTBUG-129609 Task-number: QTCREATORBUG-31681 Change-Id: Ia31fb0ae89288acd95ecd259d77719f2501be9ff Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Fix warning for ';'Marco Bubke2025-04-152-2/+2
| | | | | | | | The macro already contain a ';'. Removing the argument or [[maybe_unused]] would maybe even a better approach. Change-Id: I31750d10a4f252c667e7c0e5e13bf1085dbe11a2 Reviewed-by: hjk <hjk@qt.io>
* CtfVisializer: Remove unused methodJarek Kobus2025-02-062-6/+0
| | | | | | | Detected by Axivion plugin. Change-Id: I10769709c6a451595b39bbbb740dfa3376ef13ca Reviewed-by: hjk <hjk@qt.io>
* Debugger: Merge analyzerconstants.h into debuggerconstants.hhjk2024-12-201-1/+1
| | | | | Change-Id: Id092c8d0bedad987e963b36b0e9b46e7182209a2 Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* Plugins: Improve display names of pluginsAlessandro Portale2024-11-191-0/+1
| | | | | | | | | | | This introduces a field "DisplayName" to PluginSpec and the plugin spec json files. If present in the spec, PluginSpec::displayName returns it, or otherways falls back to more established fields. Fixes: QTCREATORBUG-31761 Change-Id: I4f4c4f3e33b17dfb2ec63644b1f50b3b9c6c024a Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Revert "Plugins: Improve display names of plugins"Eike Ziller2024-10-161-1/+1
| | | | | | | | | | | This reverts commit 8e5fab2d1755289288f1ff719c2a0bfb6ca28066. Reason for revert: We still have too many places where the name is used as an "id", like the wizards, which are now mostly disabled. Sorting that out will take time. Change-Id: Ic76baa7f8f272d5f4fac00cbc08e9ffec337773f Reviewed-by: hjk <hjk@qt.io>
* Plugins: Improve display names of pluginsAlessandro Portale2024-10-161-1/+1
| | | | | | Fixes: QTCREATORBUG-31761 Change-Id: I62b33248c77bf35907d66a38ac18eb0ecf1f323d Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Unify copyright string and remove yearEike Ziller2024-09-261-1/+1
| | | | | | | | | | | The year is not needed and requires us to update it manually each year. So just remove it. Centralize it in the branding file to avoid changes to be done at lots of places (About dialog, plugin specs, app info plist & rc, docs, ...) in the future. Task-number: QTCREATORBUG-30432 Change-Id: Ia421924c19a1331b121e765bcea137920025598d Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
* ExtensionSystem: Add PluginId and VendorIdMarcus Tillmanns2024-09-021-0/+2
| | | | | Change-Id: I4f47f95e1f4ff4af73c2b81320087b4592007993 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Plugins: Add URLs to manual page to plugin metadataAlessandro Portale2024-07-291-0/+1
| | | | | | Fixes: QTCREATORBUG-31199 Change-Id: Ideadc75499f32a8f1d1c95cd38dc4669a3d422c3 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Plugin meta data: Add full stop to descriptionsEike Ziller2024-06-281-1/+1
| | | | | | | | | Where they were missing. The text is shown as a paragraph in the extension manager. Change-Id: I6e15c89fe4023b222e9c476f4312e13fcb0905c0 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Add long descriptions to some pluginsLeena Miettinen2024-05-311-1/+5
| | | | | | | | | | | | Edited the short descriptions to answer the question "What can I do with this extension" to help users decide whether they need it. In long descriptions, tell users what else they need to be able to use the plugin. Change-Id: Iefce7505b61fc77cf38cc915f1f7dbd25c9cb570 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* CtfVisualizer: Avoid precision loss warningAlessandro Portale2024-04-091-1/+1
| | | | | Change-Id: If0f97ec662350ab309219f6a740a7b3b77639262 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* CtfVisualizer: Reuse TaskTreeRunnerJarek Kobus2024-01-172-36/+33
| | | | | | Change-Id: If893cdd260943a5e72b05595f15c3133e4340f8f Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
* CtfVisualizer: Destroy CtfTool earlier againhjk2024-01-123-7/+8
| | | | | | | | | | Amends 796053d7. After all, the defaulted destructor of the class did some actual work via the destructors of the QScopedPointer members. Change-Id: If6dc8a3d57961ec263fced11f9fa9f7e9f8c54cc Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* CtfVisualizer: Convert to new standard plugin setuphjk2024-01-126-40/+20
| | | | | Change-Id: Iaed31278cdbaf2933b325a3424d3c64e91f48d1c Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* TaskTree: Unify done / errorOccurred signalsJarek Kobus2023-11-071-22/+19
| | | | | | | | | | Get rid of TaskTree::errorOccurred signal. Provide additional DoneResult arg for done signal. Task-number: QTCREATORBUG-29834 Change-Id: I31a3a0701a14246b01f65303a1295f014c855ecf Reviewed-by: hjk <hjk@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
* CtfVisualizer: Do some cleanupJarek Kobus2023-10-0215-125/+71
| | | | | | | | | | | | | Remove unused headers. Use using namespace and drop unneeded namespace scopes. Replace QVector with QList. Return default constructed objects in default return statements. Avoid empty arg brackets in some lambdas. Use default member initializers. Change-Id: I11e62a291be3fa5bde4156e7a316765ee697b852 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* CtfVisualizer: Do not crash on unexpected types againEike Ziller2023-09-283-40/+58
| | | | | | | | | | And print a nicer error message. Amends c05f9cacc6be1038a1a9ecee0af07ac84c01738c Task-number: QTCREATORBUG-29659 Change-Id: I1db6bea0bedf1fae034fecbbbeae56bb2fee49ed Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* CtfVisualizer: Fix multithreading issuesJarek Kobus2023-09-274-121/+104
| | | | | | | | | | | | Simplify the CtfVisualizerTool::loadJson(). Don't create a QThread manually, but use TaskTree with AsyncTask instead. Move pure parsing into the separate thread, and leave the nlohmann::json event handling in the main thread. Avoid moving m_modelAggregator between threads. Fixes: QTCREATORBUG-29657 Change-Id: I0c6a9a4ea8298dbbdbafcddd338d39ad73c3f82b Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* CMakePM: Add CMake Profiler actionCristian Adam2023-09-212-8/+13
| | | | | Change-Id: I17f258834724c37f0933d18b6214851be1965913 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* CtfVisualizer: Fix computation of nesting levelEike Ziller2023-09-122-14/+6
| | | | | | | | | | | | | The computed nesting level (which row an event to show in) was solely based on begin+end events and "complete" events were ignored. Compute the rows afterwards, similar to the "parent" computation that the timeline model already does. Find the first row that is free, and use that for the row of the item. Change-Id: I890138c10f5038508da9b286b35d7bcfdf0ab64d Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* CtfVisualizer: Allow strings for process and thread idEike Ziller2023-09-125-32/+48
| | | | | | | | | | | While the format document only uses numbers for these in its examples, the data type is not really specified there and chrome://tracing itself handles strings for them without complaint. On trace-generating side std::thread::id can't easily be serialized as a number, and strings can easily be supported in the viewer. Change-Id: I36c8497049d4933058b9f72a28f24e1d1cf0d5bb Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Merge remote-tracking branch 'origin/11.0' into HEADDavid Schulz2023-09-121-2/+5
|\ | | | | | | Change-Id: I3b6a4bd860c11324d989818d9010f07faaac677a
| * CtfVisualizer: Never crash with uncaught exception when loading JSONEike Ziller2023-09-081-2/+5
| | | | | | | | | | | | | | | | | | | | | | If we retrieve a value of a type that doesn't match the actual type in the JSON, the JSON library throws an exception. We should have checks to avoid this, but as a global measure never let exceptions through to Qt Creator. Change-Id: Ibfe830d745a94810f874ccca82b83d57ea72f31e Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
* | Utils: Make TreeViews use setUniformRowHeights by defaulthjk2023-09-051-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | When applicable, the flag makes a significant difference in performacnce. However is easily forgotten in cases where it is applicable, and cases where it is accidentally used are easily spotted visually. So arguably, opt-out is a better default than opt-in. Change-Id: I88aeb05b42533ba4e23c39573a3ddd016343cd55 Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* | Various Plugins: Add context object into connectionsJarek Kobus2023-08-022-3/+2
| | | | | | | | | | | | Change-Id: I360677bebfef16a3233b3b8177cff6da57ec7c31 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* | Build: Change plugin json.in files to CMake styleEike Ziller2023-07-251-16/+16
|/ | | | | | | | | | | | | They were still using variables in qmake style. Directly use CMake variables in the json.in files and remove the no longer needed escaping of quotes. Adds a fatal message if it detects the old style in a .json.in file for easier porting. Change-Id: I8de88d8db2da55781f0e9d72eda03f943723188e Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Utils: Centralize style-related property names as constantsAlessandro Portale2023-05-101-1/+3
| | | | | | | | | | This introduces string constants in Utils::StyleHelper. They are used by code all over in Qt Creator to tell ManhattanStyle how to paint certain widgets. Change-Id: Iecca36103f80084cd5fe93fcb6b18b8fbb3a32bb Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Fix lots of tr.h files not being mentioned in CMakeLists.txtEike Ziller2023-04-011-0/+1
| | | | | | | Change-Id: I63d364ac50d9587339b10a5571870cb9a81c54ee Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: hjk <hjk@qt.io>
* Translations: Change translation context prefix from "::" to "QtC::"Alessandro Portale2023-02-102-2/+2
| | | | | | | lupdate would be confused by translation contexts starting with :: Change-Id: Ie95e73436fd3cafc80a8e89f908efadc747e644c Reviewed-by: hjk <hjk@qt.io>
* Translations: Use QCoreApplication::translate() instead of tr()Alessandro Portale2023-02-091-2/+2
| | | | | | | | | | QCoreApplication::translate() takes a context parameter, tr() does not. We want the first one. Amends: 48affa1889ab7285ac84a50bd2df34f50c2b1bfb Change-Id: Ibca327a39097dfcdb81a30e561161d3275c61d1d Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
* Qbs: Update some qbs filesChristian Stenger2023-02-081-1/+2
| | | | | | | | List respective tr files and while at it shuffle some of the listed files to match common sort order. Change-Id: I73845ad1dae5e8c86d3741067f40b7b2b37e2a6e Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Translations: Remove header includes of *tr.h in .h filesAlessandro Portale2023-02-082-2/+4
| | | | | | | | | The wrong Tr::tr could be executed by code indirectly including a *tr.h file from another module. To Translate in a header file, use QCoreApplication::tr(). Change-Id: I30e67245991d2c2f0eeb01ab356555bdb9841af0 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Use simpler Plugin::initialize() when feasiblehjk2023-01-202-6/+3
| | | | | Change-Id: I567965d266f20526bda9f823e31a04b354d53fb1 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Prefix Tr::tr contexts with ::hjk2023-01-131-1/+1
| | | | | | | To make outliers better visible in Linguist Change-Id: Ic35ea2a858b7e3576d9a416fb494fddb616eaaa1 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Remove GPL-3.0+ from license identifiersKai Köhne2023-01-0616-16/+16
| | | | | | | | | | | | | | | Since we also license under GPL-3.0 WITH Qt-GPL-exception-1.0, this applies only to a hypothetical newer version of GPL, that doesn't exist yet. If such a version emerges, we can still decide to relicense... While at it, replace (deprecated) GPL-3.0 with more explicit GPL-3.0-only Change was done by running find . -type f -exec perl -pi -e "s/LicenseRef-Qt-Commercial OR GPL-3.0\+ OR GPL-3.0 WITH Qt-GPL-exception-1.0/LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0/g" {} \; Change-Id: I5097e6ce8d10233993ee30d7e25120e2659eb10b Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* CMake build: Use version-less Qt targetsEike Ziller2023-01-051-1/+1
| | | | | | | | | Since we do not support Qt < 5.15 anymore, and as a first step for getting rid of our special FindQt5.cmake. Change-Id: Icc5dbaf9b0a3a622b1f609ff114b9decb6d2856c Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Fix lupdate issuesEike Ziller2022-10-141-1/+1
| | | | | | | | | | - missing Q_DECLARE_TR_FUNCTIONS - some full qualifications needed for confused lupdate - avoid breaking some translations from former TaskListPlugin, VcsCommand and highlighter settings refactoring Change-Id: Ia3b34095512a7bad6903f0aff6095313ee39e3e4 Reviewed-by: hjk <hjk@qt.io>
* Port from qAsConst() to std::as_const()Marc Mutz2022-10-071-3/+3
| | | | | | | | | | | | | | We've been requiring C++17 since Qt 6.0, and our qAsConst use finally starts to bother us (QTBUG-99313), so time to port away from it now. Since qAsConst has exactly the same semantics as std::as_const (down to rvalue treatment, constexpr'ness and noexcept'ness), there's really nothing more to it than a global search-and-replace. Task-number: QTBUG-99313 Change-Id: I88edd91395849574436299b8badda21bb93bea39 Reviewed-by: hjk <hjk@qt.io>
* CtfVisualizer: Convert to using Tr::trAlessandro Portale2022-09-225-40/+49
| | | | | Change-Id: Ide0c6556642c20a200fd72ec8e9596950af823b4 Reviewed-by: hjk <hjk@qt.io>
* Use SPDX license identifiersLucie Gérard2022-08-2616-399/+32
| | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Task-number: QTBUG-67283 Change-Id: I708fd1f9f2b73d60f57cc3568646929117825813 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Tracing/Qml|PerfProfiler/CtfVisualizer: Move QML modules to :/qt/qmlAlessandro Portale2022-07-201-2/+3
| | | | | | | | We don't want to dedicate the whole resource file system to QML. Change-Id: I4c7e4af7aeeab00f44c5244e99949a90abb032cf Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>