Commit Graph

974 Commits

Author SHA1 Message Date
Artem Sokolovskii
c671cd7fbc Wizard: Improve GitHub Workflow for loading plugin to the server
The goal is to create a workflow that allows building the plugin on
GitHub and uploading it to the server, making the plugin available
in the QtCreator Extension Manager.

Added registerPlugin.js script:
- This script creates a plugin.json file compatible with the server API.
- The file can be sent to the server, requiring TOKEN_QT in GitHub
  secrets and API_URL set in the script.

Updated main build_cmake script:
- Added a state that generates plugin.json and includes it in artifacts
  and releases.
- Gives possibility use GitHub releases directly in QtCreator to load
  the plugin, even if the plugin data wasn't uploaded to the server.

Added ./build directory to .gitignore.

To use workflow:
- Create in github repository->settings->Secrets and variables->Actions
  ->Repository secrets new TOKEN and set the value from your Qt Account
- Add to the Repository secrets API_URL from your Qt Account
- In github reposytory->Settings->Actions->General->Workflow permissions
  ->Read and write permissions set to true
- Create relase tag in format "vx.x.x" e.g. "v0.0.1" by git tag v0.0.1
- Push chages and tag git push --tag origin main

Change-Id: I2135e0684bd3560736ecf7be1d25199713661c39
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-08-08 12:55:21 +00:00
Alessandro Portale
b24492c6e9 ExtensionSystem: Add field "DocumentationUrl" to PluginSpec
Task-number: QTCREATORBUG-31199
Change-Id: Ieb20d35cc9b4fe976207491bd201750fa4ca0032
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-29 07:27:03 +00:00
Marcus Tillmanns
9434355b3e Wizards: Add install steps
Change-Id: Ib196496f1f3e8188392182de53ae0ac00d10e9bf
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-07-18 08:41:17 +00:00
Eike Ziller
18937fd44b Merge remote-tracking branch 'origin/14.0'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	src/plugins/qmljseditor/qmljseditordocument.cpp

Change-Id: Ibef70b4c0eba5ccd5da7b05ca2bd3a9e8ee1cc0c
2024-07-17 11:43:34 +02:00
Cristian Adam
01bfa99a92 Wizards: Fix plugin CMAKE_PREFIX_PATH on macOS
Check explicitly for the presence of "lib/cmake/QtCreator" directory in
order to validate a QtCreatorBuild path.

Change-Id: Ifb3a09d459ceead8c9d49a5779127f95319bd053
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-07-17 07:01:08 +00:00
hjk
75e5b46ec0 Wizards: Rename "Qt Creator Plugin" to "Qt Creator C++ Plugin"
In line with the recent "Qt Creator Lua Plugin".

Change-Id: If05fd2365c82aa8d349ae461e063835354e0141e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-17 06:41:18 +00:00
Marcus Tillmanns
bbb6053374 Wizards: Add Qt6 cmake option to qtwidgetsapp template
Change-Id: I92764d37a11654cf7f04748fac6a8ac81a386672
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-07-12 07:36:25 +00:00
Marcus Tillmanns
3b6f0f9ede Wizards: Add Qt6 cmake option to consoleapp template
Change-Id: Ibe234e03dbb7ac2ce2a2cbccd8630006c050ce3a
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-07-12 07:36:19 +00:00
Eike Ziller
42a8b5b432 Merge remote-tracking branch 'origin/14.0'
Change-Id: Id00d72a8707d122b72d89ed0ecf03ad5ed8230d2
2024-07-11 12:10:59 +02:00
Christian Stenger
1ae0757f5d Wizards: Fix json file
Fixes building the target ts_untranslated.
Amends 391e7ae34a.

Change-Id: Id8e75e18638b5408df527c5c3bbb6aedad1638bb
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-08 11:36:10 +00:00
Eike Ziller
62d11c46a2 Wizards: Add comment on closing app for Qt console application
Add a comment on how to quit a Qt console application.

Fixes: QTCREATORBUG-31212
Change-Id: Id5dc5b6c4eba807e41fc589d16f44d133c94c6b3
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-07-08 09:32:34 +00:00
Eike Ziller
8d99cd800b Merge remote-tracking branch 'origin/14.0'
Change-Id: Ic3c53630e16712b6493873d21485b726f0d06574
2024-07-08 10:31:06 +02:00
Cristian Adam
bc7b322e8a Wizard: Update GitHub Actions workflow file
* Update CMake and Ninja versions
* Update actions/*@v4 to remove warnings about nodejs
* Update release mechanism
* Enable macOS universal builds

Change-Id: I28d995a6e4b027ed84ae99b477f8bd1fdb52720e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-04 07:08:54 +00:00
Cristian Adam
560d63bb37 Wizard: fix Qt Creator plugin wizard
Amends 250d100787

Change-Id: I82b648fefc3bda1a2dab5b83297e024791a805d4
Reviewed-by: hjk <hjk@qt.io>
2024-07-03 11:35:00 +00:00
Artem Sokolovskii
250d100787 Wizard: Update plugin creation to modern way
- Removed header file and global file as redundant
- Updated github workflow for creating artefacts

Change-Id: I60dc61b660791c57f012e6e38e04b0d84c2cbaf9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-03 09:40:06 +00:00
Christian Kandeler
d635151c0b Wizards: Bump default minimum Qt version for new QtQuick projects
Fixes: QTCREATORBUG-31168
Change-Id: I5a4411bcce348c89151fc2a193f8d19dc00343ef
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
(cherry picked from commit 0142d59258)
2024-07-01 14:32:35 +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 Stenger
391e7ae34a Wizards: Redo sub project handling
If the user tries to add a sub project the decision for the
parent project must happen directly on the intro page
to avoid asking for build system or kit information later on.
Any of these information are provided by the parent project
and can therefore be skipped in case of having a sub project.
So, move this decision to the first page and on the last page
only let the user decide to which sub node of the chosen
project the new project will be added to.
The old approach set the IsSubproject marker quite too late
to handle this appropriate, so explicitly set this already
on the first page.
For now there should be only qmake based projects which are
capable of adding sub projects at all, but this patch should
be a generalized preparation for having similar functionality
in other build systems.

Fixes: QTCREATORBUG-30281
Change-Id: I8f1de4fa05f46d68ac2ddec788840d473adb015e
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-06-19 12:04:43 +00:00
Cristian Adam
36e84b1c54 Doc/Wizards: Update minimum CMake version to 3.16
Qt Creator due to the usage of CMake File-API was already requiring
CMake 3.14.

Qt 6.7 now requires CMake version 3.16, thus the version requirement
bump.

Note that Qt SDK is shipping CMake version 3.27.

Fixes: QTCREATORBUG-31079
Change-Id: Ife26d178b80949941cb808a1fbd91389d6d723bc
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-06-19 08:12:41 +00:00
Christian Kandeler
f65c54fa3e Wizards: Remove remaining uses of classToHeaderGuard()
Amends 335c552bda.

Change-Id: I4f43e74f74cd42c4139e91b80abe89bf371411ef
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-06-10 14:08:15 +00:00
Eike Ziller
8b5f5744dc Rename Qt Designer -> Qt Widgets Designer
Fixes: QTCREATORBUG-30756
Change-Id: Icb4a2513e230b71b5bb5033ead6a09ad3a8963ab
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2024-05-23 11:37:08 +00:00
Christian Kandeler
1bd3c7d9e5 Wizards: Stop chasing The Current Thing in string construction
Guard against random deprecations by using a robust solution that works
across all Qt versions.

Fixes: QTCREATORBUG-30325
Change-Id: I00428d2454fcd6abffd3a25631946ea5d27cc4ae
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-02-16 13:45:41 +00:00
David Schulz
aefd80094a Python: add requirements file to python project wizard
This is the de facto standard way of defining project dependencies. And
those files can be used to install dependencies via pip.

Change-Id: Ibfe37624b66d757cd331aee9c51090200b3bad39
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-02-01 05:44:46 +00:00
Tim Jenssen
a3a69d83f3 Merge remote-tracking branch 'origin/qds/dev' into 13.0
Change-Id: I09a0e8514c8ad7badaa7af6d101c71d5c96b5465
2024-01-31 20:25:34 +01:00
Ali Kianian
1aee25bbc2 QmlDesigner: Create DataStore on demand
Task-number: QDS-11708
Change-Id: Ie08ab6260a1b720640c2c85f4b49b8093ec622d8
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2024-01-22 10:58:37 +00:00
Christian Kandeler
335c552bda Wizards: Always derive header guard from file name
Fixes: QTCREATORBUG-30140
Change-Id: Iad84bb49b26193f059f729009bc66832939f079c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-01-10 09:44:54 +00:00
Alessandro Portale
9b285cdcd2 Wizards: Fix paths in QtQuickApplication/QDS wizard
Amends: e2c1cfb69f

Change-Id: Ib0a0bd0238dfdc1d40c90dd73f5d622c7baf4536
Reviewed-by: hjk <hjk@qt.io>
2023-12-19 09:11:23 +00:00
Tim Jenssen
06bfa66ed7 Merge remote-tracking branch 'origin/qds/dev'
Change-Id: I6c657f5b8c0602ca76e9b17b10f1ff7a38b1b8be
2023-12-14 19:50:03 +01:00
Christian Kandeler
2c4261e307 Wizards: Modernize some qbs project files
The "import qbs" stanza has not been required for probably a decade now.

Change-Id: I92aadc9fd7a95c3fddd38b8a1d86e473ce421b48
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-12-14 12:04:20 +00:00
Christian Stenger
960768302a QtSupport: Support adding translation file
..for the major build systems. CMake build system will get further
improvements. For now this only works for adding ts files to the
target after the project had been created with QC's wizard with
some translation already added.
Qbs and qmake just work.
The C++ sources obviously will not change automatically to
integrate translation support for the application.

Task-number: QTCREATORBUG-29775
Change-Id: I80e4c21156f4bb8d5ef0bd6edf805021a55770ee
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2023-12-11 09:30:45 +00:00
Ali Kianian
37cca63593 QmlDesigner: Cleanup the templates for DataStore
- Fix the bug which disables the live preview
- The singleton of the DataStore is defined once
- Also modifies the template file formats of the DataStore files

Fixes: QDS-11430
Change-Id: I67e0f64355dccdc32c031bb4dc0fb8edf3fdf64a
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-11-29 13:42:07 +00:00
David Schulz
09e94ae4ac Python: use kits page in python wizards
Change-Id: I1f7aaf145443481546abb868c8c167186600b848
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2023-11-28 12:17:14 +00:00
Thomas Hartmann
e2c1cfb69f QmlDesigner: Add wizard data for models and backend json data
Added the new files to all wizards, since the change of the
qmldir file otherwise breaks the wizard.
Adding json files to qmlproject for cmake generation.
New files have to be added to cmakefiles.txt.

Change-Id: If00eb4507b6f1364ce3cfa00db39632635febd09
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2023-11-24 11:49:23 +00:00
Ali Kianian
50fe4051e3 QmlDesigner: Add the Collection Singleton to the QDS template
Change-Id: I8bad907766dfa0f630cee935d2b587fc613b0922
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-11-22 16:25:40 +00:00
Eike Ziller
4c1044981f Plugin wizard: Add missing license templates
Change-Id: I3b43ebdb9823a5a7430946ca789188628a910b9d
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-11-14 13:28:46 +00:00
Eike Ziller
9e00e1d6a0 Plugin wizard: Use Tr::tr
Create plugins that use the Tr::tr pattern for translations.

Change-Id: I9b6e6222951936c614c5ac45248e3d0bb58104ec
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-11-14 08:07:12 +00:00
Mitch Curtis
086fafbd49 Move Main.qml onto its own line in Qt Quick project templates
- Matches other commands in other templates (e.g. PROJECT_SOURCES).
- Makes it that little bit easier for users to add more files.
- Encourages users not to cram everything onto one line.

I didn't change qtquickapplication_compat/CMakeLists.6.x.txt
because I assume %{AdditionalQmlFiles} expands to many entries
per line anyway (and if so, that should be changed too).

Change-Id: I0cd33181e7000f070aa563e2341f739df8956e6d
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2023-11-03 08:10:07 +00:00
Eike Ziller
df80454d26 Merge remote-tracking branch 'origin/12.0'
Change-Id: I04104ef638b28d99da11b9b7a22f31f8d0ddf460
2023-10-24 13:05:55 +02:00
Christian Stenger
73d0c4a29d AutoTest: Tweak Test Case wizard
We now support Catch2 in two different versions which means
we need different include directives depending on the version.
Let the user choose the correct version instead of providing
a fixed one that may be correct or not.

Change-Id: I0199070b4f4602b8e08b7ac60731071f0cd33141
Reviewed-by: David Schulz <david.schulz@qt.io>
2023-10-20 12:52:05 +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
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
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
Artem Sokolovskii
0634f9259b Tr: Remove full stop in lable names
Fixes: QTCREATORBUG-29355
Change-Id: Ib3769c1c797c0bc500b5b60e2b06b6f8ab7a6fb2
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2023-10-16 12:33:28 +00:00
Eike Ziller
c53c9b539e Merge remote-tracking branch 'origin/12.0'
Change-Id: Ib62e4e8fc7776fa194bceced05612ae5eb113df9
2023-10-13 12:02:38 +02:00
Alessandro Portale
f734ba4461 Wizards: Make editable text options with macros/code non-translatable
Options with contain %{Macros} (sometimes with JavaScript code) should
not be translatable, since a translation can easily a prevent a wizard
from successfully working.

This change turns a couple of trText, trDisabledText and trPlaceholder
options into their non-translatable pendants.

Fixes: QTCREATORBUG-29649
Change-Id: Ia46ab7ac35f78d6368868d78e24179197744921d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2023-10-12 09:04:01 +00:00
Eike Ziller
60f7b13059 Merge remote-tracking branch 'origin/12.0'
Change-Id: Ia3e89b8e691e1ca74b03e5a8139647bedf5f88b3
2023-10-12 10:37:25 +02:00
Christian Stenger
c6c0971265 Wizard: Fix kit selection for Qt Quick Application
Fixes: QTCREATORBUG-29698
Change-Id: If0d962352096ebcbf2cdca2b85005add06d85d71
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2023-10-12 04:45:27 +00:00
Tasuku Suzuki
ef63c39266 Remove QtQuick 1 support from C++ Class wizard
QtQuick 1 is not part of Qt since Qt 5.6

Change-Id: I9fbbafe8a10a81dc6f4833301ecb124d459d5b3b
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2023-10-11 10:33:25 +00:00
Christian Kandeler
e607c5530e Wizards: Fix "pragma once" check
Obviously, boolean functions return a string that you need to compare to
"true" and "false" explicitly.
Amends 8e75381fce.

Fixes: QTCREATORBUG-29713
Change-Id: I19966555badd67f95f51ea1c1757d8b86e727010
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-10-09 15:26:08 +00:00