Commit Graph

88532 Commits

Author SHA1 Message Date
Cristian Adam
70e9c2685f vcpkg: Set VCPKG_ROOT environment variable for Qt Creator process
This way CMakeProjectManager's auto-setup.cmake would pick it up and
find vcpkg.exe

Change-Id: Iafa84f13e0f50321ce771fc687ecc9e2df148de7
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-10-17 18:10:52 +00:00
Alessandro Portale
df9808562f Vcpkg: Fix a vcpkg detection regression
Amends: ec7abcf98c

Change-Id: If1e8c124208b2d8eeea22b1b88f80b325c4d2efb
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-10-17 16:35:57 +00:00
hjk
53b3255256 CMake: De-noise fileapidataextractor.cpp a bit
Change-Id: I1ed8b18e394246cbfd14394c7f9b79fd90f680d2
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-10-17 15:22:02 +00:00
hjk
b5dec80d6b ProjectExplorer: Don't create Replacement kits for Design Studio
It's not wanted in this use case

Fixes: QTCREATORBUG-29717
Change-Id: I04ccd4c9e8bfe15e76294a42f3f0bd9d879599e5
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-10-17 15:05:12 +00:00
hjk
8845a7f896 CMakeProjectManager: Use a few FilePath::path() instead of toString()
... when appropriate.

Change-Id: I2c23e4688ec69f78b0ce873e578139d5c4e89c35
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-10-17 15:04:57 +00:00
hjk
b38c7a452e CMakeProjectManager: Fix path construction of pch files
This triggered soft asserts in FileUtils::copyIfDifferent() when
opening top-level qt.

Amends 246f33c20d which introduced a unwanted extra .parentDir() call
which removed part of the path.

Change-Id: Id0475a74a589372d37b7ec65d33d3faf6194013c
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-10-17 14:52:35 +00:00
hjk
058a931d27 ProjectExplorer: Manually check whether a runconfig has a creator
This is used in ProjectConfigurationModel::data()

Constructing the full list is comparatively expensive, and the extra
decoration is not needed.

Change-Id: I5b6c76376f806ea92444916a87d1f2e671e16d5f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-10-17 14:35:36 +00:00
Cristian Adam
879692381f CMakePM: Fix conan default profile auto-detection
CONAN_COMMAND was not available for `conan_profile_detect_default`
function.

Change-Id: I03df06aa88e6588101bb5ec54b3ce2cb64dee2c8
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-10-17 13:54:17 +00:00
Marcus Tillmanns
fdeff13ca3 TextEditor: Don't export KSyntaxHighlighting
Change-Id: I84fa8c758af412d8847391a628deac60279b9448
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-10-17 13:25:50 +00:00
Yasser Grimes
a9a74992de McuSupport: Notify users to read QtMCUs on QDS documentation
Make the documentation for using QtMCUs design studio easier to locate
for new users by showing an InfoBar notification with the link to the
online documentation.

Task-number: QDS-10332
Change-Id: I9344216ef36369cdfb284ab18dba91cd0b5d4c92
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-10-17 13:02:14 +00:00
Christian Kandeler
a60b43f028 Designer: Use proper formatting and indentation
... when inserting member functions via "go to slot".

Fixes: QTCREATORBUG-11730
Change-Id: I5de6947069e2c376758d0a79f6d1d710882aee66
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-10-17 12:44:01 +00:00
Marco Bubke
a671014125 Nanotrace: Categories can be anabled and disabled at runtime
Change-Id: I41ddd311da96f54db5b1525c5b0126528bf67744
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2023-10-17 12:27:42 +00:00
Marco Bubke
629d246650 Nanotrace: Generalize arguments
You can now add array or dictonary arguments

NO_UNIQUE_ADDRESS ModelTracing::ObjectTraceToken traceToken =
ModelTracing::category().beginObject(
        "InternalProperty"_t,
        std::forward_as_tuple("name", m_name),
std::forward_as_tuple("values",
std::forward_as_tuple(NanotraceHR::isArray, 1, 2, 3)));

NO_UNIQUE_ADDRESS ModelTracing::ObjectTraceToken traceToken =
ModelTracing::category().beginObject(
        "InternalProperty"_t,
        std::forward_as_tuple("name", m_name),
        std::forward_as_tuple("values",
std::forward_as_tuple(NanotraceHR::isDictonary,
std::forward_as_tuple("x", "foo"),
std::forward_as_tuple("y", "bar"))));

Change-Id: I3c136827455194439980700155f4c43f4b2915ea
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-10-17 12:22:52 +00:00
Marco Bubke
df83309636 QmlDesigner: Trace thread creation and readyness
Thats is creating a token without a name but it can be used later wo
create a token with a name or to tick.

Change-Id: I772b819392e660c4d550aa59edc45579e6e00a02
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-10-17 12:16:20 +00:00
Marco Bubke
4aa7c89aad Nanotracer: Add copy for object token
Change-Id: I8d11284db1b38eeff6f271495f3095b49415f78c
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-10-17 12:04:27 +00:00
Christian Kandeler
d16d1718f3 ClangCodeModel: Forward to the built-in code model
... if the user tries to complete inside a comment or string.

Fixes: QTCREATORBUG-20828
Change-Id: I245e1bd16acaf696601cabe33f27210da21cc12a
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-10-17 12:03:17 +00:00
Marco Bubke
b6f14a5421 Nanotracer: Simplifying tracer
It is not only simpler but more flexible too.

Change-Id: I9b4b0e522865270bcb84ea5d343d7f8ada708d3b
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2023-10-17 12:03:10 +00:00
Marco Bubke
707585da44 Nanotrace: Print only ids for event types which have an id
Change-Id: Idf41483b09a54f93f2d84f3ad9d5712b218e373c
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-10-17 12:02:13 +00:00
Marco Bubke
f7314133fe Nanotrace: Remove the magic booleans and use an enumeration
Hopefully it will make more clear what is disabled or enabled.

Change-Id: Ibc9b2329f5b664ba346bafeb27c54cf082758449
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2023-10-17 12:01:24 +00:00
Marco Bubke
120f587d58 Nanotrace: Change event queue allocation
The event queue data will be not filled with zero if it has internal
linkage.

Change-Id: Icb7798ac7ad8cc4c4f486b49e9d94f08625b818a
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-10-17 11:57:55 +00:00
Marco Bubke
ad12bbb669 QmlDesigner: Add object trace
'N' and 'D' phases are not supported by Perfetto. So I mapped it to
async events. This patch is improving the interface for arguments too.
Now you can select the type for you arguments. So the name can be a
string_view but the arguments can be a string.

The variadic template arguments are used to prevent any conversion code
which could not be optimized out for an empty function.

Change-Id: I1ad1927b5e3b63607a21df1351b1f5cfba50159c
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-10-17 11:55:03 +00:00
Marco Bubke
11bf705e26 QmlDesigner: Add move only trace token
It is quite hard to define always an end to a trace. A move only
token can do that. The drawback is that the token gets bigger but only
compile them for an avtivated category.

Change-Id: I88b47c5b47e4129b1cd402e89251b45fa126111c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-10-17 11:43:58 +00:00
Marcus Tillmanns
ab23ee98f9 PackageManager: Search for vcpkg in project root
Change-Id: I467476e6897f36558afc76a262f631cdaa47320e
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2023-10-17 11:43:57 +00:00
Marco Bubke
3d8c740705 Nanotrace: Optimize the id counter
We use the atomic only to get an offset and then use it as an normal
counter.

Change-Id: Ieef3c318107c26227efd2e493bf4a76b5744dff8
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-10-17 11:43:23 +00:00
Cristian Adam
2e2248e80e CMakePM: Allow invalid file characters as part of preset names
The fact that Qt Creator uses the preset name to create a directory and
then import the directory is an implementation detail.

This changeset will allow characters like ":" to be part of the preset
name.

Task-number: QTCREATORBUG-29643
Change-Id: I84a224b78eb3d2233f80d9bdb8bf4478471349b0
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-10-17 11:37:57 +00:00
Eike Ziller
57a485b9e7 Merge remote-tracking branch 'origin/12.0'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs

Change-Id: Ib3d0e8b4134105cb3bc159f09192e5fa06508bda
2023-10-17 13:35:45 +02:00
Marcus Tillmanns
e13c1a1239 CompilerExplorer: Fix display of selected library
Change-Id: I44085ef914930a16f14a2fc79e2941852dc2e4fb
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-10-17 09:24:22 +00:00
Christian Stenger
effe73024f AutoTest: Avoid duplicated logging category
Change-Id: I6b8b56176f4f5e919badd87e7603f1b05a0f0245
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-10-17 09:09:33 +00:00
Alessandro Portale
30e8a1db55 ScreenRecorder: Switch from Experimental to DisabledByDefault
Trivial plugins may apparently skip the experimental state on their
introduction. At least according to the mutilple request towards me to
do so with the ScreenRecorder plugin.

Change-Id: I1e3d911ee79548d0fd72d3af0e3a568f6ab88d5a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2023-10-17 09:06:34 +00:00
Christian Stenger
2119ef72b0 AutoTest: Fix creating test projects for cmake and qbs
...if the respective kits have no Qt configured.
GTest and Catch2 get fixed with separate patches.

Change-Id: Ib3eb92e97fd683f42e3666bd41728a3824e230ec
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2023-10-17 09:06:13 +00:00
Leena Miettinen
66f77f749e Copilot: Fix UI text for proxy settings
Change-Id: I36854db711d697bd1cb0ffc8a646e00c97979e2f
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2023-10-17 08:59:27 +00:00
Marcus Tillmanns
1891c37b46 CompilerExplorer: Fix restoring library selection
Change-Id: Iae64cf8629495457e423d9e635b2ffcf912d89b8
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-10-17 08:58:43 +00:00
Marcus Tillmanns
e3f33962e3 CompilerExplorer: Fix highlighter for assembly
Change-Id: Id58546d99232b19252c99da5018c1ce45a2e8dc5
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-10-17 08:53:45 +00:00
Leena Miettinen
5b97cb375b Doc: Describe new C++ refactoring actions
- Convert Comment to C/C++ Style
- Move Function Documentation to Declaration/Definition

Task-number: QTCREATORBUG-29392
Change-Id: Iae48cd752c909a0007929e0111aa149fbfea02ee
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-10-17 08:48:20 +00:00
Marcus Tillmanns
d8a75d48a3 TextEditor: Add selecting highlighter by name
Change-Id: I5c706dd151173bf08c5fbd4dacbf6e5d6416b87b
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-10-17 08:47:45 +00:00
Amr Essam
d8bbbd2494 QmlDesigner: Compile effect maker shaders using qsb tool
Task-number: QDS-10811
Change-Id: I6028dea262b2658838b59156ac062657cc4ef3f0
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2023-10-17 08:41:16 +00:00
Aaron McCarthy
5977c26f2e QbsProjectManager: Provide classpath data to Java language server
Change-Id: Idf09ae566139a752184defe26fee082af8be31aa
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-10-17 08:30:02 +00:00
David Schulz
f2934f8497 Utils: avoid another assert in FileSystemWatcher
amends f77635883b

Change-Id: I2b0f92db3218192457a08ff8a473444fd2f811a8
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-10-17 08:01:41 +00:00
Christian Stenger
df7619de8d Utils: Fix qbs build
Amends f1085b324e.

Change-Id: Iac52d63e1662d7e4fbd8093ea4ee713eb16d6497
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2023-10-17 07:46:12 +00:00
Eike Ziller
c2a470e853 Revert "TextEditor: Hide LineNumberFilter implementation"
Fixes missing "Line in Current Document" locator filter.
Locator filters need to be created during startup.

This reverts commit 8af6d16b6c.

Change-Id: I53ec1c1079b4a719169e8db95b6d77f703264b65
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-10-17 07:46:02 +00:00
Christian Stenger
54b841f789 QtSupport: Store Qt versions after autodetection on startup
Restores old behavior. When QC is started with a Qt in PATH but
without existing settings it ran the autodetection and stored
the Qt versions to disk. This made it possible to restart QC later
with the same settingspath, but without having Qt in PATH.
Without this patch the Qt versions of QC only got persisted if
the settings dialog had been opened at least once and closed with
Ok (or an explicit Apply).

Change-Id: I74bd9bc0b96d5ff66e5a81200d6a269a5411a5ea
Reviewed-by: hjk <hjk@qt.io>
2023-10-17 07:39:31 +00:00
Eike Ziller
3363d71888 Build: Fix handling of (s)ccache support
So it also works when building individual projects like cdbext

Change-Id: Ibb9cac77146a9f19cbbe22f2c7257b951f38f3fc
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2023-10-17 07:30:51 +00:00
Christian Stenger
67ad0cf556 AutoTest: Improve Catch2 wizard
Since version 3 of Catch2 it is recommended to use the
approach to link against Catch2 instead of using a single
include.
Make both variants work. There is still a third variant of
using a single include for version 3, which is left out
here, but can easily be fixed for Catch2 users.

Change-Id: I2c25837cb1df4b460b662466dde68563fa7d713c
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2023-10-17 07:28:47 +00:00
Christian Stenger
bded214791 AutoTest: Improve GTest wizard
It is possible to use the header-only approach as well
as linking against googletest, so make this explicit
inside the wizard and fix the projects for the
respective choice. The old approach could work, but
mostly coincidentally.

Change-Id: I5b1c0b8dfd9a2ffac3268fc4c724ba47c2bf124c
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2023-10-17 07:28:38 +00:00
Marcus Tillmanns
98d3508baa Docker: Fix deadlock
The blocking queued connection could block the main thread
if the main thread was blocking for an action that would access
the docker device.

Change-Id: I79c0c74688ac77f2763b9aa748386f27be011304
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-10-17 07:25:09 +00:00
hjk
b26e12e199 Debugger: Add a dumper for Utils::Key
Change-Id: I7e586b622160d5b06a3971fec825521231c09522
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-10-17 07:11:14 +00:00
Cristian Adam
16b147d563 CMakePM: Expand macros in cmakeExecutable CMake preset value
The specification allows this, so we need to support it.

Task-number: QTCREATORBUG-29643
Change-Id: I8bd0a91ba05d2ed27b7a7af2d268539de020826f
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-10-17 06:36:29 +00:00
Tasuku Suzuki
f1085b324e ProjectExplorer: Avoid accidental changes on spinbox via mouse scroll
- Introduced an Utils::attachWheelBlocker() to disable mouse wheel events on the "Parallel Jobs" field.
- This prevents unintentional modifications when users inadvertently scroll over the input.

Change-Id: Iccb93305fbcf399cae683412078782b5ea9f4ad6
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2023-10-17 01:55:14 +00:00
Cristian Adam
12a6d9e5dc CMakePM: Update CMake conan to latest version
Url: https://github.com/conan-io/cmake-conan/blob/develop2/
conan_provider.cmake
sha: 451fa97d2c59c07b13fb4812a64b2a6391f9e781

Change-Id: Ia52f5d856cf045d7a1d1871d6d43fd1d014439c4
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-10-16 20:05:21 +00:00
hjk
13f5367611 Core: Use icon based on document's full path
This makes a difference when one wants to e.g. mark non existing files.

Change-Id: Id7c2a53fa91fb9638e9a08a746614a3f04da400f
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2023-10-16 13:43:34 +00:00