aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmlprofiler
Commit message (Collapse)AuthorAgeFilesLines
* QmlProfiler: Fix flamegraph testChristian Stenger2020-11-161-2/+2
| | | | | Change-Id: I27d7067a844e614334a5faedcb2915b3a24ae5e0 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Remove unneeded includesJarek Kobus2020-11-121-1/+0
| | | | | Change-Id: I67fee9303509b7080e123a2a5826e200ce498ce2 Reviewed-by: hjk <hjk@qt.io>
* Merge remote-tracking branch 'origin/4.13' into 4.14Eike Ziller2020-10-091-1/+1
|\ | | | | | | | | | | | | | | | | Conflicts: cmake/QtCreatorIDEBranding.cmake qbs/modules/qtc/qtc.qbs qtcreator_ide_branding.pri Change-Id: Ia779a511d73d86d79dbcecd8cc3763cf3d605a87
| * qmlprofiler: Fix a crash in the rangeFilterDominik Holland2020-10-091-1/+1
| | | | | | | | | | | | | | | | Always check the stack before popping an element. Fixes: QTCREATORBUG-24730 Change-Id: I7dc6363137ef002219fbc49b7343cff8112a58c2 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
| * Core/Utils: Migrate further to Utils::Idhjk2020-07-063-4/+4
| | | | | | | | | | | | | | | | The coreplugin/id.h header is kept for downstream for now. Change-Id: I8c44590f7b988b3770ecdc177c40783e12353e66 (cherry picked from commit 430a33dcd9ac80ddb848e41f8f059102857c88aa) Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* | QmlProfiler: Replace QRegExp by QRegularExpressionChristian Stenger2020-07-142-9/+10
| | | | | | | | | | | | Task-number: QTCREATORBUG-24098 Change-Id: I98bc7a6561c8e19da984d2efbf36d890b1f48ebf Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* | Core/Utils: Migrate further to Utils::Idhjk2020-07-063-4/+4
|/ | | | | | | The coreplugin/id.h header is kept for downstream for now. Change-Id: I8c44590f7b988b3770ecdc177c40783e12353e66 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Move Id from Core to UtilsEike Ziller2020-06-181-1/+2
| | | | | | | | | | | | | | | | And add a compatibility wrapper for Core::Id, so we don't have to rename all occurrences from Core::Id to Utils::Id. This allows us to use Id also in Utils, which makes it possible to e.g. move Core::InfoBar to Utils without work arounds. Change-Id: I5555d05b4e52f09d501dbfe5d91252a982a97c61 Reviewed-by: Marco Bubke <marco.bubke@qt.io> Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: David Schulz <david.schulz@qt.io> Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: André Hartmann <aha_1980@gmx.de>
* Use dialogParent() instead of mainWindow()Eike Ziller2020-06-021-5/+5
| | | | | | | | | | There are very few reasons to use mainWindow() directly. Especially for modal dialogs, using dialogParent() is important, since that guarantees the stacking order in case of other dialogs currently being open. Change-Id: I7ad2c23c5034b43195eb35cfe405932a7ea003e6 Reviewed-by: hjk <hjk@qt.io>
* Check for selection support of clipboardChristian Stenger2020-05-141-2/+4
| | | | | | | | | | Setting the data on a non-supported MIME data will fail and get deleted. Checking beforehand gets rid of a warning printed by QClipboard. Change-Id: I5b5a371ce5b904f61a1aed5ea21a98908155357b Reviewed-by: hjk <hjk@qt.io>
* QmlProfiler: Fix warning about unused lambda captureChristian Kandeler2020-04-231-1/+1
| | | | | Change-Id: I029497edaac5695d47a8930a304713fba48ded15 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Fix lupdate issuesEike Ziller2020-03-181-1/+1
| | | | | Change-Id: I26f08ae82354c178f6d26f9138796328b50bfba8 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* Update qmljs parser to Qt 5.15 parserFawzi Mohamed2020-03-031-1/+7
| | | | | | | | | | | | | * parser side support for annotations, inline components, new UiVersion and all the things included in QT 5.15 parser * SourceLocation moved from QmlJS:AST to QmlJS * Visitors now need to handle throwRecursionDepthError * BaseVisitor for visitors that want to override all visit Task-number: QTCREATORBUG-23591 Change-Id: I682a30d0b08b6c929739fd0e339ef6fbde3eb630 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* ProjectExplorer: Disentangle ProjectExplorer::updateRunActionshjk2020-02-261-1/+1
| | | | | | | | | | | | | | | | | This enforces a linear pass through [static] ProjectExplorerPlugin::updateRunActions ProjectExplorerPluginPrivate::doUpdateRunAction [emit] ProjectExplorerPluginPrivate::runActionsUpdated instead of the previous direct emission of the signal from user code and connecting also the internal update to it. This is meant to simplify reasoning about execution order and maybe to help elimimating double executation. Change-Id: Id8cc41a46d9dec06afb5514855f2ae80560f3695 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Globally disable WindowContextHelpButtonHintKai Koehne2020-02-251-1/+0
| | | | | | | | | | | Do set the global application flag AA_DisableWindowContextHelpButton to avoid having to unset the default WindowContextHelpButtonHint in every single dialog. AA_DisableWindowContextHelpButton was added in Qt 5.10. Change-Id: I21fe8bc5ddfa4c01ec7a799b04bfb6ff1c9d6d86 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Work around QHash::unite deprecationhjk2020-02-251-2/+4
| | | | | Change-Id: Ibf199b5e3f2ca99b7e0cafe20893a509d9eab906 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Several SettingsPages: Code cosmeticshjk2020-01-302-3/+2
| | | | | | | De-Q_OBJECT-ify, remove unnecessary #includes, final-ize, etc. Change-Id: I461d3e73400dacac90c22e7c84a40e3ea1718b6e Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* CMake Build: rename target qmljs to QmlJSCristian Adam2020-01-161-1/+1
| | | | | | | This is in sync with what qmake and qbs project have. Change-Id: Id82bbd933a8331c3e2032e5068323c183b2a1814 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Core: Introduce a IOptionsPage::setCategoryIconPathhjk2020-01-161-1/+1
| | | | | | | Less noise on the user side. Change-Id: I34dea09e8a3c8639f5a7db89b22f8b825b946395 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* ProjectExplorer: Replace BuildConfigurationFactory::availableBuildshjk2020-01-091-4/+3
| | | | | | | ... by a function object. Change-Id: I9953ba6915c0177e7c4067d36dd755fc2ba5cf84 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Consolidate some Session::active* accesseshjk2019-11-291-1/+1
| | | | | Change-Id: I47b0f6c2c60b2f7c86b6ffd1ad3df393d1321c8b Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Remove unused QObject parent arguments on options pageshjk2019-09-112-3/+3
| | | | | | | | In the new plugin setup scheme they are data members of the plugin pimpl and never use the parent. Change-Id: I28fe150393e8159064dcfbd113ce0320af50fd58 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* ProjectExplorer: Use std::function for SimpleTargetRunner::start()hjk2019-09-042-28/+21
| | | | | | | | | This spares us the typical r = runnable(); modify(r); setRunnable(r) roundtrip and the m_runnable storage that might or might not be the same as runControl->runnable. Similar for m_device. Change-Id: I8300260dd8dd7cd395e40bcd3d2ae45089085008 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Remove usages of deprecated APIsSona Kurazyan2019-09-031-5/+5
| | | | | | | | | | | | Replaced: QPalette::ColorRole::Background -> QPalette::ColorRole::Window QPalette::ColorRole::Foreground -> QPalette::ColorRole::WindowText Qt::ItemDataRole::TextColorRole -> Qt::ItemDataRole::ForegroundRole QFontMetrics::width() -> QFontMetrics::horizontalAdvance() Task-number: QTBUG-76491 Change-Id: I1302e6b569e725daa6f7be1428ffe055657fc644 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* QmlProfiler: Use standard setup for runner setuphjk2019-09-033-12/+14
| | | | | | | | Code-wise no immediate advantage, but removes the need for the unusual 'started' signal. Change-Id: Ie1d99127e8fe1561c35e035894ee5dd4639d3f12 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QmlProfiler: Work around incomplete setuphjk2019-09-021-0/+2
| | | | | | | | | | | | | | | | | | | Amends 3844f598061. Some RunControl::registerWorkerCreator(ProjectExplorer::Constants::QML_PROFILER_RUN_MODE, [this](RunControl *runControl) { auto runner = new QmlProfilerRunner(runControl); connect(runner, &QmlProfilerRunner::starting, &d->m_profilerTool, &QmlProfilerTool::finalizeRunControl); return runner; }); hunk disappeared. This here has the same effect. Change-Id: Ib81a78944145cc2075bfcb931691adf214f3560d Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QmlProfiler: Reduce code size for feature menu setuphjk2019-09-022-22/+8
| | | | | Change-Id: Ied31be4c880f2e38935830e35afb20435d7f74b2 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QmlProfiler: Remove some dead codehjk2019-08-301-4/+0
| | | | | Change-Id: I5f13797044e2c80d4a651bb91bf6e722552566f6 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* ProjectExplorer: Use a ISettingsAspect::setConfigWidgetCreator() setterhjk2019-08-301-1/+2
| | | | | | | Closer to the usual pattern elsewhere. Change-Id: Ieaed483bc7f61b63e5bde87a721f43c3e3d737aa Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Standardize RunWorker creation logichjk2019-08-271-9/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This unifies the remaining paths of RunWorker creation to always use RunWorkerFactories in the plugin pimpls. There were, and are, still effectively three basic kinds of workers: - "toplevel" tools corresponding to the run modes, that are often all that's used for local runs and directly started via the fat buttons or e.g. entries in the analyze menu, with factories already previously located in the plugin pimpls - core "tool helpers", providing tool specific functionality typically used in conjunction with a remote device specific run mechanism, set up via RunControl::registerWorkerCreator - target/device specific runhelper like port gatherers contructed e.g. via *Device::workerCreator(Core::Id id) Worse, these categories are partially overlapping, so it was not clear how a "clean" setup would look like, instead some ad-hoc cobbling "to make it work" happened. In some cases, the runMode id was used throughout the whole ensemble of run workers for a given run, and which worker exactly was created depended on which of the mechanism above was used in which order. With the new central setup, the top-level runmodes remain, but the second kind gets new ids, so the implicit dependencies on order of setup mechanism are avoided. This also helps in the cases where there was previously unclarity of where and how to set up worker factories: It's always and only the plugin pimpl now. Change-Id: Icd9a08e2d53e19abe8b21fe546f469fae353a69f Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QmlProfiler: Remove unnecessary parameter from test codeTobias Hunger2019-08-151-2/+2
| | | | | Change-Id: Ia1963e316f7c56357989440a13af5d73488ffece Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* ProjectExplorer: Re-work setup runworker factorieshjk2019-08-097-37/+29
| | | | | | | | | | | | | | | This combines two of the previous three paths to create run workers, and refers to RunConfigurations by id, not by type where possible to decrease coupling between the classes. Only allow "type of run configuration" and "type of device" as the only possible kind of restriction and require a uniform RunWorker constructor signature. Adapt user code to fit that pattern. Change-Id: I5a6d49c9a144785fd0235d7586f244b56f67b366 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* ProjectExplorer: Add convenience Project::addTargetFor{Default,}Kithjk2019-08-011-7/+1
| | | | | | | Less noise on the user side. Change-Id: I5cdf4af4910a3cc1ee0af1b43fcbc7329a6d59db Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* QmlProfiler: Avoid a deprecation warninghjk2019-07-301-1/+2
| | | | | Change-Id: Ie30d30d304faf71dee36c8ae3a37e8974af99bf3 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Merge remote-tracking branch 'origin/4.10'Eike Ziller2019-07-261-1/+1
|\ | | | | | | Change-Id: I427280fdb207b878000697dfd37595ffdb26f4e7
| * QmlProfiler: avoid using Q_FOREACH over QVarLengthArrayMarc Mutz2019-07-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | The squeeze() function is called by clients for QVLA's, which means it's copying 1-2KiB of data (depending on sizeof(value_type)) just to iterate over a small part of it. Use a C++11 ranged for loop. Change-Id: I2c33ae0c5a3d9d941cd9e385fc6bbb4fb0fa3c2c Reviewed-by: hjk <hjk@qt.io>
* | Avoid warning on empty expressionshjk2019-07-2312-22/+22
| | | | | | | | | | | | | | | | For some reason, Q_UNUSED includes already a semicolon, adding one on the user side creates an additional empty statement. Change-Id: I9c5e8fac381345a60792cb75e2938fd53958d3b0 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* | Tracing: Use Combobox for the modes menuUlf Hermann2019-07-051-1/+0
| | | | | | | | | | | | | | | | This is a better fit than a custom Button + Menu combination. Fixes: QTCREATORBUG-22579 Change-Id: Ie6f8a7ef2ce0da67a16bc365d6f619a11bc56221 Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
* | QmlProfiler: deleteLater() the debug message and engine control clientsUlf Hermann2019-07-031-10/+18
| | | | | | | | | | | | | | | | | | | | Nesting the dtors of the different clients is dangerous as the connection might call back into a virtual function of a half-destructed object this way. Fixes: QTCREATORBUG-22640 Change-Id: I91fccc41fbea40a7f78ef344759abe26d140434d Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* | ProjectExplorer: Merge BuildConfigurationFactory::availableBuildshjk2019-06-271-7/+1
| | | | | | | | | | | | | | ... and availableSetups as far as mechanically possible. Change-Id: Ia1d7babe943eea25da97cef7838187c234378673 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | ProjectExplorer: Align signatures of BuildConfigurationhjk2019-06-271-1/+2
| | | | | | | | | | | | | | | | | | | | ... availableBuilds() and availableSetups(). Goal is to merge them and inline all the local createBuildInfo() functions. Change-Id: I9f19093163808b6da6dc83977894420e08a1edd9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | ProjectExplorer etc: More FilePath usagehjk2019-06-261-1/+4
| | | | | | | | | | | | | | Mostly for project files. Change-Id: Icb6059f80758865e42cc9f9c092ec6782770dfd7 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | ProjectExplorer: Use Utils::FileName for Runnable::executablehjk2019-06-211-2/+2
|/ | | | | Change-Id: I584bc18aa19a4c9886af7b13e95052dfd4350b34 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Utils: Remove rarely used FilePath constructorhjk2019-05-281-2/+2
| | | | | | | Not much benefit interface-wise. Change-Id: I0e605ec235e8072efcbf7e777cf7e8f8ee5e0799 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Utils: Rename FileName to FilePathhjk2019-05-283-10/+10
| | | | | | | | More in line with QFileInfo terminonlogy which appears to be best-of-breed within Qt. Change-Id: I1d051ff1c8363ebd4ee56376451df45216c4c9ab Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ExtensionSystem: Move away from QListEike Ziller2019-05-272-3/+3
| | | | | | | | Qt 6 API will move away from it. Use QVector for API and some std container for internal things. Change-Id: Iff14d48a47d5ac52ade875d9c8c84ad8a4f577d8 Reviewed-by: hjk <hjk@qt.io>
* Remove excess blank lines after namespaceOrgad Shaneh2019-05-271-1/+0
| | | | | Change-Id: I4e4f83017f2bfc2cf842c4c971ed4b05e0447e6a Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* CMake build: Add ability to disable building of individual pluginsEike Ziller2019-05-231-4/+4
| | | | | | | | | | | | | | Adds a cache entry "BUILD_PLUGIN_${NAME}", defaulting to ON which can be set to OFF to disable building of a plugin. Adds a extend_qtc_plugin function that should be used to add properties to a plugin after add_qtc_plugin, instead of the standard CMake functions target_... . The new function results in a no-op if the plugin was disabled. Change-Id: I57f6799620aea0aaa8b56acead4815ccced95911 Reviewed-by: Cristian Adam <cristian.adam@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Qt Creator CMake portCristian Adam2019-05-171-0/+75
| | | | | | | | | | | | | | Based on Tobias Hunger's work from a few months ago. The CMake configuration needs libclang and Qt paths specified as CMAKE_PREFIX_PATH. Auto tests are run with "ctest". At the moment the pass rate is 87%. Change-Id: Iba98e39bf22077d52706dce6c85986be67a6eab0 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Tobias Hunger <tobias.hunger@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Merge remote-tracking branch 'origin/4.9'Eike Ziller2019-05-081-3/+1
|\ | | | | | | | | | | | | | | | | | | | | | | Conflicts: doc/src/howto/creator-sidebar-views.qdoc doc/src/howto/creator-ui.qdoc qbs/modules/qtc/qtc.qbs qtcreator.pri src/plugins/autotest/testresultmodel.cpp src/plugins/autotest/testresultmodel.h Change-Id: I24cc585ca7782cb1d9cb0b8b73b46892b41937fd