Commit Graph

68316 Commits

Author SHA1 Message Date
Eike Ziller
c1f90aeca2 ICore: Change some path API to use FilePath
Change-Id: Id841d6177206a021c9e606ce560b47d1ae6e52b9
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2021-04-26 08:03:47 +00:00
David Schulz
b2c0554733 LanguageClient: add global action to open inspector
Change-Id: I3dcd6cdf716e68e2d7bedb24e1db372d93683698
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-04-26 07:01:22 +00:00
Eike Ziller
86f0d72b2a Look for jom also in "jom" subdirectory
Jom is currently installed into the Qt Creator bin/ directory directly,
but it can be considered unsafe if we add that to the PATH. Look in a
subdirectory for it as well, as preparation for moving it there instead.

Task-number: QTCREATORBUG-25585
Change-Id: I85b379fa093c57639875872868c16b5cc964f4aa
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2021-04-26 07:01:12 +00:00
Eike Ziller
b264770e17 FilePath: Return QString copy from toString()
Returning a const reference is different from our usual coding style,
and can lead to crashes when assigning to a const reference, like

const QString &path = filePath.pathAppended("foo").toString();

Make it behave like our other API.

Change-Id: Iab1cf1a944be405227b135c12029f58869893911
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2021-04-26 07:00:47 +00:00
hjk
cac3736b52 QmakeProjectManager: Un-export QmakeMakeStep
Not directly used in leaf plugins (iOS?) anymore.

Change-Id: I5fcf7e0d976e99b5d9eb8b0e6404651b35d5db43
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-04-26 06:22:00 +00:00
hjk
a916c0a235 QmakeProjectManager: Code cosmetics
Namespaces...

Change-Id: I8014c932895ebaea78319b22d2693de16f270fc4
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-04-23 14:30:40 +00:00
Eike Ziller
eef041a1a8 QmlDesigner: Fix build with Qt 6
error: non-constant-expression cannot be narrowed from type 'qsizetype'
(aka 'long long') to 'int' in initializer list

Change-Id: I743f942fb0bef9f907b4facbb346264dfeaad778
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2021-04-23 10:30:05 +00:00
hjk
77fd9661ec ProjectExplorer: AbstractProcessStep code cosmetics
Namespaces.

Change-Id: I7781bcf7125ad854e05a3b3a6a97d0c39b76df69
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-04-23 10:10:29 +00:00
hjk
9dfdb9f0a2 QmakeProjectManager: Some code cosmetics
Namespaces, foreach, parantheses.

Change-Id: I641811d66970cbb275688a73c8765be00ba295bb
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-04-23 10:10:23 +00:00
hjk
29ac812cf4 Clang: Compile fix for qmake
Change-Id: I88fa2c995a22a2fe3bf3a0aac05c0432e4b3d379
Reviewed-by: hjk <hjk@qt.io>
2021-04-23 02:06:38 +00:00
Christian Kandeler
e27b367bdc ClangCodeModel: Introduce dedicated class for clangd LSP client
Makes sense for modularization purposes, and it will soon get additional
functionality.

Change-Id: Ie8163d352fc408b4167ee2ce6147aa1fb19528eb
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-04-22 12:07:49 +00:00
Christian Kandeler
ecafdb7543 ClangCodeModel: Add experimental clangd support
If the user has enabled clangd (default is off), we start up one instance
per project when it is opened/changed (including build config switches),
and trigger background indexing.
So far, the index is used to provide results for locators and "Find
Usages".
Per-document functionality such as semantic highlighting and completion
is still provided by libclang.

Change-Id: I12532fca1b9c6278baab560e7238cba6189cde9f
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-04-22 07:32:58 +00:00
David Schulz
8bacd9bdc4 LSP: add std namespace to nullptr_t usages
Change-Id: I2bc3e7324c168201a4755bec6f79c5aa6ffc8540
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-04-22 07:15:28 +00:00
David Schulz
b3c2120dff Editor: add specialized snippet overlay
Split out the snippet functionality into a new derived
overlay implementation.

Change-Id: I2d7fffabe16ce6348ed067eb52ff221420a23285
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-04-22 04:14:19 +00:00
Alessandro Portale
8b59604bd4 Docker: Add a build step
Let's have a build step which allows running a command on a registered
Docker image, which is defined by the Kit's build device.

If the build device is the Local PC, run the command locally.

This specialized build step will most likely be removed after the
existing steps have been taught to run on the Kit's build device.
For now it is part of a POC that allows to experiment with non-local
build commands.

Task-number: QTCREATORBUG-22362
Change-Id: Ifda503ee346b67857a5b82c05cb38cf7f63698d0
Reviewed-by: hjk <hjk@qt.io>
2021-04-22 00:10:12 +00:00
Alessandro Portale
176122fa94 ProjectExplorer: Make APS::setupProcessParameters const
Change-Id: I357505131cff5c98b5c9fe0a3967c79d009167e6
Reviewed-by: hjk <hjk@qt.io>
2021-04-21 13:32:17 +00:00
David Schulz
f1bb3b6811 LSP: add semantic tokens
Change-Id: Ia6865ec6991ec62ae9f0dc2dfa692f1f27318ed1
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-04-21 11:33:56 +00:00
Eike Ziller
9c2980f65d Merge remote-tracking branch 'origin/4.15'
Change-Id: Ide723c45dcd7e39e4e54432f2dc265c5d53c38eb
2021-04-21 08:41:20 +02:00
hjk
09d24face0 QmlProject: Use new RunConfiguration::setRunnableModifier
Change-Id: Idb729996b979effc96d97bfe7220668dfb904bb2
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-04-21 06:24:06 +00:00
Viacheslav Tertychnyi
2a456e5439 Deploy: Use objdump for MinGW build
Change-Id: Icb22aaecf3ca010b49d04af2ead7fb627a40c1db
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-04-20 20:16:53 +00:00
Christiaan Janssen
27b4383b31 McuSupport: Update documentation
Task-number: QTCREATORBUG-25587
Change-Id: Ida9fb5449818c1c4b78318a6e9d85672153c19ad
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2021-04-20 14:28:33 +00:00
Marco Bubke
12762e5102 QmlDesigner: Use more secure friend declaration
The shorter form is not declaring any class implicitly. The class have
to be declared before. So you avoid the mistake of declaring a new class
instead of make one friend.

Change-Id: Ia035e2f5967c24cdb053ac8b91aa61bbbd5ea20d
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2021-04-20 12:50:21 +00:00
Johanna Vanhatapio
14cb593526 Doc: Update info on Logic Helpers
Task-number: QDS-3407
Change-Id: Icf34de1dafbb61c5d1bf44bcb5959538f4e498ca
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2021-04-20 12:27:32 +00:00
Johanna Vanhatapio
06d70b1488 Doc: Update pictures of Properties View
- mostly pictures for Lists and Other Data Models and Properties.

Task-number: QDS-4167
Change-Id: Ia7bd27bb4cec682b42e2c2bc232913b3ed7a0ab3
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2021-04-20 12:09:13 +00:00
Johanna Vanhatapio
ee9d4b3d61 Doc: Update info about Text and Control properties
Task-number: QDS-4167
Change-Id: Ic691d848e93b964dad89bd1196ee86cdbd3956be
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2021-04-20 12:08:47 +00:00
David Schulz
d66b410adb LanguageClient: do not auto-assign documents to all clients
Only assign documents to a client if the client was started by a
setting. Programatically started clients should handle assigned
documents manually.

Change-Id: I192c4c011a48e0406f267d3cab3c860f740ddad7
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-04-20 11:44:12 +00:00
Ivan Komissarov
88522424f3 Update Qbs submodule to the top of 1.19 branch
Change-Id: I113fecc8927d6c49bd3208a9a422543b0bcbf4e8
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-04-20 11:27:52 +00:00
Christian Kandeler
d9c1ee211a OutputWindow: Reset "scroll to bottom" to default value
... on new build/app start.

Fixes: QTCREATORBUG-25605
Change-Id: I3f478db4c63cf0100c42342deedab9db5ba12042
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2021-04-20 10:36:53 +00:00
Eike Ziller
c2e4f9f2a2 Fix build issues with C++20
- "ISO C++20 considers use of overloaded operator!= to be ambiguous
despite there being a unique best viable function with non-reversed
arguments"

- std::erase(std::vector, ...) takes preference over Utils::erase if not
fully qualified

Fixes: QTCREATORBUG-25598
Change-Id: Ib9d0574ff46d2ab415437c0c044c51e8c9f37caa
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-04-20 10:10:12 +00:00
Christian Kandeler
f31d583081 CPlusPlus: Increase maximum statement depth
We're hitting the limit in a real-world project.
(Of course, it's pretty horrific that we unconditionally access pointers
that can legally be null, but that's difficult to change now.)

Fixes: QTCREATORBUG-25606
Change-Id: I1d8c883550e8968bbfa6ce26965573697774361f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-04-20 09:57:13 +00:00
Christian Kandeler
743ef263c9 GenericProjectManager: Make sure we parse for the right configuration
Fixes: QTCREATORBUG-25592
Change-Id: I5f03fa799f693c16d842cf8279d664194684884d
Reviewed-by: hjk <hjk@qt.io>
2021-04-20 08:56:30 +00:00
Eike Ziller
3d1ad9db60 Merge remote-tracking branch 'origin/4.15'
Change-Id: I1d13f3543ab4bb17f0cbfe26bbea3f154f856ca6
2021-04-20 10:42:55 +02:00
Christian Stenger
3f7877bc37 QmlDesigner: Fix compile on Linux and macOS
Do not use MS extensions on a cross platform build.
Amends 5203c478a5.

Change-Id: Ia4dc014ccb21ffed60dc6a6a54dc63340242349c
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2021-04-20 08:40:22 +00:00
Christian Kandeler
b1758b1eb2 CppTools: Another parentheses highlighting fix
Amends c80c724b52.

Change-Id: I2691791d40c84bbc1fa6c2525676ef3955b4ffd3
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-04-20 08:27:30 +00:00
Eike Ziller
2cd93bad31 COIN build: Use install_qt.py for openssl, d3dcompiler & openglsw
Change-Id: I6f29d878708f3d57c29539217df7563afb5e2800
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
2021-04-20 06:42:51 +00:00
Eike Ziller
f2bd9bd7ee COIN build/Linux: Do not download ICU twice
It is already done together with install_qt.py

Change-Id: I17d7e1293dec42f8c8dc6be9105236690ba417cd
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
2021-04-20 06:42:41 +00:00
Tim Jenssen
080d479101 qmlpreview: remove PUBLIC from DEPENDS
- it does not work as expected

Change-Id: I91530103b661e8dbed5d9391590995fb0401c826
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2021-04-20 05:47:01 +00:00
Leena Miettinen
6040adf85c Doc: Make info about menu paths on macOS more visible
We get a lot of user questions about where things are
on macOS.

Also, describe high DPI scaling after the other user
interface options.

Task-number: QDS-3407
Change-Id: If157b9afc70d82944ef9ce8d7b5fa419b3271ef2
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-04-19 15:08:00 +00:00
Ivan Komissarov
0860cb862c Update Qbs submodule to the top of 1.19 branch
Change-Id: I231efb28aaefc36aa51e58d341f22f5fd7fba198
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-04-19 13:56:40 +00:00
Leena Miettinen
73459785f2 Doc: Describe switching themes on QDS side, too
Added a screenshot of the Interface options.
Moved the description of the Language field up,
because it is right below the Theme field in the tab.

Task-number: QDS-3407
Change-Id: I0bd898852a318ee87427a39c002a3ecc889e6207
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-04-19 13:51:37 +00:00
Leena Miettinen
67ce4243ee Doc: Describe opening QDS examples from Qt Creator
If users have QDS installed, QDS examples are listed
in QC Examples tab and users can open them in QDS.

Task-number: QTCREATORBUG-25162
Change-Id: I279135225fa000ed07e3f956d8a96bf1b5c50be1
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Aleksei German <aleksei.german@qt.io>
2021-04-19 13:51:22 +00:00
Mahmoud Badri
88739db142 QmlDesigner: Fix searching hidden item library categories
Task-number: QDS-4136
Change-Id: I6ba2109015914af1435a03bd7a346c0eba0a8100
Reviewed-by: Miina Puuronen <miina.puuronen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-04-19 13:03:52 +00:00
hjk
eed24bd268 ProjectExplorer: Introduce a build device kit aspect
To be used with docker.

Change-Id: If6c8c67210257724aed31df3f07c7ac1bb1fa452
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-04-19 12:34:47 +00:00
Marco Bubke
51e8256e86 QmlDesigner: Remove unused member function in NodeMetaInfo
Change-Id: I568ebdce5a01b0f6185ac5dcb74676c727651ebe
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-04-19 12:25:35 +00:00
Marco Bubke
5203c478a5 QmlDesigner: Add some useful iterator algorithms to NodeListProperty
Now there is iter_swap, rotate and reverse in the node list property. With
that methods we can implement slide too.

Task-number: QDS-4159
Change-Id: Ie7f80f64fd26e517ca696158a878262928dc82c4
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-04-19 12:25:29 +00:00
Marco Bubke
2bf45ec998 Sqlite: Fix handling of blob and blob views
Change-Id: I90c31307ff3299975f820e191085ba93ed8afe0f
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2021-04-19 12:25:22 +00:00
Marco Bubke
040854c6f1 QmlDesigner: Add node list iterators
Task-number: QDS-4159
Change-Id: Ie6635d87beb66f766b9995f68972b80baa100ed6
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2021-04-19 12:25:15 +00:00
Marco Bubke
2e8e47622c QmlDesigner: Split nodeOrderChanged notifier
For swap we cannot provide all the arguments and they are only used in the
rewriter. So we use now a simplified notifier for all views except the
rewriter view. After the introduction of the new rewriter we can remove
the old notifier.

Task-number: QDS-4159
Change-Id: Idc91a618ea40da0bda9856888d115a84016597d5
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-04-19 12:25:02 +00:00
hjk
7eb9d8cb60 ProjectExplorer: Introduce a KitAspect::createManageButton() function
Saves some repetition downstream.

Change-Id: Ied58586572d3e70669c9172c5076bbd12e211aa7
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-04-19 12:05:35 +00:00
hjk
77481f25ce ProjectExplorer: Base KitAspectWidget on BaseAspect
Enables re-using existing functionality.

The "Make mutable" functionality is still oddly placed. I doubt people
find and use it actively.

Change-Id: Ic6aae17e3a7df093f0f5f234f1e6e1afc196a087
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-04-19 12:02:19 +00:00