Commit Graph

86167 Commits

Author SHA1 Message Date
Eike Ziller
38da356153 ProjectExplorer: Do not create replacement kits automatically
Instead keep a list of "vanished targets".

These are shown in Projects mode in a separate list under the list of
kits. Via the context menus of those items (or with single-click), the
user can choose to either copy the steps of the vanished target to
another kit (already configured or not), or to create a new replacement
kit for it (similar to the previous replacement kits, with the same
device type and the steps restored, but no other parameters from the
kit restored - the project doesn't save that information), or remove
them.

The vanished targets are not removed from the project's settings as
long as the user doesn't create a kit or copy the steps, so if the kit
re-appears on a later run of Qt Creator, the original target is
restored for that kit and the entry in the "vanished targets" list
automatically vanishes.

This has the advantage that in contrast to the replacement kits, the
vanished targets are clearly separate from "normal" kits, and that they
are local to the project. Nothing is left behind after closing the
project.

Change-Id: Iccec04fea38cd55ff683665c9cf4edc9a2388c82
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-12 07:58:59 +00:00
hjk
052ea6d231 Python: Move highlighter and indenter class definitions to .cpp
Change-Id: Ib71d520977034ca66bd84c9188ffed5fe74e1ba0
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-01-12 06:53:40 +00:00
hjk
460b1641e0 GlslEditor: Decouple shader file setup from plugin setup
Change-Id: I6c384970d2725ba4025be941a203e0732d78b073
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-12 06:22:51 +00:00
hjk
78ae3aad0a GlslEditor: New setup pattern for GlslEditorFactory
Change-Id: Id10dd541699160c699c7b39d05178560f25eebc5
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-01-12 06:22:45 +00:00
hjk
1f1e31b4fc GlslEditor: Inline plugin class to .cpp
Not quite the standard setup yet, but getting closer.

Change-Id: Ifadc0b07b9d3f43381d5f49848c49bcc1d069861
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-01-11 17:28:55 +00:00
hjk
7f419fdf64 Insight: Inline plugin class definition into .cpp
Change-Id: Ic242139085bad644b98bd2355f8bf4b6796114dd
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-01-11 17:28:49 +00:00
hjk
3aee6b6985 ProjectExplorer: Move two json wizard factories closer to their products
... and clean up/modernize a bit and use new setup pattern.

Change-Id: Ie1b5f8da1fcc884a32869db2ce0f43e97e0f3aab
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-01-11 17:19:39 +00:00
Jarek Kobus
8487df5130 Process: Ensure the application is of QGuiApplication type
Checking the existence of qGuiApp isn't enough, since the
implementation just static_casts qApp to QGuiApplication.

The issue might happen in autotests if some function calls
methods of QGuiApplication. The autotests instantiate just
QCoreApplication by default.

Change-Id: Id384fb21b2a2ad66fac59bf5de35668ce50df1d1
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-01-11 17:16:24 +00:00
Pranta Dastider
fdcb29c711 QmlDesigner: Update image in the Managing Workspaces document
This patch updates the old image to include lock the views features
in the document screenshot. Also it updates the text description to match
the change.

Fixes: QDS-11562
Change-Id: I0e573be2f0e879bf4fb62a6f5120cd0b0aafa1d0
Reviewed-by: Johanna Vanhatapio <johanna.vanhatapio@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io>
2024-01-11 15:16:42 +00:00
Pranta Dastider
f631c25d8b QmlDesigner: Update image in the Previewing Android Applications document
This patch updates the old image to include lock the views features
in the document screenshot. The image was updated from Png to Webp.

Fixes: QDS-11566
Change-Id: I28fc637a3fe78a8e82b6fb3474b1edb49a31c1ee
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io>
2024-01-11 15:16:06 +00:00
Jarek Kobus
a88dac86c0 ModelingLib: Avoid using keys()
Instead, iterate directly over the container.

Notably, sorting the result of keys() didn't play any
significant role in this contexts.

Change-Id: Iba82f3d503143ff0036509d0bf08c87747aeb40c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-01-11 14:30:41 +00:00
Jarek Kobus
b406bf36f5 ModelingLib: Hide areStackingRoles() in cpp
Make it static.

Change-Id: I05786425ade0d942b0e83349dc959a5dce72813e
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 14:30:28 +00:00
hjk
792b1c5b3e AppMan: Inline plugin class definition in .cpp
Change-Id: Ib5ccfec0726497421d24e9892de822d7259bcd7a
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
2024-01-11 14:15:02 +00:00
hjk
1ab1ba02bf AppMan: Use new setup pattern for run related factories
Change-Id: I416d9a5f0b83770c7ef7673f499ed2f6b4529197
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
2024-01-11 14:08:56 +00:00
hjk
734d111747 AppMan: Use new setup pattern for AppManagerDeployConfiguration
Change-Id: I151e233da5b69f9180c0268529430b78151cab0b
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
2024-01-11 14:08:49 +00:00
hjk
9c96565756 AppMan: Use new setup pattern for AppManagerDeployConfigurationAutoSwitcher
Change-Id: Id5c487318c5dfbefacc5c2600da6511cbf6f4fec
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
2024-01-11 14:08:37 +00:00
Dominik Holland
a9b3e8a852 AppMan: Add support for qmlprofiling and qmlpreview
Change-Id: I9142489f99288c4313495f14602a8c4b42776c65
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 13:58:10 +00:00
Marcus Tillmanns
75ac93db00 LSP: Make it obvious which functions need overloads
Change-Id: Ib452770a2ec3938183428ac86bfb3955de231a13
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-01-11 13:48:36 +00:00
Leena Miettinen
78b6306578 Doc: Split up "Using Language Servers"
Update information about changed or added features.

Task-number: QTCREATORBUG-29361
Change-Id: Ia318b987602141f0021abd561ce3aac1d405904f
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-01-11 13:15:59 +00:00
Jarek Kobus
0a69aeb56b ToolChainOptionsWidget: Avoid using keys()
Instead, iterate directly over the container.

Change-Id: Ie4bb30f71616f8e9ccaf2272a3e5f5529c6c0831
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-01-11 13:14:32 +00:00
Jarek Kobus
202d6a37d2 TaskModel: Avoid using keys()
Call contains() directly on the container.

Change-Id: I787ecccf5de872f615d8cc490652a7a758561b79
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-01-11 12:58:24 +00:00
Jarek Kobus
126e88814b QmlInspectorAgent: Avoid using keys()
Call contains() directly on the container.

Change-Id: I89c7714b98d86d9c0bb6811e013138d1e51ddc9f
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 12:58:13 +00:00
Dominik Holland
23da92e60b AppMan: Improve RunControl handling
* Native Runtime apps are now supported properly
* Support using a vanilla appman-controller by NOT closing the write
  channel.

Change-Id: If2d4367595f12f0e46a8dbcda4a26d5dc03be324
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 12:57:08 +00:00
Dominik Holland
fe6dd92f99 ProjectExplorer: Allow to set the ProcessMode in SimpleTargetRunner
Change-Id: I92bdd355159da2ea9c0f913c8238696a93918ce8
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 12:56:27 +00:00
Eike Ziller
f8ac4a9744 FancyMainWindow: Save collapse state
Change-Id: I5ed336eff1eb5381c3033b2bde2db0df1576ee78
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-01-11 12:55:15 +00:00
hjk
d362129432 Core: Some initial documentation for ActionBuilder
Only a few functions for starters.

Change-Id: I66d1faaf7a94061a19586e3a806fdc596715f053
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2024-01-11 12:28:44 +00:00
Christian Kandeler
063234c179 ProjectExplorer: Fix CustomToolChain::operator==
We need to take the compiler command into account.

Fixes: QTCREATORBUG-30133
Change-Id: I5f120d4b3e41cbeeae255a2566332389d3eba508
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 12:12:25 +00:00
Dominik Holland
d0fa07ea88 AppMan: Remove automatic B2Qt Device cloning code
Change-Id: I3d2c39be9ae95f016197a388af44055c9c454e3b
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 11:51:33 +00:00
Jarek Kobus
1f41e408e0 TaskTree: Simplify recipe in ImageScaling example
Change-Id: Ieda5a7b06098cc2b90c69db79b7a002345a68f44
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 11:51:30 +00:00
Dominik Holland
627d764b33 QMake: Remove Appman specific variables and exports
Those are not used anymore.

Change-Id: I86b53b91d3ada46a4a125cde9530bb325826fbf2
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 11:51:21 +00:00
Dominik Holland
cacbe7f470 AppMan: Remove qmake support
The new plugin will only support CMake for now.

Change-Id: Ibe61642403272ecc6b6d3ce032591a841c42c8a4
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 11:51:03 +00:00
Jarek Kobus
8ab7f1bd1d DebuggerMainWindow: Avoid using keys()
Instead, iterate directly over the container.

Change-Id: I13291bac9722ca87aa2f945342e04933c37d109f
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 11:48:39 +00:00
Jarek Kobus
7c0b831391 TaskTree: Implement TrafficLight example
Import from:
https://github.com/qt/qtscxml/tree/dev/examples/scxml/trafficlight-common
and implement it in terms of TaskTree.
The recipe() corresponds to trafficlight.scxml file and implements
the business logic.

Used components: TimeoutTask and BarrierTask.

Change-Id: Ifc08b947388abed8cfc85ba082aaa0b18da0a1d7
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 11:36:06 +00:00
Mathias Hasselmann
a63368efdd Markdown: Use regular text editor's toolbar
This allows to have custom toolbar actions while preserving the regular
text editor actions.

Fixes: QTCREATORBUG-30166
Change-Id: I4a22f415d05d80355cfdbe4a2c61501af2292e85
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-01-11 11:35:19 +00:00
Jarek Kobus
e8904041c2 TaskTree: Introduce Forever group
Rename Forever -> LoopForever, Repeat -> LoopRepeat.

Change-Id: Ic999c876762d2b092f23ae88ea6de341b68a1fc2
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 11:34:43 +00:00
Mathias Hasselmann
2e353aa1b2 TextEditor: Give access to m_toolBarWidget
The TextEditor doesn't export its actual toolbar via IEditor::toolBar(),
but an internal container widget. This forces other editors that want to
reuse TextEditorWidget to poke into internal details of TextEditorWidget
if they want to provide the full toolbar including line number button.

By giving access to m_toolBarWidget, other editors like the Markdown
editor can show the full toolbar including line numbers without risking
to break, if TextEditorWidget should refactor its toolbar container.

Task-number: QTCREATORBUG-30166
Change-Id: Ic54f21be1897f00801c6a3cfe29c89131d61e3a5
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-01-11 11:34:05 +00:00
Mathias Hasselmann
5be8110137 CMake: Fix MinGW builds with BUILD_WITH_PCH=OFF
Set the minimum required Windows version not only for PCH builds, but
also for builds without precompiled headers. While there also increase
the minimum required Windows version: Qt 6 already requires Windows 10.
Therefore its safe to require the same API level for Qt Creator.

Fixes: QTCREATORBUG-30189
Change-Id: Icbbc63657e3c64be1151dda06004234d56e33990
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-01-11 11:32:55 +00:00
hjk
1936103fe6 AppMan: Use current setup pattern for build steps
Change-Id: Ia69b9ea67fdec6a33f13fba665ee4589e82a2574
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 11:22:52 +00:00
Artem Sokolovskii
f6cc15c2b7 SyntaxHighlighter: Fix crash for annotation highlighters
Change-Id: I439c0581e197f59276095b37361ccf52f97e50d2
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-01-11 11:11:42 +00:00
Jarek Kobus
9dd3ab12f5 tst_settings.cpp: Get rid of Utils namespace specifier
We are already using namespace Utils in this file.

Change-Id: I6e2f431029bbc27f425be2ad618a98733b618222
Reviewed-by: hjk <hjk@qt.io>
2024-01-11 10:53:18 +00:00
David Schulz
2e96194681 LanguageClient: also check for inherited mime types
... when trying to auto setup language servers as well when matching the
configured mime types against a document mime type.
In particular this fixes showing the auto setup editor info bar for the
newly introduced clang format mime type as well as starting the yaml
server for those files, since this clang format mime type inherits the
yaml mime type.

Change-Id: Id3ec64b0a1a128b070eadbcad600b3aaf4e667c3
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
2024-01-11 10:34:57 +00:00
hjk
6adb82eabc Core: Use new setup pattern for OpenEditorsViewFactory
Change-Id: Ice38c0c0a8fd927db61ec639a8d6d8a7ea01d421
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-01-11 10:33:05 +00:00
hjk
101a6193a5 Core: Some code cosmetics in FolderNavigationWidget
Change-Id: I75e78cbd8707bf47b12bdb1bc497514da90ac4f6
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-01-11 10:32:30 +00:00
hjk
06c9898dbf HelloWorld: Move the plugin class definition to the .cpp
The latest trend.

Change-Id: Ic70739dec71e2102735021f5cf152abae6dfea12
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 10:32:20 +00:00
hjk
28b06e89d5 Core: Use ActionBuilder in FolderNavigationWidgetFactory
Change-Id: I1f113724c2c9aba6657bddcc9ecfa9c0f151a7e8
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-01-11 10:07:19 +00:00
Leena Miettinen
fa17c9b8fa Doc: List Kit preferences under Preferences > Kits
Add "\target kits-tab" for the Kits tab docs because the links need to
be unique.

Task-number: QTCREATORBUG-29361
Change-Id: I76058c521a4e2c08f24ea2f03846bef6eac9716a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-01-11 09:11:44 +00:00
Eike Ziller
65af79af84 ExternalTool: Fix output handling for General Messages
The handling of lines was wrong and only happened to work if the output
was delivered in one batch. Otherwise it would add line breaks - and if
the tool output was delivered not in batches of lines, that could break
in the middle of output lines.

Change to code to use the Process API for handling lines of output.
That also makes the codec handling in ExternalTool unnecessary. The
corresponding members can be removed in the next binary incompatible
release.

Fixes: QTCREATORBUG-29977
Change-Id: I9d37e5e374a43f34a28418272692cca17599c8b4
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 09:05:44 +00:00
Jarek Kobus
cdb5514040 AppMan: Avoid using keys()
Instead, iterate directly over the container.

Change-Id: I56fbd18acd2faec7596141990f87e5be4f122639
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 08:37:49 +00:00
Jarek Kobus
b1da5533aa SemanticTokenSupport: Avoid using keys()
Instead, iterate directly over the container.

Change-Id: Ice5ec7c6aaf2e0f0d1090414e57bc1c03689f28f
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-11 08:34:08 +00:00
Jarek Kobus
5f5d9e4b0b LocatorSettings: Avoid using keys()
Instead, iterate directly over the container.

Change-Id: I55cbc374e5d6a068b8cd9e2febcdcc0ab5381677
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-01-11 08:33:55 +00:00