summaryrefslogtreecommitdiff
path: root/src/plugins/nim
Commit message (Collapse)AuthorAgeFilesLines
* Avoid warning on empty expressionshjk2019-07-233-4/+4
| | | | | | | | 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>
* Make the project managers tell the code model about include pathsChristian Kandeler2019-07-122-4/+8
| | | | | | | | ... from the environment. Fixes: QTCREATORBUG-17985 Change-Id: I9b54e550121cfcc0684a6e173337d59d235c6107 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* ProjectExplorer: Promote CMakeToolChainData to a global structurehjk2019-07-042-4/+4
| | | | | | | ... and use it in ToolChainFactory::detectForImport() overloads. Change-Id: I107b9d5e185580b8fbef4c6e0233fdae5d253506 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Rename one ToolChainFactory::autoDetect overloadhjk2019-07-022-2/+2
| | | | | | | | ... to detectForImport(). The overloads have different purposes, sharing the name makes reasoning about them hard. Change-Id: I57bfbbc1aa06ef85251e39c404bdbe5584a2ea41 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Merge BuildConfigurationFactory::availableBuildshjk2019-06-272-44/+19
| | | | | | | ... and availableSetups as far as mechanically possible. Change-Id: Ia1d7babe943eea25da97cef7838187c234378673 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Align signatures of BuildConfigurationhjk2019-06-272-3/+4
| | | | | | | | | | ... 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-262-6/+7
| | | | | | | Mostly for project files. Change-Id: Icb6059f80758865e42cc9f9c092ec6782770dfd7 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Nim: Simplify NimCleanStephjk2019-06-259-167/+10
| | | | | | Change-Id: I76213999b394fb18e228cf3c4d24a47c26afb398 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Add special handling for removing filesVille Nummela2019-06-252-3/+6
| | | | | | | | | | | | | ... from a project which are pulled in via wildcards. Such files cannot be removed from a project file, because they are not listed verbatim. This kind of failure should not be reported to the user if the file is also deleted, as the file list will have the correct state after the next reparse. Fixes: QTCREATORBUG-22586 Done-with: Christian Kandeler <christian.kandeler@qt.io> Change-Id: I3dc66fe9a6594be7d0b86f46d830cd099ee49fd7 Reviewed-by: hjk <hjk@qt.io>
* ProjectExplorer: Prefer ProcessParameters::setCommandLinehjk2019-06-243-45/+28
| | | | | | | ... over setting command and args individually. Change-Id: Iec7c8d3a0b05fb8fa0639f7ddbe7ccdc7387d2a2 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Use data member for ToolChain::typeDisplayNamehjk2019-06-202-16/+1
| | | | | Change-Id: Ia78ea3f8628b759706c5b024d687d917b203ec4d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* connect() to ambiguous signals/slots: Replace static_cast with QOverloadAlessandro Portale2019-05-282-6/+6
| | | | | Change-Id: I473d7a2a16509cee944a2a21b022a3f6f02cfd8d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Utils: Rename FileName to FilePathhjk2019-05-2819-66/+66
| | | | | | | | 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>
* ProjectExplorer: Use the new way for dependent aspectshjk2019-05-281-3/+2
| | | | | | | ... for WorkingDirectory aspects. Change-Id: Idf64f1daeb74a70637bb983db1b45f0132cfc299 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Introduce a alias for QList<Tasks>hjk2019-05-283-11/+10
| | | | | Change-Id: I91391ad22b420926b0f512cac23cfe009048b218 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* More FileName::appendPath() -> .pathAppended() changeshjk2019-05-271-2/+1
| | | | | Change-Id: Ibc7eb4eb3ffb64658e441aafa240b1ddc0061930 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Qt Creator CMake portCristian Adam2019-05-171-0/+35
| | | | | | | | | | | | | | 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>
* Some more FileName::appendPath() -> pathAppended() changeshjk2019-05-171-4/+2
| | | | | Change-Id: Ie494f7ae8a96d97c9497b3ef38d774d2cf787b7f Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* ProjectExplorer: Use ToolChainFactories to clone ToolChainshjk2019-05-162-6/+0
| | | | | | | | Centrally. Change-Id: Ie832c5ad0eb282192440d9d4d058d082d9513cc2 Reviewed-by: David Schulz <david.schulz@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Use Utils::FileName in ProcessParametershjk2019-05-152-3/+3
| | | | | | | For the command and the working directory. Change-Id: Ia69dc7100aeb57bb6e1b35f4dd4f3cf3763d8cda Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Make ToolChain::makeCommand return a FileNamehjk2019-05-152-5/+4
| | | | | | | ... instead of a QString. This is in line with the qmakeCommand(). Change-Id: I617cb03522be5ebaac6cab58a3606f659fddb833 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Use a member for ToolChainFactory::canCreatehjk2019-05-132-7/+1
| | | | | | | ... in all but one case (ClangCL, which is special). Change-Id: I6429f2f37b18524c29b6be78801ea0e5517cad4c Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Use functor for ToolChain creation in ToolChainFactoryhjk2019-05-132-16/+2
| | | | | Change-Id: I935eecab2f16618a2a5b34d31a79672db82c3398 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Utils: Remove FileName::isNullhjk2019-05-131-1/+1
| | | | | | | ... and its uses in order to shrink the FileName interface. Change-Id: I4b9a229d98ad53c4f189e381c89241981ddbed2e Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* ProjectExplorer: Drop Detection argument from ToolChain constructorhjk2019-05-103-11/+13
| | | | | | | | | | | | | This was used wildly inconsistently. Use a setter instead in circumstances where the context is reasonably clear. The assumption is that this will always be done at some time in all code paths. Use a new 'Uninitialized' value to avoid triggering the first update. Change-Id: I82c38cb9da3ccdbd8fbae8beefcbfa0e559ff794 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Simplify ToolChainFactory::create() signaturehjk2019-05-092-7/+3
| | | | | Change-Id: I9d579898387609fa7374f43633711a978bb36d93 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Replace ToolChainFactory::supportedLanguangehjk2019-05-092-6/+1
| | | | | | | ... by a member-based approach. Change-Id: I5c7fef196df6c37fd26c60a58c774426eca562a0 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Replace ToolChainFactory::canRestorehjk2019-05-092-6/+1
| | | | | | | ... by a member-based check. Change-Id: Id7d19e488695e76ea17cf2d02c7b6eb2cd0246cc Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Nim: Aspectify NimBuildConfigurationhjk2019-04-307-187/+4
| | | | | Change-Id: Iccf81e3a089a6b6d756aace99c5051dc7349b6b9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Switch order of template parametershjk2019-04-021-1/+1
| | | | | | | | | | | | | ... of SimpleRunWorkerFactory. This requires being explicit about the SimpleTargetRunner worker default, but makes the template re-usable for current users of RunWorker::registerWorker() which I would like to phase out now, for less variations in the RunWorkerFactory setup. Change-Id: I32638437e5bb29f143650f5fde706711ab25accf Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Nim: Remove a few unneeded parent argumentshjk2019-03-272-8/+6
| | | | | | Change-Id: I88422091eb17ede4079fe6c6f66ca4e1cbf56f44 Reviewed-by: Filippo Cucchetto <filippocucchetto@gmail.com> Reviewed-by: hjk <hjk@qt.io>
* ProjectExplorer: Introduce a SimpleRunWorkerFactory templatehjk2019-03-192-1/+2
| | | | | | | | | | | | | | | ... and use in as replacement for RunConfiguration::addRunWorkerFactory. It is still convenient to have a simple way to set up run worker factories for the typical "just run for this configuration" case, but it's even better if it follows the nowadays predominant pattern of keeping factories in the plugin's pimpl. Also, it turned out there were two copies of QmlProjectRunconfigurationFactory code, one is enough. Change-Id: I0b28c4ea18d0f52165a49f6133dc8687a3b9c7cf Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Merge remote-tracking branch 'origin/4.9'Eike Ziller2019-03-141-3/+0
|\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: qbs/modules/qtc/qtc.qbs qtcreator.pri src/plugins/debugger/debuggerkitinformation.cpp src/plugins/languageclient/languageclientmanager.cpp src/plugins/plugins.pro src/plugins/projectexplorer/kit.cpp src/plugins/projectexplorer/kitmanager.cpp Change-Id: I66fb941202991f35f7d7761430b21e42dfc678a8
| * Nim: Remove translated string which would not be shown anywayRobert Loehning2019-03-061-3/+0
| | | | | | | | | | | | | | | | Change-Id: Ic5773b19e6d020d8d778fc864b3adb9f8e75885a Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Filippo Cucchetto <filippocucchetto@gmail.com> Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* | ProjectExplorer: Move RunControl related classes to separate file pairhjk2019-03-131-0/+1
| | | | | | | | | | Change-Id: I5da56f80336673d595907abcc797f628be680cd5 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | ProjectExplorer: Split EnvironmentAspecthjk2019-03-111-2/+1
| | | | | | | | | | | | | | | | | | | | | | ... at least logically a bit more into hunks responsible for one of the possible choices of base environments. This makes it possible to move code that modifies individual cases closer to the only place that uses it. Change-Id: I1c87bb869e04e44b92ff097b0bf25274f93808be 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-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: Remove FileNode's isGenerated constructor boolhjk2019-02-251-1/+1
| | | | | | | | | | | | | | Use setter of base class, similar to setListInProject() before. Change-Id: Id620f0084a5dec0410f29c80f8f6393a6bcd5050 Reviewed-by: Tobias Hunger <tobias.hunger@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>
* ProjectExplorer: Rework the build step run interfaceChristian Kandeler2019-01-312-7/+14
| | | | | | | | | | | | | | | | | | | | | Originally, the build manager used to run all build steps in a dedicated thread. Communication between the step and the manager happened via a QFutureInterface that was passed into the step's run() function. Later, new steps were added that operated asynchronously, so the build manager had to differentiate between the different kinds of steps for starting and stopping. These days, almost all build and deploy steps work asynchronously, which made the QFuture-based interface look increasingly odd. With this patch, all build steps are expected to work asynchronously, so the build manager no longer needs to differentiate. Steps are started and requested to stop via the run() and cancel() functions, respectively, and emit the finished() signal when they are done. Build step implementors no longer have to deal with a QFutureInterface. For steps whose implementation is inherently synchronous, the BuildStep base class offers a runInThread() function. Change-Id: If905c68b234c5a669f6e19f43142eaa57d594803 Reviewed-by: hjk <hjk@qt.io>
* ClangFormat: Add cursor position to the indenter interfaceIvan Donchevskii2019-01-312-2/+5
| | | | | | | | | Sometimes it's imnportant where the cursor currently is to properly format the code without affecting the current line. Change-Id: I8b1fb11d2303adb5f960c7cb80a0ed2e6e45010f Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io> Reviewed-by: Marco Bubke <marco.bubke@qt.io>
* ProjectExplorer: Collapse BuildInfo hierarchyhjk2019-01-302-22/+22
| | | | | | | | | | | | | | ... to pass it around as real values, avoiding, among others, the need of occasional explicit deletion. The formerly extra members of the derived stuff are handled via an extra variant (for data) and via a functor in the build configuration factory. The change is mechanical. Change-Id: I19ca4e0c5f0a5b196fc16dfb98bb005dc679f855 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Rename IBuildConfigurationFactoryhjk2019-01-291-2/+2
| | | | | | | | ... to BuildConfigurationFactory. It hasn't been an Interface for a while and the new name matches Run- and DeployConfigurationFactory Change-Id: I923c6a27e18a99628251b69e0270e910836e7b2a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ClangFormat: Refactor indenter to allow ClangFormat unit-testsIvan Donchevskii2019-01-226-21/+22
| | | | | | | | | | We do not build texteditor files in unit-tests so some tricks were required to make ClangFormatIndenter available. First simple unit-test proofs it builds and runs. Change-Id: I81d5ea099bd27fd1c1ed8b5b7877299dcc62a67f Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* ProjectExplorer: Simplify BuildStep::init() signaturehjk2019-01-184-5/+5
| | | | | | | | The extra parameter was always computed but used only in one place, and that use got removed lately. Change-Id: Ie10c0107ca70ee97ce03f83294992aab8d1a3ffe Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix warning: "Unused non-trivial variable"Alessandro Portale2019-01-171-2/+0
| | | | | | | | [-Wclazy-unused-non-trivial-variable] Change-Id: Ia99c3de31fd92205f25624ab60e60370c1aa4538 Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: hjk <hjk@qt.io>
* Utils: Move C++ language details from ProjectExplorer to UtilsMarco Bubke2019-01-151-1/+1
| | | | | | | | We want to use them in the backend processes too so it's nice to share them in Utils. A concrete size was added too because they should be serialized. Change-Id: Id5eb8f46643d5159f034fc9559f68a08d7e5847a Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* Nim: Fix compile for Qt 5.9Christian Stenger2019-01-091-1/+1
| | | | | | | Broke with 4f6ce9d6149. Change-Id: I25f65ab3e1fc3e6a85a8fe589c7711bae4428347 Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* Nim: MSVC compile fixesAlessandro Portale2019-01-082-0/+3
| | | | | Change-Id: Ib4133603e8703974c66aa8a1f93806211b26186c Reviewed-by: Orgad Shaneh <orgads@gmail.com>