Commit Graph

88653 Commits

Author SHA1 Message Date
Jarek Kobus
d1a4917d29 TaskTree: Compile fix
Fix "Tasking::operator !': redefinition; different linkage" error.

Amends 0f5882f13c
Amends 490410e18d

Change-Id: I5d03b9543c194fc3dc72be89840e70c72f8f2fa6
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-03 06:53:33 +00:00
Eike Ziller
73e87437c9 Add option to hide individual modes
With e.g. the Extensions mode we add a mode that is probably not
interesting most of the times for most people. The only way to get rid
of modes currently is to disable the plugin that provides it.

Instead add the option to hide modes via the View > Modes menu. Modes
reappear if they are switched to (either via the short cut or other
means, like Debug mode when starting the debugger, or edit mode when
pressing escape often enough).

Change-Id: I56e20849a1f810aea9b5993b04892c915278845f
Reviewed-by: hjk <hjk@qt.io>
2024-07-03 06:06:20 +00:00
David Schulz
a2a0a6c481 Editor: avoid overwriting non virtual setReadOnly
the same functionality can be achieved by handling the
QEvent::ReadOnlyChange type event in the TextEditorWidget.

Change-Id: I759c4bcac75e5d572f7a4656bc58c383b9fbc653
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-03 04:28:28 +00:00
David Schulz
2cc5647f38 Editor: replace readOnlyChanged signal with direct call
Change-Id: I3cd2dbdce20c6fe63127281ff836bcc825ae8112
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-03 04:28:22 +00:00
Christian Stenger
79de38d8cb GoCmdBridge: Add to qbs build
Change-Id: Iac64b8e813f90f727c7469073ea491628ab3014d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-07-03 04:09:37 +00:00
Jarek Kobus
490410e18d TaskTree: Introduce a bit of logic (AND and OR)
Introduce operator&& and operator|| taking ExecutableItem
as a second arg.

Both tasks (first and second) execute in sequence.

AND:
- If the 1st task finishes with Error, the 2nd task is skipped
  and the returned item reports Error.
- Otherwise, the 2nd task is executed
  and the returned item reports the 2nd task's result.

OR:
- If the 1st task finishes with Success, the 2nd task is skipped
  and the returned item reports Success.
- Otherwise, the 2nd task is executed
  and the returned item reports the 2nd task's result.

Change-Id: Ib7874a82bd86eeb57fa5d3691b4a9e63a158772f
Reviewed-by: hjk <hjk@qt.io>
2024-07-02 14:50:27 +00:00
Jarek Kobus
0f5882f13c TaskTree: Introduce a bit of logic (NOT)
Introduce ExecutableItem operator!(const ExecutableItem &item).

This operator returns a copy of this executable item
with DoneResult tweaked by negation.

If this item reports DoneResult::Success, the returned item reports
DoneResult::Error.
If this item reports DoneResult::Error, the returned item reports
DoneResult::Success.

Change-Id: Ie609938e92bbc38ddcc66f5bc3244f864e3e59c7
Reviewed-by: hjk <hjk@qt.io>
2024-07-02 14:50:18 +00:00
hjk
43977018b6 CMake: Rename CMakeConfigurationKitAspect{Widget->Impl}
It's not a widget.

Change-Id: I617dd189cbdc815bf9055ab4908dc7239b784e64
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-07-02 14:27:21 +00:00
David Schulz
02e3de5bd9 Editor: remove unneeded friend declaration
Change-Id: I710bc165b019e06f0758062b8f32b434d40ce8e7
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-02 10:50:19 +00:00
Eike Ziller
a4a881eca1 Modes: Make selector style menu items real actions
Allow setting shortcuts etc, and generally unifies the code

Change-Id: I7102be3914209b19b61f06d1166f8d988e797696
Reviewed-by: hjk <hjk@qt.io>
2024-07-02 10:08:27 +00:00
hjk
e28e96eae0 ScxmlEditor: Inline scxmleditorstack.* into its only user
Also de-Q_OBJECT-ify and drop two unnecessary casts.

Change-Id: I8113fc52e96226c3bdd72b36a904775c2fa5f1e6
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-07-02 05:53:39 +00:00
Alessandro Portale
157d8f2ca2 Mode icons: Fill the beetle
This reduces the complexity of the beetle, which should make it better
recognizable in various pixel densities.

Change-Id: I1021e497366881847984e32e31c3523207f6498f
Reviewed-by: hjk <hjk@qt.io>
2024-07-01 16:57:27 +00:00
Christian Kandeler
0142d59258 Wizards: Bump default minimum Qt version for new QtQuick projects
Fixes: QTCREATORBUG-31168
Change-Id: I5a4411bcce348c89151fc2a193f8d19dc00343ef
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-01 14:19:21 +00:00
Christian Kandeler
f175ec933f ClangFormat: Fix build with current LLVM main branch
Change-Id: I27b3fb41091aeeeda0bdb4786d8f1793beb0376f
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
2024-07-01 12:24:22 +00:00
Christian Kandeler
2a313f45c9 CppEditor: Fix mistakenly inverted condition
Introduced in f09a694cfc

Change-Id: I1983c9258ab3fc4f924580f759193d786bb24f2e
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-07-01 12:14:11 +00:00
David Schulz
ccdc293697 Editor: remove TextDocumentManipulator
Change-Id: Iacd7cd40ace77c79eecca3e4e699eb308d0c27de
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-07-01 11:49:07 +00:00
David Schulz
9ad0a5a641 Editor: reduce complexity of TextDocumentManipulator
Move implementations either to the TextEditorWidget, TextDocument, or to
the caller side. This makes the TextDocumentManipulator basically a
repeater so we can easily replace it with a TextEditorWidget in the
next step.

Change-Id: I04de3cb295b56fbaae99145f8e579fe405b065a5
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-07-01 11:49:02 +00:00
Christian Kandeler
f09a694cfc TextEditor: Move TextDocument::setIfdefedOutBlocks() to CppEditor
... where it belongs.

Change-Id: I4e7f344ed2d4af626965cf1f8a318de56a03a8bc
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-07-01 11:45:58 +00:00
Eike Ziller
0283b81392 Merge remote-tracking branch 'origin/14.0'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs

Change-Id: If39fe80197537c489361810e91ee221c6c52ea01
2024-07-01 12:01:27 +02:00
Cristian Adam
4125bc94d1 GitHub Actions: Only upload one release.md
actions/upload-artifact@v4 complains if you try to override an existing
artifact.

Restrict only for one runner.

Change-Id: I0a8a8cd0fcdf34dc956de175eeb4c33b40ce1a8d
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-01 08:24:17 +00:00
Alessandro Portale
c954b75672 Mode Icons: Make "Play" triangle less squeezed
Play icons usually are equiangular, i.e. not squeezed. This unsqeezes
the new play triangle.

Task-number: QTCREATORBUG-31080
Change-Id: I7243253255a015e78bf87bce273c2381dd96ee1b
Reviewed-by: hjk <hjk@qt.io>
2024-07-01 06:48:04 +00:00
Leena Miettinen
0afe7caaeb Doc: Mention that perf profiling is supported for app manager apps
Task-number: QTCREATORBUG-30604
Change-Id: I32353849a64459244ccda60ac986b52bbe9813f1
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
2024-07-01 06:47:29 +00:00
hjk
af4da1277d AutoTest: Some code cosmetics
Change-Id: I568194134bbd84f517f27a31a440f1061f91e971
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-01 06:25:37 +00:00
hjk
9671c426e4 QmlJsEditor: Code cosmetics in qmljseditordocument.cpp
Change-Id: I915fbabaefcc018f2fa5211f8d09da8136b446ce
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-01 06:24:47 +00:00
Eike Ziller
e867f9ef11 Welcome: Fix the order of Qt versions for examples
There are two sources for examples: Qt versions directly, and "example
sets", which are just a tuple of display name, documentation path,
examples path.

The Qt installer registers an "example set" for Qt versions, so to avoid
duplicate entries we match Qt versions to example sets, if found. This
destroys any order the Qt versions might have been in before.

Order the results by Qt version (and other sets last) by first creating
all the items regardless of origin (noting their Qt version in the user
data), and sorting them before adding to the model.

Also use constants for the different user data fields.

Fixes: QTCREATORBUG-31108
Change-Id: I827be892a3abe17fa6afcd3c6f39bf225f7af494
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-01 06:05:39 +00:00
Alessandro Portale
105be75c07 ExtensionManager: Fix host_os field for extension service request
The used QSysInfo::productType() provides various code/distribution
names which in some cases have little to do with the "host_os" that is
expected by the extension service API.

This change involves osTypeToString to instead return plain OS names.

Change-Id: I24b8070342c1de9de9040adcf5e06be967b6a180
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-07-01 05:27:00 +00:00
Cristian Adam
ee54b2cfca Terminal: Remove TOO_OLD_WINSDK check from libptyqt
Qt Creator will always use newer Windows SDKs, as we require at least
Windows 10 1809.

The define for TOO_OLD_WINSDK was done arbitrarily and broke
(LLVM-)MinGW builds.

Change-Id: If8e1fd4e0e3615bda23483877e67988ca04ea9f7
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-06-29 07:31:27 +00:00
David Schulz
9d8dc1d056 Debugger: remove put item code from cdbbridge
unneeded nowadays

Change-Id: I8e7d46f7344157459e86cbea95563194a579cd6e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-06-28 13:22:21 +00:00
David Schulz
b245912b56 Debugger: merge put array code from cdbbridge into dumper base
Basically the same. Only the type lookup of the inner type needs to be
avoided for performance reasons.

Change-Id: I2747ab44c23b764482b4a063d3618fae2e3c4d46
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-06-28 13:22:17 +00:00
David Schulz
9733957862 Dumper: merge put pointer functions from cdbbridge into dumper base
And remove the now unused DumperBase.Type.targetName helper function. We
can use the typeId nowadays for this. This reduces duplicated code and
simplifies adjustments in the base implementation without breaking the
cdbbridge.

Change-Id: If76297b83f088d98493c6f5aceea8fa93093e42e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-06-28 13:22:11 +00:00
Eike Ziller
06a01d56a5 Bump version to 14.0.0-rc1
Change-Id: I09803077f7387a2ace85a074498c9f503a7d190a
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-06-28 12:35:35 +00:00
Christian Kandeler
d79d4f2527 ProjectExplorer: Optionally deploy dependent projects
... rather than just building them.

Fixes: QTCREATORBUG-27406
Change-Id: I5ddbb9ee4a05c6843bd78cf01746c57c6cacda3c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-06-28 10:25:17 +00:00
Marcus Tillmanns
691c4adeec GoCmdBridge: Add golang based command bridge
Change-Id: I3b791febafc09f897afbf6d9da999deeca6f5115
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2024-06-28 09:44:23 +00:00
Burak Hancerli
e311a3bf61 QmlProjectManager: Fix main qml file path and duplicate signal connection
Task-number: QTCREATORBUG-30685
Change-Id: I3d3a0d1bee85b56e43b8bb2e591aa56528554e06
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-06-28 08:15:54 +00:00
Leena Miettinen
5308b11fd2 Doc: Describe new testing preferences
- Timeout can now be turned off and on
- Limit Files to Path Patterns adds filters for scanning
  for tests

Task-number: QTCREATORBUG-30604
Change-Id: Ia0ab109c2dd2958804fea6f6faa1eb9a80377fe3
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-06-28 08:07:08 +00:00
hjk
cdf8d79adb QmlJsEditor: Partially aspectify settings
Only the non-gui part for now.

Change-Id: I97e59f6cb251bfb1be4dd88cc2c2f9c2e71ce219
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-06-28 07:50:29 +00:00
Christian Stenger
37a061aabc Debugger: Add comment for revert
Amends 2364448f91.

Change-Id: I1b34c7b69c0817460d20c8ea892bdc54d7658e4a
Reviewed-by: hjk <hjk@qt.io>
2024-06-28 07:46:01 +00:00
hjk
878d4c74b7 LayoutBuilder: Add object guard in slot
Change-Id: I1912c206f5056cb19a8a7b73cfbe4dfd45978a2a
Reviewed-by: hjk <hjk@qt.io>
2024-06-28 07:35:15 +00:00
hjk
803c068c30 QmlJsEditor: Merge LS settings files into main settings file
Collecting relevant pieces in preparation of settings aspectification.

Change-Id: Ia221de3babf301f4f5d3583d346eeb9f91046aa4
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-06-28 07:12:50 +00:00
hjk
66853bacf7 Git: Fix two QMultiMap deprecation warnings
#if QT_DEPRECATED_SINCE(6, 0)
    QT_DEPRECATED_VERSION_X_6_0("Use insert() instead")
    iterator insertMulti(const Key &key, const T &value)
    {
      ....

Change-Id: I94c79e16776775b6b2032113e690e73b63a03dc9
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-06-28 07:12:26 +00:00
hjk
68adb2c086 Debugger: Enable another dumper test for LLDB
Passes nowadays.

Change-Id: I616f989c23b16a1a89d24461480dd676ce62bccd
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-06-28 07:12:16 +00:00
Eike Ziller
38e005692e Plugin meta data: Add full stop to descriptions
Where they were missing. The text is shown as a paragraph in the
extension manager.

Change-Id: I6e15c89fe4023b222e9c476f4312e13fcb0905c0
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-06-28 06:46:52 +00:00
Christian Stenger
5333082054 Debugger: Silence soft assert
Amends c83a0be72d.

Change-Id: Idb62b20af8052ee7d20f7df2c82125cd12e26738
Reviewed-by: hjk <hjk@qt.io>
2024-06-28 05:26:41 +00:00
David Schulz
2364448f91 Revert "Debugger: simplify interrupting windows processes"
Ctrl+C events are only handled properly for console applications. When
gdb debugs a GUI application the CTRL+C events are not handled. This can
be even reproduced with a plain gdb started from CMD.

This partially reverts commit 9d88da6c2b
and 670b4ec729.

Fixes: QTCREATORBUG-31131
Change-Id: I11c9d9dc08b4dbe450f38e27559b130dd317b675
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-06-28 05:14:33 +00:00
Christian Stenger
0dfe7213eb ExtensionManager: Fix qbs build
Amends 6ffe1a8061.

Change-Id: Ibb35fe606f25bd1e1b7a5d457062299f50f80af1
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-06-28 05:05:44 +00:00
Cristian Adam
4f4c90f8b0 ExtensionManager: Fix compilation error
Amends 5960bb33ef

Change-Id: Ib20b537791001317a65ee5c63d39cc2775b6ecb0
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-06-27 17:29:19 +00:00
Cristian Adam
b5d6348b67 CMakePM: Update initial CMake variables also on failed CMake runs
A failed CMake run configuration could be the result of an compiler
update which then would cause CMake to fail.

Make sure to offer an upgrade path to the new Kit compiler values.

Change-Id: Ibabeb853259e23fe012d8b00e3d48979deee61a5
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-06-27 16:01:35 +00:00
Cristian Adam
af7382fee8 CMakePM: Fix compiling projects upon MSVC Compiler/Linker update
Visual Studio is getting a fair number of updates. This involves also an
update of the Visual C++ toolchain.

This implies changing directory paths from "MSVC/14.39.33519" to "MSVC/
14.40.33807".

The linker "link.exe" is also stored in the same directory as the
compiler "cl.exe".

This commit makes sure that the linker also gets updated, not just the
compiler.

Change-Id: If8cd6e716604bc948ec8990921a14425ebcc7c30
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-06-27 16:01:28 +00:00
Cristian Adam
e2be8f9d16 CMakePM: Fix having duplicate CMAKE_CXX_COMPILERS entries
Do not apply the changes directly to the model, cache and then apply at
the right time.

Fixes: QTCREATORBUG-27005
Change-Id: Id099f21196900cd0e9787ac27887f2eec36f8045
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-06-27 16:01:19 +00:00
Cristian Adam
3572fdce03 CMakePM: Fix Qt SDK Kits when ninja is missing
Qt SDK is setting "Ninja" as default generator, make sure to get a
working generator when CMake is newly registered as a default tool.

Fixes: QTCREATORBUG-31129
Change-Id: I6b93a8904696eedadec04c882495c644db7ddce7
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-06-27 16:01:11 +00:00