aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmlpreview
Commit message (Collapse)AuthorAgeFilesLines
* Provide an empty default IPlugin::extensionsInitialized()hjk2020-02-072-5/+0
| | | | | | | And remove all empy re-implementations. Change-Id: I19f0b4e55c042c96693ecb89766f97f0a97b54ae Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* QmlPreview: Fix memory leakChristian Kandeler2020-01-231-1/+1
| | | | | | Change-Id: Ibdd6634308f1f0c15026a4d52c17c0efe92c64e9 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Federico Guerinoni <guerinoni@micro-systems.it>
* 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>
* QmlDesigner: use current file to start previewTim Jenssen2020-01-131-4/+29
| | | | | | | | - Maybe we need a check if it is a qml file. Task-number: QDS-1299 Change-Id: I2b54514f311fb78d3508e588783c0d04c7a7bc0b Reviewed-by: hjk <hjk@qt.io>
* QmlProject: move/rename MainQmlFileAspect to QmlMainFileAspectTim Jenssen2020-01-083-2/+4
| | | | | | | | Will be used later in LocalQmlPreviewSupport so add also export and dependencies in the build system files. Change-Id: Ie5d26e7b89342c3ae3ff682a73194f240b71c21a Reviewed-by: hjk <hjk@qt.io>
* Utils: Rename FilePathList to simply FilePathshjk2019-12-181-1/+1
| | | | | | | The exact storage type does not really matter here. Change-Id: Iefec40f0f5909c8e7ba3415db4a11962694e1b38 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Fix lupdate issuesEike Ziller2019-11-041-1/+1
| | | | | | Change-Id: Ib0cbb96a1a4857db5724f9d1e316b97bf2827dbd Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Merge remote-tracking branch 'origin/4.10'Eike Ziller2019-09-121-1/+1
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: cmake/QtCreatorIDEBranding.cmake qbs/modules/qtc/qtc.qbs qtcreator_ide_branding.pri src/plugins/projectexplorer/gcctoolchain.cpp src/plugins/qmldesigner/components/stateseditor/stateseditormodel.cpp Change-Id: Iffdf48e782a734107ea170ebb3812e997cea0e7b
| * Fix MSVC warningsOrgad Shaneh2019-09-111-1/+1
| | | | | | | | | | | | | | | | | | | | * Missing `this` captures * Implicit size_t -> int conversion * Unused argument * Suppress warnings in clang headers Change-Id: I7083ce6ab22ee22ecc1258539e77c790acc78df1 Reviewed-by: hjk <hjk@qt.io>
* | ProjectExplorer: Use std::function for SimpleTargetRunner::start()hjk2019-09-041-5/+7
| | | | | | | | | | | | | | | | | | 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>
* | QmlPreview: Fix endless recursionhjk2019-09-031-1/+1
| | | | | | | | | | | | | | Amends 3844f598061. Change-Id: I953f7e8af7ada9eac4cafd1e3bba8bbcac99cf08 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* | ProjectExplorer: Proliferate FilePathhjk2019-08-291-1/+1
| | | | | | | | | | | | | | DeployableFile and fallout. Change-Id: I9a9c56e4a4ebf8f68df70d65da2e699efedfe907 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | ProjectExplorer: Standardize RunWorker creation logichjk2019-08-271-33/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | QmlPreview: Pimpl pluginhjk2019-08-152-88/+127
| | | | | | | | | | | | | | | | | | This is closer in structure and timing to what others do. Properties are left in the plugin itself in case someone uses them. Change-Id: Ic43aea1da7e3bc56e9678144f37f5ad40ce1b20f Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* | ProjectExplorer: Re-work setup runworker factorieshjk2019-08-092-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Some clang-tidy -use-modernize-nullptrhjk2019-08-011-2/+2
| | | | | | | | | | Change-Id: I1bed5e85a5b7948d08502a72a10f80baa075c204 Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
* | Avoid warning on empty expressionshjk2019-07-231-3/+3
|/ | | | | | | | 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>
* Utils: Rename FileName to FilePathhjk2019-05-282-2/+2
| | | | | | | | 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-273-4/+4
| | | | | | | | 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>
* 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/+18
| | | | | | | | | | | | | | 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>
* ProjectExplorer: Rename ProjectTree::findCurrentNode to currentNodehjk2019-04-302-3/+3
| | | | | | | | For consistency, it's straight forwards access, similar to currentProject, not much to search and find. Change-Id: I7ce696bdc24b6a8713d6f11e02443a6f94c605f6 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* QmlPreview: Simplify QmlPreviewRunnerhjk2019-03-182-14/+13
| | | | | Change-Id: Icdbc65ec39dd63d59f5bc96b21649a9d488be920 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Limit scope of uses of RunControl::runConfiguration()hjk2019-03-181-4/+4
| | | | | Change-Id: Iccd9c0ce869060367db606b3c338bf21b2299548 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* ProjectExplorer: Move RunControl related classes to separate file pairhjk2019-03-131-1/+2
| | | | | Change-Id: I5da56f80336673d595907abcc797f628be680cd5 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Avoid some visible uses of RunControl::runConfiguration()hjk2019-03-121-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For a long time, probably from the very beginning, a RunControl was meant to hold (a copy of) data needed for its operation, that was valid at the time of its construction, to be resilient in cases where RunConfiguration setting were changed while the RunControl was running, or to properly re-run with the original settings. Unfortunately, the task was repetitive, as RunConfiguration classes had no generic access to properties / "aspects" and there was was the runConfiguration() accessor (probably for mostly unrelated reasons in the output pane handling) which made the idea of just casting that to the original runConfiguration and access the data directly there appealing, with all the expected consequences. This patch here partially addresses the issue by copying some more of the related data at RunControl construction time and adjust the using code, avoiding most uses of the runConfiguration() accessor in a mostly mechanical matter. Complete removal appears possible, but will be less mechanical in "difficult" plugins like ios, so this is left for later. The new accessors in RunControl are very much ad-hoc, leaving room for improvement, e.g. by consolidating the access to the run config settings aspects with the other runconfig aspects or similar. For now the goal is to remove the runConfiguration() accessor, and to as much as possible fixed data after RunControl setup is finished. Next step would be to officially allow construction of RunControls without a specific RunConfiguration by setting the necessary data independently, removing the need for the various workarounds that are currently used for the purpose of faking (parts of) the effect of the non-existing RunConfiguration or refusing to operate at all, even if it would be possible. Change-Id: If8e5596da8422c70e90f97270389adbe6d0b46f2 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Merge Node::isFileNodeType and asFileNodehjk2019-03-011-1/+1
| | | | | | | They were identifying the same set of nodes. Change-Id: I3316cbc434ff740547bcf0baf9e5f1544f6e3f56 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Replace Node::setNodeType by virtual functionshjk2019-03-011-1/+1
| | | | | | | | | | | | | | | Not the usual direction of change, but currently there are several systems to identify or invoke node functionality. Virtual functions are likely to stay in this context, so this here attempts to help consolidation by reducing the influence of the node type flags, hopefully leading to full removal by making remaining functionality available through the other mechanisms (virtual functions, asFooNode() 'casts', less so the FileType flag). Change-Id: I12a17ce30b3c8883995b29b4720408020ee0fa3e Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Rename KitInformation to KitAspectChristian Kandeler2019-02-112-2/+2
| | | | | | | | | | | The name "KitInformation" does not properly convey the fact that it represents a certain *aspect* of a kit. The same goes for "KitConfigWidget", which in addition was inconsistent with "KitInformation". We now use "KitAspect" and "KitAspectWidget". Change-Id: I9804ee4cedc4d61fad533ea1dd4e4720e67fde97 Reviewed-by: hjk <hjk@qt.io>
* Import QML preview plugin into Qt CreatorUlf Hermann2019-01-1720-0/+2008
... and relicense it as GPL or Commercial. Fixes: QTCREATORBUG-21838 Change-Id: I28d58ee963e1c63aa4a8bbe4525faade7201c353 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>